簡體   English   中英

Linux gcc編譯問題

[英]Linux gcc compile problems

我是Linux的新手,我嘗試編譯一個庫。 CMAKE可以很好地進行配置,但是使用make編譯時會出現如下錯誤:

錯誤:未在此范圍____stat64 statbuf中聲明“ ____stat64”; 錯誤:未在此范圍____stat64 statbuf中聲明“ ____stat64”; 錯誤:如果(NULL!= getcwd(chFile,_MAX_PATH))在此范圍內未聲明'getcwd'

也許我缺少頭文件有問題? 我的gcc版本是Thread模型:posix gcc版本5.4.0 20160609(Ubuntu 5.4.0-6ubuntu1〜16.04.11)

謝謝,英戈

如果在終端中鍵入man 3p getcwd ,您將發現您需要

#include <unistd.h>

調用getcwd。

現代的C ++跨平台方法是使用filesystem標頭和current_path()函數。

確認您的計算機上安裝了Linux標頭。 為了確保已安裝它們,請在基於Debian的發行版上運行:

sudo apt-get install linux-headers-generic

還要驗證您是否已包括邁克爾·蘇雷特(Michael Surette)所示的不unistd標題的標題。 為了清楚起見,您將在下面的代碼中包含提到的標題:

#include <unistd.h>

int main() {
    ...
}

暫無
暫無

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

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