Skip to content

qnx build error: 'prctl' was not declared in this scope  #4404

@CuriousFu

Description

@CuriousFu

I want to cross compile poco 1.12.5 on qnx,
here is my command:
./configure --no-tests --no-samples --typical --config=QNX --omit=Crypto,NetSSL,Data/MySQL,Data/ODBC --prefix=/home/jfu2/qnx/poco --shared --static
but then error appers,
i don't know how to solve it ,
who can help me please ?

image

make -C /home/jfu2/mylibpackags/poco-poco-1.12.5-release/Foundation
make[1]: Entering directory '/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Foundation'
** Compiling src/Thread.cpp (debug, static)
aarch64-unknown-nto-qnx7.1.0-g++  -Iinclude -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/CppUnit/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Foundation/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Encodings/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/XML/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/JSON/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Util/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Net/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Crypto/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/NetSSL_OpenSSL/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/NetSSL_Win/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Data/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Data/SQLite/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Data/ODBC/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Data/MySQL/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Data/PostgreSQL/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Zip/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/PageCompiler/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/PageCompiler/File2Page/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/JWT/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/PDF/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/CppParser/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/MongoDB/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Redis/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Prometheus/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/ActiveRecord/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/ActiveRecord/Compiler/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/PocoDoc/include -I/home/jfu2/mylibpackags/poco-poco-1.12.5-release/ProGen/include    -DPOCO_BUILD_HOST='"'she1-wv99916.vnet.valeo.com'"' -DPOCO_TARGET_OSNAME='"'Linux'"' -DPOCO_TARGET_OSARCH='"'x86_64'"'  -D_QNX_SOURCE  -g -D_DEBUG  -c src/Thread.cpp -o /home/jfu2/mylibpackags/poco-poco-1.12.5-release/Foundation/obj/Linux/x86_64/debug_static/Thread.o
In file included from src/Thread.cpp:32:
src/Thread_POSIX.cpp: In function 'void {anonymous}::setThreadName(const string&)':
src/Thread_POSIX.cpp:91:9: error: 'PR_SET_NAME' was not declared in this scope
   prctl(PR_SET_NAME, truncName(threadName).c_str());
         ^~~~~~~~~~~
src/Thread_POSIX.cpp:91:3: error: 'prctl' was not declared in this scope
   prctl(PR_SET_NAME, truncName(threadName).c_str());
   ^~~~~
/home/jfu2/mylibpackags/poco-poco-1.12.5-release/build/rules/compile:43: recipe for target '/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Foundation/obj/Linux/x86_64/debug_static/Thread.o' failed
make[1]: *** [/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Foundation/obj/Linux/x86_64/debug_static/Thread.o] Error 1
make[1]: Leaving directory '/home/jfu2/mylibpackags/poco-poco-1.12.5-release/Foundation'
Makefile:134: recipe for target 'Foundation-libexec' failed
make: *** [Foundation-libexec] Error 2

Metadata

Metadata

Assignees

Type

No type

Projects

Relationships

None yet

Development

No branches or pull requests

Issue actions