今天遇到了另一個問題,就是在include<sys/types.h> 出現相同錯誤
解決方案:將sys檔案夾copy到/usr/include檔案夾下,問題解決
---------------------------------------------分割線--------------------------------
剛接觸Linux,用Ubuntu11.10,還是習慣用IDE來編程。Eclipse CDT功能很強大,安裝完雖然可以編譯運行c++程式,但有個問題,就是找不到c++標準庫的標頭檔,無法開啟諸如<iostream>之類的檔案,編譯器警告如下:
顯示
Unresolved inclusion: <iostream>
儘管不影響編譯,卻無法定位標頭檔中的符號。原因是沒有指定Eclipse的C和C++的目錄,可以通過設定Eclipse中 C_INCLUDE_PATH 和 CPP_INCLUDE_PATH 兩個環境變數指定標頭檔目錄。
在 Window -> Preferences -> C/C++ -> Environment 中添加這兩個變數:
將C_INCLUDE_PATH 設為 /usr/include
將CPP_INCLUDE_PATH 設為 /usr/include/c++/4.6.1
其中4.6.1是gcc的版本,用gcc --version可以獲得,改成相應版本即可。
加入這兩個變數後,Eclipse就可以正常識別c++標準庫的標頭檔了。Eclipse將Includes檔案全都加入到項目中。
剛接觸Linux,用Ubuntu11.10,還是習慣用IDE來編程。Eclipse CDT功能很強大,安裝完雖然可以編譯運行c++程式,但有個問題,就是找不到c++標準庫的標頭檔,無法開啟諸如<iostream>之類的檔案,編譯器警告如下:
顯示
Unresolved inclusion: <iostream>
儘管不影響編譯,卻無法定位標頭檔中的符號。原因是沒有指定Eclipse的C和C++的目錄,可以通過設定Eclipse中 C_INCLUDE_PATH 和 CPP_INCLUDE_PATH 兩個環境變數指定標頭檔目錄。
在 Window -> Preferences -> C/C++ -> Environment 中添加這兩個變數:
將C_INCLUDE_PATH 設為 /usr/include
將CPP_INCLUDE_PATH 設為 /usr/include/c++/4.6.1
其中4.6.1是gcc的版本,用gcc --version可以獲得,改成相應版本即可。
加入這兩個變數後,Eclipse就可以正常識別c++標準庫的標頭檔了。Eclipse將Includes檔案全都加入到項目中。