cmake添加动态链接库

2023-05-16

如果使用gcc进行单个c文件编译的时候,有时候后面会需要添加如-L -l之类的参数,如下

gcc -o test test.c -L/usr/local/lib/ -lopencv

这里-L是制定动态库的位置,-l则是指定打算连接的动态库名字。

那么在进行项目编译的时候就需要通过cmake来通过Cmakelist.txt引导make进行项目编译。

那么就需要在cmakelists.txt文件内添加动态链接库的配置,具体参数如下

1、首先申明动态库的位置


LINK_DIRECTORIES({your_library_path})  

例:

LINK_DIRECTORIES(/usr/local/lib)

2、然后制定具体的动态库的名称


target_link_libraries(${PROJECT_NAME} -l{library_name})  

例:指定hiredis的动态链接文件 libhiredis.dylib

target_link_libraries(${PROJECT_NAME} -lhiredis)

 

最终的cmakelists.txt:


   

cmake_minimum_required(VERSION 3.2)
  

PROJECT(edgepoint)
  

INCLUDE_DIRECTORIES(  

include  

hiredis-master  

)
  

AUX_SOURCE_DIRECTORY(src DIR_SRCS)  

add_subdirectory(hiredis-master)
  

SET(EDGEPOINT  

${DIR_SRCS}  

)
  

LINK_DIRECTORIES(/usr/local/lib/)
  

ADD_EXECUTABLE(${PROJECT_NAME} ${EDGEPOINT})  

target_link_libraries(${PROJECT_NAME} -lhiredis)
  

TARGET_LINK_LIBRARIES(${PROJECT_NAME} m)  

   

   

   
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

cmake添加动态链接库 的相关文章

