Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/126.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 编译时出错?_C++_Linux_Ubuntu - Fatal编程技术网

C++ 编译时出错?

C++ 编译时出错?,c++,linux,ubuntu,C++,Linux,Ubuntu,我在编译代码时遇到这些错误。我在user/include下有所有标题 g++ -Ip_appmanager/inc -Icore/inc p_appmanager/src/appmanager_process.cpp -o p_appmanager/obj/appmanager -lpthread -lparser p_appmanager/src/appmanager_process.cpp: In function ‘int main(int, char**)’: p_appmanager/

我在编译代码时遇到这些错误。我在user/include下有所有标题

g++ -Ip_appmanager/inc -Icore/inc p_appmanager/src/appmanager_process.cpp -o p_appmanager/obj/appmanager -lpthread -lparser
p_appmanager/src/appmanager_process.cpp: In function ‘int main(int, char**)’:
p_appmanager/src/appmanager_process.cpp:33:21: error: ‘getpid’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:101:19: error: ‘fork’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:105:70: error: ‘execl’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:109:19: error: ‘getppid’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:124:19: error: ‘fork’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:128:61: error: ‘execl’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:132:19: error: ‘getppid’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:147:19: error: ‘fork’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:151:73: error: ‘execl’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:155:19: error: ‘getppid’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:170:19: error: ‘fork’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:175:70: error: ‘execl’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:179:19: error: ‘getppid’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp: In function ‘void* pingThread(void*)’:
p_appmanager/src/appmanager_process.cpp:302:11: error: ‘sleep’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp: In function ‘void* fifoThread(void*)’:
p_appmanager/src/appmanager_process.cpp:815:22: error: ‘fork’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:818:72: error: ‘execl’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:842:64: error: ‘execl’ was not declared in this scope
p_appmanager/src/appmanager_process.cpp:865:72: error: ‘execl’ was not declared in this scope
make: *** [all] Error 1
我的内核版本是“Linux amit bhaira 3.8.0-26-generic#38 Ubuntu SMP Mon Jun 17 21:46:08 UTC 2013 i686 i686 i686 GNU/Linux”。相同的代码正在另一台linux机器上运行

请帮我解决这个问题

谢谢

您忘记了在程序中包含

fork(2)
手册页:

SYNOPSIS
       #include <unistd.h>
SYNOPSIS
       #include <unistd.h>
SYNOPSIS
       #include <sys/types.h>
       #include <unistd.h>
SYNOPSIS
       #include <unistd.h>
getpid(2)
手册页:

SYNOPSIS
       #include <unistd.h>
SYNOPSIS
       #include <unistd.h>
SYNOPSIS
       #include <sys/types.h>
       #include <unistd.h>
SYNOPSIS
       #include <unistd.h>
添加
#包括


它可以在其他平台上工作,因为它们是使用旧版本的gcc编译的(您的代码是否包含?您真的相信我们可以神奇地解决您的编译器错误而不必查看代码吗?@H2CO3:对于那些特定的错误,是的。如果您安装了正确的手册页,您可以通过eg
man getpid
或您使用的其他函数获得大多数信息。手册将告诉您要包含的标题和可选链接ng info.@IgnacioVazquez Abrams的态度是错误的。不,我没有提到,同一个代码正在另一台linux机器上运行。它可能被其他头文件吸进了—这种情况确实发生了。因为您的代码是故意使用
fork
execl
,所以您应该自己包含它,而不是依赖于我不被间接包括在内。