t113-c-curl使用

发布时间 2023-08-16 22:37:45作者: 悠闲的小莫

先复制文件到要用到的项目中

注意:复制.so文件在linux中不可以直接复制粘贴,必须要在linux命令行输入cp到指定的路径才可以,不然只会复制到软链接

改一下cmake

cmake_minimum_required(VERSION 3.12.4)

SET(CMAKE_C_COMPILER /home/momo/Tina-Linux/prebuilt/gcc/linux-x86/arm/toolchain-sunxi-musl/toolchain/bin/arm-openwrt-linux-muslgnueabi-gcc)
SET(CMAKE_CXX_COMPILER /home/momo/Tina-Linux/prebuilt/gcc/linux-x86/arm/toolchain-sunxi-musl/toolchain/bin/arm-openwrt-linux-muslgnueabi-g++)

project(lcd_lvgl VERSION 1.0)

set(CMAKE_INSTALL_PREFIX /home/momo/Tina-Linux/exsample/youchat/build)
#set(LINK_LIBRARIES "${LINK_LIBRARIES} -lcurl" )

#file(GLOB curlso /home/momo/Tina-Linux/exsample/lcd_lvgl/curl/ *.so)

#包含lvgl的子库

include_directories(/home/momo/Tina-Linux/exsample/youchat/curl)

#创建exe的可执行程序
add_executable(youchat you.c)

#链接所需要的库
set(LINK_DIR /home/momo/Tina-Linux/exsample/youchat/curl)
add_library(curll SHARED IMPORTED)
set_target_properties(
        curll
        PROPERTIES IMPORTED_LOCATION
        ${LINK_DIR}/libcurl.so
)

#link_directories(${LINK_DIR})
target_link_libraries(youchat curll)

这样的写法是这篇文章写的,导入第三方库的教程

https://blog.csdn.net/lftaoyuan/article/details/107057699

cmake_minimum_required(VERSION 3.12.4)

SET(CMAKE_C_COMPILER /home/momo/Tina-Linux/prebuilt/gcc/linux-x86/arm/toolchain-sunxi-musl/toolchain/bin/arm-openwrt-linux-muslgnueabi-gcc)
SET(CMAKE_CXX_COMPILER /home/momo/Tina-Linux/prebuilt/gcc/linux-x86/arm/toolchain-sunxi-musl/toolchain/bin/arm-openwrt-linux-muslgnueabi-g++)

project(lcd_lvgl VERSION 1.0)

set(CMAKE_INSTALL_PREFIX /home/momo/Tina-Linux/exsample/youchat/build)
#set(LINK_LIBRARIES "${LINK_LIBRARIES} -lcurl" )

#file(GLOB curlso /home/momo/Tina-Linux/exsample/lcd_lvgl/curl/ *.so)

#包含lvgl的子库

include_directories(/home/momo/Tina-Linux/exsample/youchat/curl)

#创建exe的可执行程序
add_executable(youchat you.c)

#链接所需要的库
set(LINK_DIR /home/momo/Tina-Linux/exsample/youchat/curl)
#add_library(curll SHARED IMPORTED)
#set_target_properties(
 #       curll
 #       PROPERTIES IMPORTED_LOCATION
 #       ${LINK_DIR}/libcurl.so
#)

link_directories(${LINK_DIR})
target_link_libraries(youchat libcurl.so)

而这种写法则是在这篇文章学的,但是并没有编译成功,不知道为什么,我觉得应该是cmake没有对库进行解码缓存什么的,那link_directories又是干啥的,这个是在自己做的库中用的但是既然都有缓存了为什么还要这个函数

https://www.jianshu.com/p/354c64b0e26b

那么就可以直接使用了