Project Home
Project Home
Trackers
Trackers
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - gRPC compilation failed: (7 Items)
   
gRPC compilation failed  
I am trying to cross compile gRPC for QNX7 platform using cmake.
While compiling I am getting error
qnx_tools/x86_64/usr/bin/i586-pc-nto-qnx7.0.0-ld: cannot find -lpthread
qnx7/aarch64le/usr/lib/libc++.so: file not recognized: File format not recognized

Please guide me how I can solve this issue.

I am using command :
cmake -DCMAKE_TOOLCHAIN_FILE=/tmp/qnxqrm/toolchain.cmake ../..

toolchain.cmake 
SET(CMAKE_SYSTEM_NAME QNX)
SET(CMAKE_SYSTEM_PROCESSOR arm)
set(CMAKE_CROSSCOMPILING 1)
set(CMAKE_SYSROOT "$ENV{TOOLCHAIN_PATH}")
set(CMAKE_C_COMPILER "$ENV{TOOLCHAIN_PATH}/usr/bin/aarch64-unknown-nto-qnx7.0.0-gcc-5.4.0")
set(CMAKE_CXX_COMPILER "$ENV{TOOLCHAIN_PATH}/usr/bin/aarch64-unknown-nto-qnx7.0.0-g++-5.4.0")
set(CMAKE_CXX_FLAGS "-Vgcc_ntoaarch64 -O2 -Wc,-Wall -DBUILDENV_qss -g -Os -Wall -march=armv8-a -mcpu=cortex-a57 -mtune=
cortex-a57 \
        -fstack-protector-strong -DNDEBUG -DFMT_HEADER_ONLY -EL -DVARIANT_le -std=c++11 -stdlib=libstdc++ -lang-c++ \
        -I . \
        -I$ENV{TOOLCHAIN_PATH}/usr/include \
        -I$ENV{TOOLCHAIN_PATH}/usr/include/WF \
        -I$ENV{TOOLCHAIN_PATH}/usr/include/KHR \
        -I$ENV{INSTALL_ROOT_nto}/usr/include \
        -Wl,-L$ENV{INSTALL_ROOT_nto}/aarch64le/lib \
        -Wl,-L$ENV{INSTALL_ROOT_nto}/aarch64le/usr/lib \
        -Wl,-L$ENV{TOOLCHAIN_PATH}/aarch64le/lib \
        -Wl,-L$ENV{TOOLCHAIN_PATH}/aarch64le/usr/lib")

Also let me know if I have missed any flags in CXX.
Re: gRPC compilation failed  
delete -lpthread lib
In QNX, posix threads are implemented in libc.
Re: gRPC compilation failed  
Tried deleting pthread in CMakeLists.txt, but still facing this issue
Re: gRPC compilation failed  
in usr/lib, I can see libc++.so and libc++.a. Maybe there is a mismatch, e.g. linker interprets the .so as static lib?

libc++ is also a symlink, maybe following links is behaving crazy.

-Al
Re: gRPC compilation failed  
Also I am getting this issue 
qnx_tools/qnx7/aarch64le/usr/lib/libc++.so: file not recognized: File format not recognized

Re: gRPC compilation failed  
... and fix the search path for libraries.
You cant link a x86_64 bit project against a aarch64 lib. Different architecture!
Re: gRPC compilation failed  
sorry, delete my last comment.
It is aarch64 right?