Je reçois ces erreurs lorsque je comstack mon code. J’ai tous les en-têtes sous 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
la version de mon kernel est “Linux amit-bhaira 3.8.0-26-generic # 38-Ubuntu SMP Mon Jun 17 21:46:08 UTC 2013 i686 i686 i686 GNU / Linux”. Le même code s’exécute sur une autre machine Linux.
S’il vous plaît, aidez-moi à résoudre ce problème.
Merci.
Ajouter #include
Il fonctionne sur d’autres plates-formes car elles sont compilées avec une ancienne version de gcc (<4.7) qui incluait accidentellement unistd.h dans certains en-têtes système.
De la page de manuel fork(2)
:
SYNOPSIS #include
De la page de manuel exec(3)
:
SYNOPSIS #include
De la page de manuel de getpid(2)
:
SYNOPSIS #include #include
Depuis la page de manuel sleep(3)
:
SYNOPSIS #include
Vous avez oublié #include
dans votre programme.