CMake project compilation error on VisualStudio using external SDK toolchain file

前端 未结 1 1850
渐次进展
渐次进展 2021-01-24 04:32

I am using VisualStudio CMake project on Windows machine.

I am using an external SDK in order to

相关标签:
1条回答
  • 2021-01-24 05:08

    When you use a toolchain file, you shouldn't set the compiler yourself. You should let it to the toolchain file, as it know how to cross compile. Things like CMAKE_SYSTEM_NAME and CMAKE_SYSTEM_PROCESSOR should be left to the toolchain file.

    set(Boost_USE_STATIC_LIBS ON) 
    set(Boost_USE_MULTITHREADED OFF)  
    set(Boost_USE_STATIC_RUNTIME OFF)
    set(Boost_NO_BOOST_CMAKE ON)
    
    # I think the prefix should point to usr directly, not the include directory
    list(APPEND CMAKE_PREFIX_PATH /opt/poky-atmel/2.5.3/sysroots/cortexa5hf-neon-poky-linux-gnueabi/usr)
    
    message(STATUS "CMAKE_TOOLCHAIN_FILE='${CMAKE_TOOLCHAIN_FILE}'")
    message(STATUS "CMAKE_C_COMPILER='${CMAKE_C_COMPILER}'")
    message(STATUS "CMAKE_CXX_COMPILER='${CMAKE_CXX_COMPILER}'")
    
    project(whatever CXX)
    
    # Better to fail fast when there's a package missing
    find_package(Boost 1.66.0 REQUIRED) 
    
    add_executable (CMakeProject4 CMakeProject4.cpp CMakeProject4.h) 
    target_link_libraries(CMakeProject4 PRIVATE Boost::headers)
    

    And your CMake arguments should look like this:

    cmake -DCMAKE_TOOLCHAIN_FILE=/opt/poky-atmel/2.5.3/sysroots/x86_64-pokysdk-linux/usr/share/cmake/OEToolchainConfig.cmake
    
    0 讨论(0)
提交回复
热议问题