我很喜歡嵌入式系統。我正在使用一個套件,TS-7390,它使用了ARM9。 我設法爲它編譯一個應用程序。我的問題是我如何使用共享庫進行編譯。我需要在主機上有圖書館嗎?使用共享庫進行交叉編譯
1
A
回答
3
這取決於共享庫的使用方式。如果應用程序與庫一起編譯,就好像共享庫始終鏈接一樣,是的,您需要在主機上使用它。如果通過dlopen
動態加載共享庫,則主機上不需要它。在這兩種情況下,你也需要目標庫。
1
在交叉編譯應用程序之前,您還需要交叉編譯共享庫。
2
簡而言之:是的。
讓我解釋一下爲什麼。當您設置交叉編譯環境時,您需要使頭文件和庫都可用,因爲在鏈接編譯器時會檢查所有符號是否已解析。
正如您所想象的,只要您的程序不使用libc,交叉編譯器是不夠的。在這種情況下,您還需要一個擁有所有必需文件(標題,庫等)的地方。由於處理所有依賴關係可能非常耗時,因此通常最好使用某種工具或發行版爲您執行此操作。
例如,我使用OpenEmbedded,這需要一點時間才能學會,但在需要處理庫時可以幫助您很多。
相關問題
- 1. 使用共享庫的Android設備運行交叉編譯的C程序
- 2. 如何在MAC OSX上與共享庫交叉編譯zlib?
- 3. 如何交叉編譯libFLAC作爲共享庫?
- 4. 我的交叉編譯器找不到共享庫
- 5. 與mingw一起使用gcc庫進行交叉編譯?
- 6. Qt - 不能使用外部庫進行交叉編譯
- 7. 編譯共享庫
- 8. 使用g ++動態共享庫編譯
- 9. C++庫交叉編譯
- 10. 交叉編譯和庫
- 11. Linux交叉編譯庫
- 12. 與庫交叉編譯
- 13. 如何用cmake修改編譯器進行交叉編譯
- 14. 交叉編譯使用GCC
- 15. 錯誤使用wxWidgets庫進行arm交叉編譯在linux中使用codelite
- 16. 編譯python到共享庫
- 17. 爲python編譯共享庫
- 18. 解決編譯共享庫
- 19. 當編譯共享庫
- 20. 二進制翻譯|交叉編譯
- 21. 與另一個庫進行交叉編譯
- 22. 交叉編譯後,在目標上找不到共享庫,Ubuntu Beaglebone
- 23. 使用32b和64b進行交叉編譯
- 24. 如何使用gcc進行交叉編譯?
- 25. 使用MXE在Linux上進行交叉編譯 - GSL鏈接?
- 26. 使用x86_64-w64-mingw32-g ++進行OMP交叉編譯
- 27. 使用OpenSSL for Windows進行交叉編譯
- 28. 無法使用叮進行交叉編譯爲SPARC
- 29. 在Gumstix Overo上使用GumROS進行交叉編譯Boost
- 30. 使用automake進行交叉編譯時什麼是重要的?