随机推荐

  • 洛谷P1424-小鱼的航程(改进版)

    洛谷P1424 小鱼的航程 xff08 改进版 xff09 这个题我第一次做的时候 xff0c 有两个没过 xff0c 后来检查的时候发现原来是没有考虑开始的时间是不是周六周日 xff0c 如果是周六要在原来的天数上 2 xff0c 如果是
  • freertos-简介(一)

    FreeRTOS 裸机 不带任何操作系统 只能先打完游戏回复信息 实时性差 xff0c 程序轮流执行delay空等待 xff0c CPU不执行其他代码结构臃肿 xff0c 实现功能都在while循环 RTOS 实时操作系统 会执行打游戏一个
  • PCB设计过程中AD使用流程详解(超详细)

    PCB设计过程中AD使用流程详解 xff08 超详细 xff09 1 设计前期部分 规则设定 xff1a Preference system file type关联文件 xff08 所有关联 xff09 PCB editor General
  • python面向对象编程

    符合python风格的对象 先来看一个向量类的例子 span class token keyword class span span class token class name Vector2d span span class token
  • DIY 一个树莓派无人机

    学习目标 xff1a DIY 一个树莓派无人机 这篇文章来源于DevicePlus com英语网站的翻译稿 提示 xff1a 这里可以添加学习目标 学习内容 xff1a 提示 xff1a 这里可以添加要学的内容 今天 xff0c 我们将利用
  • Linux开源杀毒软件CLamAV介绍

    Linux开源杀毒软件CLamAV介绍 很多用户可能不知道在Linux上会有计算机病毒 xff0c 虽然Linux上的病毒不像在Windows上那么常见 xff0c 但实际上 xff0c 很多重要系统均采用Linux系统作为服务器的操作系统
  • vrpn_cient_ros发送频率无法调整提供解决思路

    最近写了节点来订阅ros client ros 但是发现在launch文件修改update frequency不起作用 xff0c 然而我又需要通过串口给下位机发送数据 xff0c 频率一快 xff0c 串口直接堵死了 怎么调都freque
  • 封装CopyFileEx函数,实现文件复制中的暂停,控速,获取进度

    封装CopyFileEx函数 xff0c 实现文件复制中的暂停 xff0c 控速 xff0c 获取进度等 前段时间无意间想到如何控制文件复制过程的复制速度 xff0c 并且能实时获得复制进度 对于一个几兆甚至更小的文件 xff0c 调用AP
  • 字符串结束符'\0' -何时自动加- 字符串定义方法

    转载 字符串定义方法 有两种方法 1 用字符数组 xff1b 2 用字符指针 xff1b 对应两种定义方法 xff0c 有不同的初始化以及赋值方法 对字符数组 xff0c 有以下几种定义方法 xff1a 1 char str 61 34 1
  • 基于Airsim的sitl模拟环境配置(ubuntu 16.04)

    基于Airsim的sitl模拟环境配置 xff08 ubuntu 16 04 xff09 sitl仿真 xff0c 软件在环仿真可以不使用任何硬件就可以进行模拟飞行或驾驶 xff0c 实验室获取数据非常有用 基于Airsim的sitl模拟需
  • F450机架组装及飞控安装细节

    http tieba baidu com p 5342947735
  • 富斯i6接收机及PPM编码器​​​​​​​接线

    没有完成发射机和接收机对码 xff0c 则需要按照如下过程对码 xff1a 1 将对码线连接到接收机上的 B VCC 接口 2 将电源线连接到接收机上任意其他接口 3 打开发射机电源 xff0c 同时常按发射机 BINDKEY 键 xff0
  • Pixhawk指示灯和安全开关含义

    Pixhawk指示灯的含义 红灯和蓝灯闪 xff1a 初始化中 请稍等 黄灯双闪 xff1a 错误 系统拒绝解锁 蓝灯闪 xff1a 已加锁 xff0c GPS搜星中 自动导航 xff0c 悬停 xff0c 还有返回出发点模式需要GPS锁定
  • MP地面站提示

    PIX飞控或者APM飞控在装机后 xff0c 经常遇到不能解锁的情况 xff0c 地面站会有提示 xff0c 下面列出了可能出现的情况 xff0c 可以一一对应的排除故障 当然 xff0c 你也可以在地面站设置解锁不自检 xff0c 不过安
  • win7下 pixhawk (ardupilot) 的编译

    前几天都在搞pixhawk源码编译问题 xff0c 什么在window下用Console或者eclipse xff0c 还是在Ubuntu下 xff0c 都做了 xff0c 而且把 mk文件都看了 xff0c 结果还是有bug 总结一下三种
  • pixhawk 基于UART5 的NSH环境搭建

    元器件 xff1a pixhawk 六针杜邦线 USB转uart模块 PC机上的串口调试软件 xff08 比如 Putty xff09 STEP 1 xff1a 制作调试通信线 xff08 六针杜邦线和USB转uart模块 xff09 xf
  • 操作系统 | 用户态和内核态的切换(中断、系统调用与过程(库函数)调用)

    文章目录 中断过程调用系统调用过程调用和系统调用的区别 中断 用户态 内核态之间的切换是怎么实现的 用户态 内核态 是通过中断实现的 并且 中断是唯一途径 核心态 用户态 的切换是通过执行一个特权指令 xff0c 将程序状态字 PSW 的标
  • MFC鼠标响应、鼠标画线

    鼠标响应关键就是对两个函数进行操作 xff1a OnLButtonDown和OnLButtonUp xff1b 1 使用MFC AppWizard exe xff09 建立一个单文档MFC工程 2 首先要在CxxxView类的定义里加上后续
  • stm32cubeide的freertos-消息队列发送结构体或者长消息,接收不完整的问题

    今天在项目创建消息队列 xff0c 消息队列中的数据类型的是结构体 xff0c 调用接口使用的cubeide自带的创建消息队列的接口 span class token keyword typedef span span class toke
  • cmake添加动态链接库

    如果使用gcc进行单个c文件编译的时候 xff0c 有时候后面会需要添加如 L l之类的参数 xff0c 如下 gcc o test test c L usr local lib lopencv 这里 L是制定动态库的位置 xff0c l则