库文件中找不到符号问题:CMAKE_CXX_FLAGS: -fvisibility=hidden

2023-11-05

问题描述: 编译出来的预测库发现找不到符号,但是相关源文件的确编译到库里了。

定位问题: cmake配置中打开了以下开关:

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")

`-fvisibility=hidden`开关的作用,将编译 出的库文件中的全局变量符号默认隐藏,防止其他程序调用库文件时出现重定义。也可以降低库文件体积。

导致的问题,我们新注册的接口已经编译到库文件中,但是却查询不到,undefination

解决方法:在对应cc文件中的接口定义处加上`可视化标记`: `__attribute__((visibility("default")))`

// 原始代码,库文件中查询不到
ImagePreprocess::ImagePreprocess(ImageFormat srcFormat,	ImagePreprocess::ImagePreprocess(ImageFormat srcFormat,
                                 ImageFormat dstFormat,	                                 ImageFormat dstFormat,
                                 TransParam param) {	                                 TransParam param) {
  this->srcFormat_ = srcFormat;	  this->srcFormat_ = srcFormat;
  this->dstFormat_ =
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

库文件中找不到符号问题:CMAKE_CXX_FLAGS: -fvisibility=hidden 的相关文章

  • 参考文献对齐方法

    参考文献对齐方法 首先把符号和文本之间的空格都删掉 复制粘贴到记事本中 把每一条参考文献的 符号和文本之间以及文本最后加上Tab键 复制粘贴回word中 全选后右键 段落 两端对齐 悬挂缩进2字符 完成
  • ffmpeg常用音频处理

    使用ffmpeg分析修改音频 ffmpeg layouts查看音频的布局情况 1 双声道合并单声道 ffmpeg i music mp3 ac 1 music aac 2 双声道的提取 map channel input file id s
  • 大数据业务模型和技术架构简图

    大数据业务模型和技术架构简图 1 背景 大数据技术随着互联网的发展而兴起于21世纪初 最早遇到海量数据技术问题的是搜索引擎公司 如谷歌 数据量级别的暴增是由于2010年之后的互联网兴起 网络用户数量暴涨带来的海量用户数据暴增 对大数据处理的
  • firefox火狐能打开http网址,针对所有https网址无法打开

    1 常规的做法 遇到https无法打开时 最常用的做法就是各种百度 然后找到的解决方案就是像下面链接处理的这种 https blog csdn net u011650143 article details 70303894 utm sour
  • linux 网络编程易错点

    1 网络字节序 l 网络字节序存在的意义是实现不同主机字节序的兼容 2 accept l 生成一个新的套接字 这个是所有socket通讯模型的基础 3 sendto l 该函数一定要指定dest len的大小 否则接收端接收不到数据 4 广
  • CMAKE 中add_definitions的用法

    If you are in China please add this CMake flag DTHIRD PARTY MIRROR aliyun to speed up the downloading procedure for some
  • Linux压缩解压命令

    1 tar 解包 tar xvf FileName tar 打包 tar cvf FileName tar DirName 注 tar是打包 不是压缩 2 gz 解压1 gunzip FileName gz 解压2 gzip d FileN
  • mysql 批量 update 多个条件_MySQL更新表数据(八)

    更新数据是使用数据库时最重要的任务之一 在本教程中 您将学习如何使用MySQL UPDATE语句来更新表中的数据 1 MySQL UPDATE语句简介 我们使用UPDATE语句来更新表中的现有数据 也可以使用UPDATE语句来更改表中单个行
  • 15 行代码在 wangEditor v5 使用数学公式

    前言 wangEditor v5 正式版发布在即 为了验证它的扩展性 我开发了几个常用的第三方插件 本文介绍一下 formula 插件的设计和使用 插入数学公式要使用 LateX 语法 渲染公式需要依赖工具 KateX 如 c pm sqr
  • ctf-攻防世界-web:disabled_button

    wp 一 提示是前端知识 有一个不能按的按钮 我们F12开发者工具来看看这个按钮 咦 有一个disabled 只要把这个disabled 删掉 按钮就可以按下了 点一下按钮 flag出现 完美 二 或者审计代码 hackbar用post方式
  • Android 获取USB设备的类型

    Version info Linux 3 10 Android 4 2 一 问题 现在有USB设备插入Android系统 那么如何得知插入的设备类型 是USB打印机 U盘 还是USB鼠标 二 USB类型规定 对于USB类型 USB组织是有规
  • 数据监控与报警:将Scrapyd与监控工具集成,实现爬虫异常时的自动警报通知

    目录 1 数据监控与报警的重要性 2 集成监控工具 3 监控爬虫运行状态 4 监控网站结构变化
  • 什么是NoSQL,为什么要使用NoSQL?

    详见 什么是NoSQL 为什么要使用NoSQL 曲健磊的个人博客的博客 CSDN博客 nosql https baike so com doc 5569749 5784951 html 1 为什么用 NoSQL 1 1 单机 MySQL 的
  • HCIP第七天

    OSPF的不规则区域 OSPF区域划分的要求 1 区域之间必须存在ABR 2 区域划分必须按照星型拓扑结构来进行划分 常见的不规则区域 1 远离骨干的非骨干区域 2 不连续骨干区域 远离骨干的非骨干区域 1 使用VPN隧道 直接在非法的AB
  • 2023Testing Expo

    8月9日 11日 2023汽车测试及质量监控博览会将于上海世博展览馆1号馆举行 本次展会将展示测试和验证技术在整车 零部件和系统开发领域中的新发展 新产品和新解决方案 怿星科技将携最新的ETH测试 智驾测试 PPS测试等方案亮相测试展 届时
  • 如何学习好数学

    数学大咖单墫总结数学解题的12条原则 1 要享受到解题的乐趣 对解题有浓厚的兴趣 能有几分痴迷更好 2 要有充足的信心 3 要有百折不回的决心与坚韧不拔的毅力 4 要做100道有质量的题目 5 反复探索 大胆地跟着感觉走 6 从简单的做起
  • 临界区操作的原子性

    所谓的原子性就是操作在未执行完之前不会被打断 在多线程变成的时候 很多时候都会在线程函数中或者被线程调用的函数中使用临界区来实现函数操作的原子性 临界区保证当前进入临界区的线程能够完整执行完临界区中保护的代码不被打断 但是当时我一直对临界区
  • python:json格式化输出

    参考 https stackoverflow com questions 12943819 how to prettyprint a json file import json your json foo bar baz null 1 0

随机推荐

  • kibana启动失败no known master node, scheduling a retry或者master_not_discovered_exception

    今天在用到elasticsearch和kibana时遇到错误 主要就是这种报错master not discovered exception 找不到master节点 有两种解决方法 一种是安装elasticsearch使用 msi安装包的形
  • Android Studio更新Gradle版本

    Android Studio更新Gradle版本 1 在File分栏下 点击Project Structure 2 按照图示步骤操作 选中Project 点击Android Gradle Plugin Version复选框下三角符号 选择需
  • 2022.0306避障小车学习1

    要求 使用stm32f103单片机 应用RTOS实时系统 使用超声波模块 oled屏 l298n直流步进电机 驱动模块和小车底盘 思路 在任务里用超声波实时测出距障碍物的距离 并将距离显示在oled屏上 再根据判断距离大小调用前进或者后退那
  • web应用开发实战 - node.js

    了解Node js Node js 是一个基于 Chrome JavaScript 运行时建立的一个平台 Node js 是一个基于 Chrome V8 引擎的 JavaScript 运行时 Node js是运行在服务端上的 JavaScr
  • 单页面引入vue和element

    引入vue 1 可以直接在页面中引入 2 https cdn jsdelivr net npm vue 2 dist vue js 打开该链接下载vue 存放在本地 引入element 方法同上
  • 交换机的简单描述

    工作原理 1 交换机有张表 MAC地址表 一开始未通讯之前 MAC地址表是空的 2 同一个局域网中主机A访问主机B 3 主机A会将自己的MAC地址和对面的MAC地址封装进数据帧 自己的是源MAC地址 对面是目 的MAC地址 4 交换机会收到
  • [极客大挑战 2019]HardSQL 1

    极客大挑战 2019 HardSQL 1 首先打开题目 明显的发现这是一个sql注入的题 我们先用 和 测试是否有注入报错 发现用 时报错 所以这题很明显是有sql注入的 于是我们就利用用语句 admin or 1 1 测试得到 发现这里是
  • c++ 笔记1

    c 笔记 1 inline内联函数 2 构造函数初始化 3 构造函数重载注意事项 4 常量成员函数 5 参数传递和返回值使用const引用 6 友元 7 运算符重载this指针 8 规范化代码一 complex h complex test
  • jdbc连接mysql的语法_JDBC 连接MySQL实例详解

    JDBC连接MySQL JDBC连接MySQL 加载及注册JDBC驱动程序 Class forName com mysql jdbc Driver Class forName com mysql jdbc Driver newInstanc
  • 2021年中职组“网络安全”赛项 杭州市竞赛任务书

    2021年中职组 网络安全 赛项 杭州市竞赛任务书 一 竞赛时间 总计 360分钟 二 竞赛阶段 三 竞赛任务书内容 拓扑图 一 A模块基础设施设置 安全加固 200分 一 项目和任务描述 假定你是某企业的网络安全工程师 对于企业的服务器系
  • HashSet添加元素的过程

    文章目录 HashSet添加元素的过程 HashSet添加元素的过程 底层结构 数组 链表
  • MySQL数据库是非关系_关系型数据库和非关系型数据库的理解

    综合百度百科和自己的理解整理以下内容 便于日常用到时进行查找 如下 一 关系型数据库 1 含义 关系型数据库 是指采用了关系模型来组织数据的数据库 其以行和列的形式存储数据 以便于用户理解 关系型数据库这一系列的行和列被称为表 一组表组成了
  • pcb上模拟地和数字地怎么隔离

    p 谢谢了 学习中 p oh mygod Post at 2006 2 20 10 45 00 p 注意把数字地隔离 p p 直接打到主地或者单点接地 p br
  • SSL/TLS一键配置工具-IISCrypto

    IIS Crypto 是一个免费工具 使管理员能够在 Windows Server 2008 2012 2016 2019 和 2022 上启用或禁用协议 密码 哈希和密钥交换算法 允许您重新排序 IIS 提供的 SSL TLS 密码套件
  • C++ 知识点/面试题目总结 (八股文)

    C 知识点 面试题目总结 八股文 1 C和C 的区别 2 构造函数后面的冒号有什么用 3 函数后面 default和 delete有什么用 4 类的大小和什么有关系 5 struct和typedef struct什么区别 6 函数后面加co
  • 【数据结构与算法学习】图的深度优先遍历(DFS算法)

    目录 一 什么是图的遍历 二 深度优先遍历 DFS 的基本思想 三 深度优先遍历 DFS 的步骤详解 四 深度优先遍历 DFS 的代码实现 一 什么是图的遍历 图的遍历 指的是从图中的任一顶点出发 对图中的所有顶点访问一次且只访问一次 图的
  • 洛谷P1088火星人(C++)

    导语 这篇题解 如果你是不知道什么是全排列 的童鞋 自己去小墙角面壁思过5秒钟 不是 是让你按照以下顺序食用题解 题目 gt 全排列函数 纯手码写法 gt 思路 gt 全排列函数 next permutation gt AC代码 gt 总结
  • FPGA-仿真读写bmp图片

    文章目录 位图说明 位图 Verilog代码实现 python处理代码 附 最近想完成FPGA图像处理 由于没有开发板 就像通过仿真完成 之前像的是通过python 将图像转化为txt文本 最后利用verilog 读取txt文件导入 对像素
  • 华为深信服信息安全从业者考试认证大全(cwasp/cisp/nisp sisp-pte......

    证书是IT从业者知识水平能力的一个体现 考证同时也是拓展自身知识的一个方法 近年来 安全行业风生水起 各种认证层出不穷 眼花缭乱 这里不对任何一个证书做评价 只是做出介绍 在国内 对任何事物的评价都会引起围攻 所以笔者不敢妄谈一个证书的含金
  • 库文件中找不到符号问题:CMAKE_CXX_FLAGS: -fvisibility=hidden

    问题描述 编译出来的预测库发现找不到符号 但是相关源文件的确编译到库里了 定位问题 cmake配置中打开了以下开关 set CMAKE CXX FLAGS CMAKE CXX FLAGS fvisibility hidden fvisibi