2014-12-13 94 views
0

我試過GCJ,它編譯得很好。我嘗試了Ubuntu和Windows。編譯的文件在我的Ubuntu機器上運行,以及帶有wine的.exe文件。但是,如果我想我的Ubuntu的服務器上運行,我得到這個錯誤:GCJ:Java本地代碼,不會在其他機器上運行

error while loading shared libraries: libgcj.so.14: cannot open shared object file: No such file or directory 

但我覺得我不需要安裝任何東西來運行「本機」代碼。我也無法在Windows機器上運行.exe。

你能告訴我爲什麼會發生這種情況嗎?也許我在編譯錯誤。我使用這個:gcj --main=Hello -o hello.exe Hello.jar for windows。

回答

3

當您運行可執行文件時,無論使用Visual Studio .NET還是Java或C++,都需要使用共享庫。

當您爲特定平臺編譯程序時,通常只能在該平臺或類似平臺上運行。如果你想在Windows上運行這個程序,你需要爲Windows編譯它。

順便說一句GCJ很舊而且過時了。我建議你使用Java 7或8.這將避免需要安裝額外的庫,並且可以在Windows或Linux上運行而不需要重新編譯。

+0

你的意思是「編譯它的Windows」編譯**在**窗口?因爲我用我提到的這行代碼來編譯它,所以沒有? 但我的目標是避免用戶需要安裝JRE。 – Joey 2014-12-13 14:32:46

+0

@ st1n您需要爲可以安裝的每種類型的系統構建軟件。您還需要安裝所需的共享庫。 – 2014-12-13 14:41:47

+0

您的意思是針對windows 7,8等的「每種類型的系統」,還是真的針對friend1,friend2,friend3的機器? 順便說一句,感謝您的幫助:) – Joey 2014-12-13 14:43:38

相關問題