2011-08-14 96 views
2

我將lua文件編譯爲帶有srlua的獨立程序(即exe)後,我得到大量錯誤。lua編譯需要錯誤

任何後面找不到的「require()」中的任何內容都會導致程序無法運行。

有沒有辦法解決這個問題,所以程序會正常運行?

謝謝。

回答

1

當您執行require時,默認方法將根據lua.exe的位置掃描目錄。 srLua似乎不處理依賴關係。也許你應該使用Lua Built-In Program。這個項目似乎被放棄了,但它在2010年確實有了一個發佈版本,所以這個版本大多是最近的。

+0

雖然這不起作用。而且它也不是編譯器。 它給出了相同的錯誤。沒有一種方法可以正確設定路徑,而不是其他任何方法。爲了得到它的工作。 – luacoder

1

最近我使用Squish收集了一堆Lua模塊和幾個相關的腳本,以便它們可以與他們的主機應用程序一起打包在一個exe中。

我不得不做一些調整來在Windows中構建和使用它,但它們都是以Unix爲中心的現有源代碼包的明顯擴展或翻譯。 Squish本身是用純粹的Lua編寫的,構建它的過程就是使用壓縮來生成一個單獨的自包含腳本文件,以便與普通的Lua解釋器一起使用。

除了處理相關模塊,它還可以編譯和/或壓縮代碼,以實現更小的輸出。

如果您正在使用股票Lua解釋器,那麼使用Squish獲取單個文件並將srlua與解釋器打包可能是一個很好的組合。

相關問題