Je veux une compilation croisée Alexa amazon SDK dans la plate-forme de openwrt, mais il ne peut pas trouver curl/curl.h
quand excute make
, voici mon fonctionnement étape:compilation croisée cmake ne peut pas trouver le fichier d'en-tête
créer un cMake fichier toolchain comme ceci:
SET(CMAKE_SYSTEM_NAME Linux) SET(CMAKE_SYSTEM_VERSION 1) SET(CMAKE_C_COMPILER arm-openwrt-linux-muslgnueabi-gcc) SET(CMAKE_CXX_COMPILER arm-openwrt-linux-muslgnueabi-g++) SET(CMAKE_FIND_ROOT_PATH /home/sundq/workspace/Develop/out/astar-parrot/staging_dir/target/rootfs) SET(CMAKE_SYSROOT /home/sundq/workspace/Develop/out/astar-parrot/staging_dir/target/rootfs) SET(CMAKE_LIBRARY_PATH /home/sundq/workspace/Develop/out/astar-parrot/staging_dir/target/rootfs/usr/lib) SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) SET(CMAKE_C_FLAGS "-I/home/sundq/workspace/Develop/out/astar-parrot/staging_dir/target/rootfs/usr/include") SET(CMAKE_CXX_FLAGS "-I/home/sundq/workspace/Develop/out/astar-parrot/staging_dir/target/rootfs/usr/include")
excute
cmake
comme ceci:cmake ../avs-device-sdk-master-v1.0.2/ -DCMAKE_BUILD_TYPE=MINSIZEREL -DCMAKE_TOOLCHAIN_FILE=../toolchain.cmake
excute
make
, la sortie est:/AVSCommon/AVS/src/AlexaClientSDKInit.cpp:18:23: fatal error: curl/curl.h: No such file or directory
Je suis sûr que la boucle/fichier dans le répertoire curl.h. existe /home/sundq/workspace/Develop/out/astar-parrot/staging_dir/target/rootfs/usr/include
.
Copie possible de [Compilation croisée CMake: les drapeaux C du fichier de chaîne d'outils sont ignorés] (https://stackoverflow.com/questions/11423313/cmake-cross-compiling-c-flags-from-toolchain-file-ignored) – Tsyvarev
En bref: vous devez définir les variables ** en cache ** * CMAKE_C_FLAGS * et * CMAKE_CXX_FLAGS *. – Tsyvarev