我有一套或多或少可移植的C上交叉編譯/ C++源坐在一個Linux開發主機上,我希望能夠:Linux主機的各種目標
- 編譯32 - 和64位Linux目標
- 交叉編譯爲32位和64位Windows的目標爲32位和64位
- 交叉編譯的Mac目標
- 和,理想情況下,不會對其他任何運行時依賴仿真DLL就像
cygwin1.dll
,MinGW等,雖然我可以使用它們,如果沒有其他選擇。如果我必須使用它們,我寧願將它們的功能靜態鏈接到我的代碼。
所期望的目標二進制是:
共享庫(的.so)用於Linux和Mac目標,
爲Windows DLL。
我不知道如何從頭構建一個交叉編譯器(和相關的工具鏈)。我聽說預構建的交叉編譯器工具鏈可用於各種主機和目標組合,但我不知道在哪裏可以找到它們,甚至不知道如何使用它們而不會運行到運行時崩潰/ coredumps,因爲指針模型微妙(LP64,LLP64等),指定錯誤或不足的編譯器開關,其他錯誤配置等
我到目前爲止一直無法找到上述的相關和完整的信息,我找到的東西已經遍佈各處,我甚至都不知道我讀到的所有東西是完整的還是正確的(完全適用,對我的情況不會更少)。
我不是一個編譯器專家,只是他們的普通用戶。希望獲得實現上述編譯目標的信息。