簡體   English   中英

cygwin無法編譯C ++ Boost庫

[英]Can't get cygwin to compile C++ Boost libraries

我試圖使用Boost啟動並運行,所以我試圖從Boost的“入門”頁面編譯一個簡單的示例問題。 我遇到了兩個問題,但不確定它們是否相關(我比新手要好,但相差不大),但也許它們相關...

第一個問題:“ tar --bzip2 -xf /path/to/boost_1_49_0.tar.bz2”命令不起作用(是的,我輸入了正確的路徑,但是它給了我一些錯誤,我忘記了它們是什么)所以我在boost_1_49_0.tar.bz2所在的目錄中使用了“ tar -xjvf”。 解壓縮了zip文件,然后繼續進行示例...

第二個問題:example.cpp文件將無法編譯,代碼中的第一條語句是#include“ boost / lambda / lambda.hpp”,但隨后每個lambda.hpp頭文件都在嘗試訪問,其中沒有一個“目錄”編譯錯誤。 例如,這是lambda.hpp中的兩個頭文件(六個)中的兩個(我都對這六個錯誤),以及cygwin編譯器顯示的錯誤:

boost / lambda / lambda.hpp:14:33:boost / lambda / core.hpp:無此類文件或目錄boost / lambda / lambda.hpp:21:52:boost / lambda / detail / operator_actions.hpp:無此類文件或目錄

如果有幫助,這是我要編譯的命令(我通常在單獨的-o命令中創建可執行文件):g ++ -c example.cpp

系統為什么找不到這些? 我在開始之前將安裝的目錄(path / to / boost_1_49_0)添加到PATH變量中,所以我知道不是那樣。 感謝您的任何建議...

(我研究過stackoverflow,並且有類似的問題,但是沒有有效的解決方案)

看來您已經解決了第一個問題:也就是說,必須在tar上指定-j標志才能解壓縮bzip2文件。

對於第二個問題,您需要通過-I命令行選項或通過CPLUS_INCLUDE_PATH環境變量來指定包含路徑上的增強

暫無
暫無

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

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