交叉编译json-c
- 下载json-c
git https://github.com/json-c/json-c.git
- 修改CMakeLists.txt文件
// 修改json-c目录下的CMakeLists.txt文件link_directories(/usr/local/arm_linux_4.8/lib)
target_link_libraries(${
PROJECT_NAME} -lm)
cmake_minimum_required(VERSION 2.8)
SET(CMAKE_SYSTEM_NAME Linux)
SET(CMAKE_C_COMPILER "arm-linux-gcc")
SET(CMAKE_CXX_COMPILER "arm-linux-g++")
这里需要注意的是连接外部库的话要把连接命令写在最前面
- 创建build目录,并在build目录下执行cmake命令
cmake .. -DCMAKE_INSTALL_PREFIX=/home/guomq/work/power_gateway/bsp/json-c/__install
-DCMAKE_INSTALL_PREFIX : 指定安装目录
- 生成Makefile后执行make开始编译,下面是编译后生成的库文件
- 执行make install安装
cmake链接外部动态库和静态库举例
// 链接动态库
target_link_libraries(${PROJECT_NAME} -lm)
cmake_minimum_required(VERSION 2.8)
// 链接静态库
add_library(libmy STATIC IMPORTED)
set_property(TARGET my PROPERTY IMPORTED_LOCATION /path/to/libmy.a)
target_link_libraries(project_name my) #添加libmy.a