/usr/bin/ld: CMakeFiles/follow.dir/main/follow.cpp.o: in function `main': follow.cpp:(.text.startup+0x80): undefined reference to `FaceLightClient::FaceLightClient()' /usr/bin/ld: follow.cpp:(.text.startup+0x4c0): undefined reference to `FaceLightClient::~FaceLightClient()' /usr/bin/ld: follow.cpp:(.text.startup+0x5fc): undefined reference to `FaceLightClient::~FaceLightClient()' collect2: error: ld returned 1 exit status

时间: 2024-01-30 07:04:15 浏览: 27
这个错误提示表明在链接时找不到名为 `FaceLightClient` 的类的定义。通常,这种错误是由于缺少对应的库或者链接顺序不正确所致。 首先,请确保您的代码中包含了 `FaceLightClient` 类的头文件,并且相关的库已经正确地添加到项目中。 如果您确定这些步骤已经完成,请检查一下链接顺序。在链接时,确保将依赖项放在使用它们的代码之后,这样链接器才能正确地解析符号引用。 另外,请确保您使用的编译器和链接器版本与代码所需的库版本相匹配。 如果问题仍然存在,请提供更多关于您的项目配置、编译命令和其他相关信息,以便我可以提供更具体的帮助。
相关问题

FAILED: MyTestHttp : && /usr/bin/c++ -g CMakeFiles/MyTestHttp.dir/main.cpp.o -o MyTestHttp && : /usr/bin/ld: CMakeFiles/MyTestHttp.dir/main.cpp.o: in function `Http::Http()': /home/hy-20/project/MyTestHttp/main.cpp:20: undefined reference to `curl_global_init' /usr/bin/ld: /home/hy-20/project/MyTestHttp/main.cpp:21: undefined reference to `curl_easy_init' /usr/bin/ld: CMakeFiles/MyTestHttp.dir/main.cpp.o: in function `Http::~Http()': /home/hy-20/project/MyTestHttp/main.cpp:25: undefined reference to `curl_easy_cleanup' /usr/bin/ld: /home/hy-20/project/MyTestHttp/main.cpp:26: undefined reference to `curl_global_cleanup' /usr/bin/ld: CMakeFiles/MyTestHttp.dir/main.cpp.o: in function `Http::setUrl(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)': /home/hy-20/project/MyTestHttp/main.cpp:29: undefined reference to `curl_easy_setopt' /usr/bin/ld: CMakeFiles/MyTestHttp.dir/main.cpp.o: in function `Http::setPostFields(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)': /home/hy-20/project/MyTestHttp/main.cpp:31: undefined reference to `curl_easy_setopt' /usr/bin/ld: CMakeFiles/MyTestHttp.dir/main.cpp.o: in function `Http::setMethod(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)': /home/hy-20/project/MyTestHttp/main.cpp:35: undefined reference to `curl_easy_setopt' /usr/bin/ld: /home/hy-20/project/MyTestHttp/main.cpp:36: undefined reference to `curl_easy_setopt' /usr/bin/ld: CMakeFiles/MyTestHttp.dir/main.cpp.o: in function `Http::setHeaders(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)': /home/hy-20/project/MyTestHttp/main.cpp:41: undefined reference to `curl_slist_append' /usr/bin/ld: /home/hy-20/project/MyTestHttp/main.cpp:42: undefined reference to `curl_easy_setopt' /usr/bin/ld: CMakeFiles/MyTestHttp.dir/main.cpp.o: in function `Http::setWriteFunction(std::function<void (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)> const&)': /home/hy-20/project/MyTestHttp/main.cpp:46: undefined reference to `curl_easy_setopt' /usr/bin/ld: /home/hy-20/project/MyTestHttp/main.cpp:47: undefined reference to `curl_easy_setopt' /usr/bin/ld: CMakeFiles/MyTestHttp.dir/main.cpp.o: in function `Http::perform()': /home/hy-20/project/MyTestHttp/main.cpp:50: undefined reference to `curl_easy_perform' collect2: error: ld returned 1 exit status ninja: build stopped: subcommand failed.

这是一个链接错误,编译器找不到 curl 库的函数。你需要在链接时加上 curl 库。如果你使用的是 CMake,可以在 CMakeLists.txt 中添加以下代码: ``` find_package(CURL REQUIRED) target_link_libraries(YourProjectName ${CURL_LIBRARIES}) ``` 其中,YourProjectName 是你的项目名称。

/usr/bin/ld: CMakeFiles/AVM_HIKVISION.dir/src/captures.cpp.o:(.bss+0x0): multiple definition of `last'; CMakeFiles/AVM_HIKVISION.dir/src/main.cpp.o:(.bss+0x0): first defined here /usr/bin/ld: CMakeFiles/AVM_HIKVISION.dir/include/AVM/birdview.cpp.o:(.bss+0x0): multiple definition of `last'; CMakeFiles/AVM_HIKVISION.dir/src/main.cpp.o:(.bss+0x0): first defined here /usr/bin/ld: CMakeFiles/AVM_HIKVISION.dir/src/mediawall.cpp.o:(.bss+0x0): multiple definition of `last'; CMakeFiles/AVM_HIKVISION.dir/src/main.cpp.o:(.bss+0x0): first defined here

这个错误提示说明了一个多重定义的问题。在你的代码中,变量 `last` 被多次定义了。 根据错误提示,`last` 在多个文件中被定义了。它在 `CMakeFiles/AVM_HIKVISION.dir/src/main.cpp.o`、`CMakeFiles/AVM_HIKVISION.dir/include/AVM/birdview.cpp.o` 和 `CMakeFiles/AVM_HIKVISION.dir/src/mediawall.cpp.o` 中都有定义。 要解决这个问题,你可以尝试以下几种方法之一: 1. 检查代码逻辑并删除其中一个 `last` 的定义,确保只有一个定义存在。 2. 如果 `last` 是全局变量,可以将其放在一个单独的源文件中(例如 `last.cpp`),并将其声明为 `extern`。然后,在需要使用 `last` 的其他文件中,包含 `last.h` 头文件,并在使用前进行声明 `extern int last;`。这样可以确保只有一个定义,并在需要使用时进行引用。 3. 如果 `last` 是局部变量,可以检查是否在某个范围内意外地重复定义了。确保每个函数或作用域内的变量命名唯一。 请根据你的需求选择适合的解决方案,并检查代码中是否还有其他地方存在类似的多重定义问题。 希望能帮到你!如果还有其他问题,请随时提问。

相关推荐

/usr/bin/ld: CMakeFiles/global_planning_node.dir/src/global_planning_node.cpp.o: in function main.cold': global_planning_node.cpp:(.text.unlikely+0x273): undefined reference to tf::TransformListener::~TransformListener()' /usr/bin/ld: CMakeFiles/global_planning_node.dir/src/global_planning_node.cpp.o: in function main': global_planning_node.cpp:(.text.startup+0xc64): undefined reference to tf::Transformer::DEFAULT_CACHE_TIME' /usr/bin/ld: global_planning_node.cpp:(.text.startup+0xc92): undefined reference to tf::TransformListener::TransformListener(ros::Duration, bool)' /usr/bin/ld: global_planning_node.cpp:(.text.startup+0xd7a): undefined reference to tf::Transformer::lookupTransform(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::_cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ros::Time const&, tf::StampedTransform&) const' /usr/bin/ld: global_planning_node.cpp:(.text.startup+0xe74): undefined reference to tf::TransformListener::~TransformListener()' collect2: error: ld returned 1 exit status make[2]: *** [CMakeFiles/global_planning_node.dir/build.make:246: /home/juan/catkin_ws/devel/.private/putn/lib/putn/global_planning_node] Error 1 make[1]: *** [CMakeFiles/Makefile2:207: CMakeFiles/global_planning_node.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs.... /usr/bin/ld: CMakeFiles/local_obs_node.dir/src/local_obs.cpp.o: in function rcvVelodyneCallBack(sensor_msgs::PointCloud2<std::allocator<void> > const&)': local_obs.cpp:(.text+0xa0b): undefined reference to tf::Transformer::waitForTransform(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ros::Time const&, ros::Duration const&, ros::Duration const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) const' /usr/bin/ld: local_obs.cpp:(.text+0xc74): undefined reference to tf::TransformListener::transformPoint(std::cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, geometry_msgs::PointStamped<std::allocator<void> > const&, geometry_msgs::PointStamped<std::allocator<void> >&) const' /usr/bin/ld: CMakeFiles/local_obs_node.dir/src/local_obs.cpp.o: in function main.cold': local_obs.cpp:(.text.unlikely+0x37d): undefined reference to tf::TransformListener::~TransformListener()' /usr/bin/ld: CMakeFiles/local_obs_node.dir/src/local_obs.cpp.o: in function main':local_obs.cpp:(.text.startup+0x62a): undefined reference to tf::Transformer::DEFAULT_CACHE_TIME' /usr/bin/ld: local_obs.cpp:(.text.startup+0x64d): undefined reference to tf::TransformListener::TransformListener(ros::Duration, bool)' /usr/bin/ld: local_obs.cpp:(.text.startup+0x6dc): undefined reference to tf::TransformListener::~TransformListener()' collect2: error: ld returned 1 exit status make[2]: *** [CMakeFiles/local_obs_node.dir/build.make:246: /home/juan/catkin_ws/devel/.private/putn/lib/putn/local_obs_node] Error 1 make[1]: *** [CMakeFiles/Makefile2:612: CMakeFiles/local_obs_node.dir/all] Error 2 make: *** [Makefile:141: all] Error 2解释编译时出现这个问题的原因,并说说如何解决

最新推荐

recommend-type

解决-BASH: /HOME/JAVA/JDK1.8.0_221/BIN/JAVA: 权限不够问题

主要介绍了解决-BASH: /HOME/JAVA/JDK1.8.0_221/BIN/JAVA: 权限不够的问题,需要的朋友可以参考下
recommend-type

MySQL 启动报错:File ./mysql-bin.index not found (Errcode: 13)

主要介绍了MySQL 启动报错:File ./mysql-bin.index not found (Errcode: 13)的解决方法,需要的朋友可以参考下
recommend-type

linux输入yum后提示: -bash: /usr/bin/yum: No such file or directory的解决方法

在本篇文章里小编给大家整理的是关于linux输入yum后提示: -bash: /usr/bin/yum: No such file or directory的解决方法,有需要的朋友们参考下。
recommend-type

64位linux 编译c提示gnu/stubs-32.h:No such file or directory的解决方法

主要介绍了64位linux 编译c提示gnu/stubs-32.h:No such file or directory的解决方法,需要的朋友可以参考下
recommend-type

Linux bash:./xxx:无法执行二进制文件报错

主要介绍了Linux bash:./xxx:无法执行二进制文件报错,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

2. 通过python绘制y=e-xsin(2πx)图像

可以使用matplotlib库来绘制这个函数的图像。以下是一段示例代码: ```python import numpy as np import matplotlib.pyplot as plt def func(x): return np.exp(-x) * np.sin(2 * np.pi * x) x = np.linspace(0, 5, 500) y = func(x) plt.plot(x, y) plt.xlabel('x') plt.ylabel('y') plt.title('y = e^{-x} sin(2πx)') plt.show() ``` 运行这段
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。