g++來進行編譯的標頭檔案路徑問題
阿新 • • 發佈:2019-01-13
Linux中用 g++ 來對 .cpp檔案進行編譯的時候,當頭檔案不在系統預設的 /usr/local/include/ 中時,需要為其指定路徑。有如下幾種方法。
方法1、在進行編譯時用 -l 選項來指定路徑:
# /path/to/eigen/ 為eigen標頭檔案的路徑所在。
g++ -I /path/to/eigen/ my_program.cpp -o my_program
方法2、通過環境變數來設定,這樣就可以不需要在g++ 中來指定了
export CPLUS_INCLUDE_PATH=/path/to/eigen/ g++ my_program.cpp -o my_program
方法3、將eigen標頭檔案建立軟連線到 /usr/local/include/ 目錄下:
sudo cp /path/eigen/*.h /usr/local/include/*.h
或者
sudo ln -s /path/eigen/*.h /usr/local/include/*.h
然後在編譯即可:
g++ my_program.cpp -o my_program
方法4、利用cmake來進行編譯:
# 在 CMakeLists.txt 檔案中新增標頭檔案搜尋路徑:
include_directories(/path/to/eigen/)