问题现象

undefined reference to xxx

一般copy了别人的代码,直接拿来编译,可能会遇到这种问题。网上找了很多答案都没有对应的解答。

头文件已经引用了,而且对应的库文件或者源码文件都在工程里,但是就是提示找不到。
IDE可以提示跳转,说明是可以找到函数实现的,但是跳转直接跳到了.c文件里。

这才让我恍然明白,这个文件是c写的,而我的工程是c++的。

问题解决

因为c和c++对函数名的编码是不一样的,c直接就是“明文”,而c++会有一定的格式。所以对于c文件的header,c++程序找不到对应的实现。
需要加上如下处理

#ifdef __cplusplus
extern "C" {
#endifxxxx
xxxx#ifdef __cplusplus
}
#endif

[c++]引入了头文件和动态库,为什么找不到函数实现相关推荐

  1. 【catkin】——如何导入一个catkin包的头文件和动态库

    catkin 1. find_package(catkin) find_package(catkin REQUIRED COMPONENTS gflags_catkin glog_catkin ope ...

  2. 【C 语言】动态库封装与设计 ( 动态库调用环境搭建 | 创建应用 | 拷贝动态库相关文件到源码路径 | 导入头文件 | 配置动态库引用 | 调用动态库中的函数 )

    文章目录 一.在 Visual Studio 2019 中创建 " 控制台应用 " 程序 二.拷贝 xxx.lib.xxx.dll.xxx.h 到源码路径 三.导入 xxx.h 头 ...

  3. [CMake] 头文件路径 动态库路径

    文章目录 include_directories link_directories !find_library link_libraries(deprecated) target_link_libra ...

  4. 【C语言】标准库(头文件、静态库、动态库),windows与Linux平台下的常用C语言标准库

    一.Introduction 1.1 C语言标准库 1.2 历代C语言标准 1.3 主流C语言编译器 二.C语言标准库 2.1 常用标准头文件 2.2 常用标准静态库 三.windows平台 四.Li ...

  5. .h头文件 .lib库文件 .dll动态库文件之间的关系

     .h头文件是编译时必须的,lib是链接时需要的,dll是运行时需要的. 附加依赖项的是.lib不是.dll,若生成了DLL,则肯定也生成 LIB文件.如果要完成源代码的编译和链接,有头文件和li ...

  6. c++中algorithm头文件、STL库简介及使用说明

    c++中algorithm头文件.STL库简介及使用说明 c++中algorithm头文件是STL的算法部分,里边定义了各种算法,比如sort之类的.加上algorithm就可以使用stl库里的各种算 ...

  7. CMake教程(二)- 添加静态库文件和动态库文件

    CMake教程(二)- 添加静态库文件和动态库文件 什么是库文件 静态链接库 动态链接库 静态库和动态库的区别 如何在CMake中添加库文件 CMake 中 target_link_libraries ...

  8. 【Android RTMP】音频数据采集编码 ( FAAC 头文件与静态库拷贝到 AS | CMakeList.txt 配置 FAAC | AudioRecord 音频采样 PCM 格式 )

    文章目录 安卓直播推流专栏博客总结 一. FAAC 头文件与静态库拷贝到 Android Studio 二. CMakeList.txt 构建脚本配置 三. Java 层 AudioRecord 音频 ...

  9. Golang使用pkg-config自动获取头文件和链接库的方法

    为了能够重用已有的C语言库,我们在使用Golang开发项目或系统的时候难免会遇到Go和C语言混合编程,这时很多人都会选择使用cgo. 话说cgo这个东西可算得上是让人又爱又恨,好处在于它可以让你快速重 ...

最新文章

  1. 如何用纯 CSS 创作一个方块旋转动画
  2. fork+exit+php,php实现简单的守护进程创建、开启与关闭操作
  3. java string类api_JAVA中String类的常用方法API
  4. C++ STL vector(向量)
  5. 星座图(2020特长生 T4)
  6. freetype字体位图转距离场_那些火遍ins的字体小技巧,不看你就亏了
  7. 阿牛的EOF牛肉串(递推dp)
  8. cc2530设计性实验代码四
  9. ACM新手入门之杭电150题使用指南及C语言学习推荐
  10. nodejs爬虫实战_实战nodejs写网络爬虫
  11. word公式常用字体
  12. VLAN tag格式
  13. spark.jars.packages使用镜像源加速
  14. 如何把蓝奏云里的文件进行批量导出分享?蓝奏云批量分享的工具
  15. loopj----Android Asynchronous Http Client(AHC)
  16. matlab创新开放性实验,《线性代数》实验课程大纲.doc
  17. SRS之SFU多人视频
  18. VFIO Introduction
  19. 本地文件上传到github上
  20. 沙特认证_所有的沙特机器人去哪儿了

热门文章

  1. 图神经网络(GNN)的简介
  2. mysql元数据死锁日志_这个未修复的MySQL 5.7死锁Bug,你知道么?
  3. 单价数量和总价的公式_小学六年超全的数学公式!家长们赶紧给孩子看过来……...
  4. Cell | 小基因开启微生物组研究新领域——大规模鉴定微生物基因组编码的小蛋白质...
  5. 疯狂的消化之旅|消化系统简介
  6. 微生物组学研究的可再现性、可重现性、稳定性与普适性
  7. R语言普通最小二乘(OLS)回归说明、以及构建普通最小二乘(OLS)回归需要满足的四个假设(Normality(正态性)、Independence(独立性)、Linearity(线性度)、方差齐性)
  8. seaborn使用Catplot函数可视化水平小提琴图(Make Horizontal Violin Plot with Catplot in Seaborn)
  9. R语言使用magick包的image_animate函数和image_morph函数创建一个由n个图像组成的序列,逐渐将一个图像转换成另一个图像(sequence of image morph by)
  10. R语言进行主成分分析(PCA)、使用prcomp函数进行主成分分析:碎石图可视化(scree plot)、R通过条形图(bar plot)来可视化主成分分析的碎石图(scree plot)