树莓派 cmake 编译HP-Socket

刚到手树莓派不久  对linux也是一知半解所以在编译HPSOCKET组件的时候走了很多弯路 

CMakeList文件 保存下 

Linux目录建立 Build文件夹 

在 Build文件夹

1.    cmake ..

2.    sudo make -j4

 

 

linux目录下 CMakeList.txt

PROJECT(HPSocket4C)
CMAKE_MINIMUM_REQUIRED(VERSION 2.6) 

#告知当前使用的是交叉编译方式,必须配置
SET(CMAKE_SYSTEM_NAME Linux)
#ARM CPU
SET(CMAKE_SYSTEM_PROCESSOR arm)
#编译动态库
SET(BUILD_SHARED_LIBS ON)
#
ADD_SUBDIRECTORY(src)

#或交叉编译器使用绝对地址
SET(CMAKE_C_COMPILER "gcc")
 
#指定C++交叉编译器
SET(CMAKE_CXX_COMPILER "g++")

#设置编译选项
set(CMAKE_C_FLAGS "-mthumb -mcpu=cortex-m0 -fPIC -Wall -fsigned-char -fno-builtin  -ffunction-sections -O0 -g")
#设置链接选项
set(CMAKE_EXE_LINKER_FLAGS "-shared -fPIC -Wl,-T -Xlinker ${PROJECT_SOURCE_DIR}/src/gnu.ld -u Default_Handler -nostartfiles -Wl,-Map -Xlinker -Wl,--gc-sections")        

src目录下 CMakeList.txt

INCLUDE_DIRECTORIES(
${PROJECT_SOURCE_DIR}/src
${PROJECT_SOURCE_DIR}/src/common
${PROJECT_SOURCE_DIR}/src/common/crypto
${PROJECT_SOURCE_DIR}/src/common/http
)
#ADD_SUBDIRECTORY(common)
#INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/common)

AUX_SOURCE_DIRECTORY(${PROJECT_SOURCE_DIR}/src/common DIR_COMMON)
AUX_SOURCE_DIRECTORY(${PROJECT_SOURCE_DIR}/src/common/crypto DIR_CRYPTO)
AUX_SOURCE_DIRECTORY(${PROJECT_SOURCE_DIR}/src/common/http DIR_HTTP)

AUX_SOURCE_DIRECTORY(. DIR_SRC)
ADD_LIBRARY(HPSocket4C SHARED ${DIR_SRC} ${DIR_COMMON} ${DIR_CRYPTO} ${DIR_HTTP})

#TARGET_LINK_LIBRARIES(HPSocket4C -Wl,--start-group common -Wl,--end-group)

 

 

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值