Linux Cmake静态库链接
来源:互联网 发布:it职业培训 编辑:程序博客网 时间:2024/05/18 01:56
静态库和动态库使用的区别:
其中.a文件是静态链接库文件,静态库名称一般为xxx.a,在编译时和应用程序链接在一起,这样的应用程序占用空间较大,但是可以在任意台电脑上使用,而不必担心电脑上是否有库的存在。
.so是动态库链接文件 动态库名称一般为xxx.so,对于动态库即可以在编译时链接,也可以使用dlopen()/dlsym()/dlclose()函数在运行时调用,后种方式占用空间较小,且可以实现动态库在进程间共享,只在内存中保留一份,减少了内存开销。
Linux系统使用主要在与Cmake文件的使用:
# CMakeLists.txt# CMake 最低版本号要求cmake_minimum_required(VERSION 2.8)# 项目信息project(future_net)# include路径include_directories(${PROJECT_SOURCE_DIR}/lib)# 把 第三方 库 的 .a 文件和 .h 文件放到 代码的 lib 文件夹link_directories(${PROJECT_SOURCE_DIR}/lib)# 设置可执行文件生成路径set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/../bin)# 生成debug版本SET(CMAKE_BUILD_TYPE "Release") SET(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall -g -ggdb")SET(CMAKE_CXX_FLAGS_RELEASE "$ENV{CXXFLAGS} -O3 -Wall")# 查找当前目录下的所有源文件# 并将名称保存到 DIR_LIB_SRCS 变量aux_source_directory(. DIR_SRCS)# 指定生成目标 add_executable(future_net ${DIR_SRCS})#下面的 libxxx 是 第三方库 的名字:target_link_libraries(future_net libxxx)# 其他系统库,如果链接失败也一起链接:TARGET_LINK_LIBRARIES(future_net dl)TARGET_LINK_LIBRARIES(future_net pthread)
阅读全文
0 0
- Linux Cmake静态库链接
- Linux系统动态链接库和静态链接库CMake的使用方法
- cmake:动态链接库(so)中静态链接tcmalloc(gperftools2.4)暨静态链接libstdc++
- linux-静态链接库
- opencv+ linux + cmake 生成 opencv静态库
- 使用cmake生成基于静态库的动态链接库
- 利用CMake生成动态或静态链接库工程
- cmake Poco 静态库链接出错问题小结
- 利用CMake生成动态或静态链接库工程
- CMake 添加头文件目录,链接动态、静态库
- cmake 添加头文件目录,链接动态、静态库
- cmake 添加头文件目录,链接动态、静态库
- cmake 添加头文件目录,链接动态、静态库
- Linux静态/动态链接库
- Linux下静态链接库
- Linux 动态/静态链接库
- linux 静态链接库demo
- Linux制作静态链接库
- 将map映射成实体对象的两种方式 将list映射成对象
- Imagge配置缓存本地文件夹
- 网络安全相关网站
- 模块API之lookup_module_symbol_name
- Zabbix Ubuntu 环境下配置
- Linux Cmake静态库链接
- ImageLoader的基础使用
- 修改Hyperion Planning应用所有者
- jsonp回调
- glog install error
- 一些零散笔记
- kernel中数组元素赋初值
- 如何写软件概要设计?
- SpringMVC默认访问首页配置及web.xml配置