簡體   English   中英

如何為Eclipse中的交叉編譯項目有條件地包括兩個版本相同的名稱不同的庫?

[英]How can I conditionally include two differently named libraries of the same version for a cross-compile project in Eclipse?

我有一個要在Ubuntu和Windows上編譯的Eclipse項目。

我正在使用boost庫(特別是asio),它需要包括libboost_system ... *庫。 我在Windows和Ubuntu上都編譯了boost,最后在Windows上得到libboost_system_mgw48-mt-1_55.a libboost_system.so ,在Ubuntu上得到libboost_system.solibboost_system.so.1.55.0libboost_system.a

我不確定我需要包括哪個Ubuntu庫,但更大的問題是如何同時包括Windows和Ubuntu庫,而僅包括正確的OS。

我在Windows上使用MinGW工具鏈,據我所知,它或多或少是GCC? 然后,我假設我應該只在Ubuntu上使用GCC來具有相同的編譯過程。

Windows boost構建命令:

bootstrap.bat mingw
b2 toolset=gcc

Ubuntu Boost構建命令:

bootstrap.sh
b2

Eclipse是否可以在我可以通過全局可識別的變量訪問的每個安裝基礎上使用該操作系統?

那么,假設是的話,我如何才能使用該信息有條件地僅包含正確的庫?

我想出的解決方案是在項目屬性中使用兩種配置:Debug-Win32和Debug-Uni​​x。 這樣既可以跟蹤獨立的庫和路徑配置,也可以跟蹤不同的工具鏈,同時仍可以從相同的代碼庫中進行提取。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM