set(CMAKE_SYSTEM_NAME Linux) set(CMAKE_SYSTEM_PROCESS arm) # sysroot路径 set(CMAKE_SYSROOT /home/user1/soft/sysroot) # 编译器 set(ARM_BIN /home/user1/soft/gcc-arm-linux-gnueabihf-4.9/bin) set(TOOLCHAIN_PREFIX arm-linux-gnueabihf) set(CMAKE_C_COMPILER ${ARM_BIN}/${TOOLCHAIN_PREFIX}-gcc) set(CMAKE_CXX_COMPILER ${ARM_BIN}/${TOOLCHAIN_PREFIX}-g++) # 链接器参数 set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --sysroot=${CMAKE_SYSROOT} -Wl,-rpath-link,${CMAKE_SYSROOT}/usr/lib/arm-linux-gnueabihf") # Qt 路径 set(QT_DIR /usr/local/Trolltech/qt4.8.6) # ============================================== # Boost 强制全局配置(100% 必生效) # ============================================== set(BOOST_ROOT /usr/local/boost32) set(BOOST_INCLUDEDIR ${BOOST_ROOT}/include) set(BOOST_LIBRARYDIR ${BOOST_ROOT}/lib) set(Boost_INCLUDE_DIR ${BOOST_ROOT}/include CACHE PATH "" FORCE) set(Boost_LIBRARY_DIR ${BOOST_ROOT}/lib CACHE PATH "" FORCE) set(Boost_NO_SYSTEM_PATHS ON CACHE BOOL "" FORCE) set(Boost_NO_BOOST_CMAKE ON CACHE BOOL "" FORCE) # 强制把 Boost 头文件路径加入全局编译参数 include_directories(BEFORE SYSTEM ${BOOST_ROOT}/include) link_directories(${BOOST_ROOT}/lib) # 全局搜索路径(Boost 放在最前面) set(CMAKE_FIND_ROOT_PATH /usr/local ${CMAKE_SYSROOT} ${QT_DIR} /home/user1/projects/out ) # 交叉编译搜索规则 set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)