【坑坑坑坑坑】dlsym----undefined symbol: hello_linux dlsym undefined symbol:-程序员宅基地

报错:lib/libhello_test1.so: undefined symbol: hello

 

查看libhello_test1.so的符号表:

[root@xxhh test1]# nm libhello_test1.so | grep hello

                 U _Z13hello_displayi

000000000000071a T _Z5hellov

00000000000006bc T _Z8hello_cbPFviEPv

发现符号表中hello变成了_Z5hellovlibhello_test1.so应该是由g++编译生成的。

而函数dlsym查找字符串"hello",因此报错。

 

解决方法:

hello_test1源代码加上下面代码:

#ifdef __cplusplus

extern "C"

{

#endif

void hello(void );

#ifdef __cplusplus

}

#endif

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/kuaidfkuai/article/details/45919753

智能推荐

使用navicat连接云服务器的docker中的mysql数据库过程_navicate 查看 docker 数据库-程序员宅基地

文章浏览阅读3.7k次,点赞2次,收藏9次。第一步:在CentOS中安装docker引擎要安装Docker引擎,需要CentOS 7或CentOS 8的维护版本。查看CentOs版本:cat /etc/redhat-release使用仓库安装的方法:设置仓库安装yum-utils包(提供了yum-config-manager工具)并启动一个稳定的仓库 sudo yum install -y yum-utils sudo yum-config-manager \ --add-repo \ https://downl_navicate 查看 docker 数据库

docker删除none镜像_在docker容器中“centos <none> ” 这个镜像删除不了-程序员宅基地

文章浏览阅读445次。经常会出现很多none的镜像,一看就不爽,一条命令搞定docker images | grep none | awk '{print $3}'_在docker容器中“centos ” 这个镜像删除不了

Java之线程池与Lambda表达式_java lambda表达式使用线程池-程序员宅基地

文章浏览阅读562次。文章目录一、线程池1.1 缓存线程池CachedThreadPool1.2 定长线程池FixedThreadPool1.3 单线程线程池SingleThreadExecutor1.4 周期性任务定长线程池ScheduledThreadPool一、线程池提到线程线程池我们先来说一下线程池的好处,线程池的有点大概可以概括三点:重用线程池中的线程,避免因为线程的创建和销毁所带来的性能开销。能有效控制线程池的最大并发数,避免大量线程之间因互相抢夺系统资源而导致的阻塞现象。能够对线程进行简单的管理,.._java lambda表达式使用线程池

思考项目 求1+2的2次方+3的3次方+4的4次方+5的5次方+6的6次方的值。(异种循环嵌套)_6的6次方+5的5次方+4的4次方+3的3次方-程序员宅基地

文章浏览阅读9.4k次。/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:刘畅 * 完成日期:2014年 10 月 22 日 * 版 本 号:v1.0 * * 问题描述:求s=1!+2!+···+10!即求1到10的阶乘和;* 输入描述: 输入一个常量m,一个变量n,一个变_6的6次方+5的5次方+4的4次方+3的3次方

快速排序用C语言可以这么写_# include <stdio.h> # include <stdlib.h>可以并排写吗-程序员宅基地

文章浏览阅读141次。快速排序用C语言可以这么写#include <stdio.h>#include <stdlib.h>/** * 将nums中的数据,进行快速排序 * @param nums 待排序的数组 * @param start 数组中待排序序列的起始位置 * @param end 数组中待排序序列的终止位置 */void fastSort(int *nums, int start, int end) { if (start >= end) re_# include # include 可以并排写吗

mxnet-correlation_f.correlation mxnet-程序员宅基地

文章浏览阅读330次。correlation层计算的是两个feature-map之间的相关系数,与卷积操作类似,只不过卷积的对象从卷积核变成了另外一个feature-map(这样也就没有了权重w和b)。_f.correlation mxnet

随便推点

join left on多张表_sql中left join from 多个表怎么写-程序员宅基地

文章浏览阅读837次。select*froma,b,c,dLEFTJOINeone.id=a.idleftjoinfonf.id=c.id现在这句是错的,怎么写才正确...sql中left join from 多个表具体代码如下:SELECT r.roleid,r.rolename,r.deptid,d.deptname,GROUP_CONCAT(m.menuname SEPARATOR ',' ) menunam..._from多个表left join怎么写

Object.assign 实现原理与分析_object.assign的缺点-程序员宅基地

文章浏览阅读437次。Object.assign剖析:方法含义:浅层次的完成对象的拷贝工作,拷贝源对象的第一层属性和第一层引用方法使用Object(目标对象,源对象1,源对象2,…)方法原理步骤:1.判断对象是否存在assign方法,没有就直接赋值给对象一个assign方法2.判断目标源对象是否为空,为空则抛出错误,程序完毕3.遍历源对象,拿出可枚举属性赋值给新对象4.返回新对象代码实现if(typeofObject.assign!=='function'){..._object.assign的缺点

C++栈混洗-程序员宅基地

文章浏览阅读788次。栈混洗_栈混洗

三星s6 android 5.1.1,三星S6升级安卓5.1.1了:传感器失灵能解决吗?-程序员宅基地

文章浏览阅读170次。原标题:三星S6升级安卓5.1.1了:传感器失灵能解决吗?丫丫网资讯,就在上周,谷歌低调的发布了Android 5.1.1系统,但是这次,谷歌的亲儿子们就没那么那么好运了,因为已经有设备比它们更早的体验上了Android新版本。但今天在国外的论坛上,有网友曝光了三星Galaxy S6已经可以更新到Android 5.1.1系统。该网友还带来了三星三星S6新系统的演示视频,从视频中我们可以清晰的看到..._三星更新系统后 传感器

html获得文本,从 IHTMLDocument2 获得/写入 HTML 文本 (IPersistStreamInit)-程序员宅基地

文章浏览阅读175次。///////////////////////////////////////////////////////////////////////////////CHtmlViewoperationsBOOLCHtmlView::GetSource(CString&refString){BOOLbRetVal=FALSE;CComPtrspDisp=GetHtmlDocum..._ihtmldocument2获取文本

Html表单元素对不齐?表单元素与提示文字无法对齐的解决办法-程序员宅基地

文章浏览阅读1.4k次。最近的项目涉及到很多表单的制作,特别是复选框(checkbox)和单选框(radio)。但是在前端开发过程中发现,单(复)选框和它们后面的提示文字在不进行任何设置的情况下,是无法对齐的,而且在Firefox和IE中相差甚大。即使设置了vertical-align:middle,也依然不能完美对齐。如下图所示:于是上网查看了一些网站,发现这个问题是普遍存在的,如下图(FF3.5):在很多网站涉及到表..._html 为啥 日期和 文字看起来不在一行