我想開發將在Windows上運行並與Windows OS API交互的haskell代碼,但是我想在Linux機器上執行它。我該如何做到這一點?我可以在Windows機器上編譯並且可以工作,但不能在Linux機器上編譯。 Haskell可以使用LLVM後端,不是嗎?我可以使用LLVM來完成此操作嗎?或者以某種方式與MinGW合作?如何交叉編譯具有windows(PE)目標的linux計算機上的haskell程序?
12
A
回答
7
我嘗試了很多種可能性,包括葡萄酒上的GHC(儘管很多廣告宣稱它可以「開箱即用」),但它並不適用於我。
對於交叉編譯,一個問題在於讓GHC找到你的C庫和DLL(對於windows)。模板Haskell也會給你帶來麻煩(因爲它需要加載linux庫,然後編譯爲windows)。
我從來沒有設法正確地解決這些問題。最後,我選擇在Windows VM上安裝GHC,現在我使用腳本將東西推送到回購站,通過SSH連接到Windows機器,拉,清理,重新編譯和測試,所有執行一個Linux CLI,並給我反饋關於Windows上發生的事情。
編輯:我沒有提供這個答案,試圖阻止任何人嘗試更聰明的東西。我也對真正的交叉編譯感興趣,如果有人有一個很好的解決方案,我就會全神貫注。我的替代方法總是有效,但確實很痛苦,不得不爲此啓動虛擬機。此外,它意味着每個架構的每個操作系統使用一個虛擬機,這非常重要。
相關問題
- 1. qt5.4在Linux上的windows交叉編譯
- 2. 如何交叉編譯linux下的windows wxwidgets應用程序
- 3. Qt Windows + Linux交叉編譯
- 4. 如何在Windows主機上編譯針對Linux x64的交叉編譯器?
- 5. 交叉編譯Linux主機
- 6. 在Windows上針對Linux目標交叉編譯MATLAB Simulink模型
- 7. 在Windows上交叉編譯Linux
- 8. 在Windows和Linux上交叉編譯
- 9. 交叉編譯:如何在編譯計算機上使用目標上的相同libstdC++
- 10. 如何在Windows計算機上編譯用於Linux的.NET Core應用程序
- 11. 爲linux arm目標交叉編譯greenlet
- 12. 如何在Linux上使用Windows交叉編譯器的glut?
- 13. 如何在Windows上從PS3上爲Cell Linux交叉編譯?
- 14. 從Linux到Windows交叉編譯C++應用程序的手冊?
- 15. 在Windows上交叉編譯?
- 16. 如何交叉編譯Linux的PPC
- 17. 在Eclipse中用於PPC 405的Windows上交叉編譯目標
- 18. 從arch linux交叉編譯pdcurses到windows
- 19. 升壓 - 交叉編譯 - 「從Linux」「到Windows」
- 20. 交叉編譯Windows 64位.exe從Linux
- 21. 從Windows到Linux交叉編譯dotnet核心應用程序
- 22. 在Ubuntu Linux中從Eclipse交叉編譯Windows應用程序?
- 23. 交叉編譯適用於Mac的Linux上的簡單標準C程序
- 24. 如何在linux中交叉編譯
- 25. 交叉編譯源到Linux
- 26. Linux交叉編譯庫
- 27. 交叉編譯C++應用程序的目標只是C
- 28. 從64位Linux交叉編譯特定arm目標的Qt
- 29. 交叉編譯C++;從Linux到Windows,它真的有用嗎?
- 30. 使用Sourcery工具鏈在Windows上交叉編譯用於ARM的Linux內核
你看過明威嗎? – CMCDragonkai
當然。沒有幫助。 –
已經很長時間了,但我仍然對解決這個問題感興趣。 從葡萄酒到ReacOS,想到了幾個選項。重新評估它們可能是值得的。 如果有人可以提出一個好的解決方案,將不勝感激。雖然我自己可能沒有時間來制定解決方案,但如果安裝程序很簡單/自動化,我應該有時間嘗試。我在生產中使用它,所以它會是一個小而體面的測試用例。 –