求助各位大侠(难题): 动态库中包含有外部变量,但是定义不在动态库中,链接会报Undefined symbol错误,但是SUSE linux是没有问题.
a.cpp
extern int aaa;
编译a.cpp,并链接为a.so. 这时候会找不到符号的错误.
b.cpp
int aaa;
问了一个同事, 说是aaa的定义也必须在a.so里面,不然AIX/HP编译会报这种错的. 但是SUSE linux屏蔽了这种错误, 所以不会报错.
但是由于特殊要求,定义不能放在a.so里, 但是不知道如何解决.
求助各位大侠帮帮忙了!!
extern int aaa;
编译a.cpp,并链接为a.so. 这时候会找不到符号的错误.
b.cpp
int aaa;
问了一个同事, 说是aaa的定义也必须在a.so里面,不然AIX/HP编译会报这种错的. 但是SUSE linux屏蔽了这种错误, 所以不会报错.
但是由于特殊要求,定义不能放在a.so里, 但是不知道如何解决.
求助各位大侠帮帮忙了!!
...全文
相关推荐
解决gedit: symbol lookup error: /home/xxx/libgobject-2.0.so.0: undefined symbol: g_date_copy问题
同时,它也展示了如何通过调整环境变量来解决这类依赖性问题。总之,当遇到"undefined symbol"错误时,应检查相关库是否存在、版本是否匹配以及程序的链接路径是否正确。
Yum中报错:“pycurl.so: undefined symbol: CRYPTO_num_locks”的问题排查
"在Linux系统中,当遇到`yum`无法使用并报错`pycurl.so: undefined symbol: CRYPTO_num_locks`时,这通常意味着系统中的`pycurl`库与`lib
Apache启动提示错误undefined symbol: libiconv_open解决方法
然而,在配置和安装过程中,用户可能会遇到各种问题,其中之一就是"undefined symbol: libiconv_open"错误。
解决Android下getifaddrs和freeifaddrs undefined reference 的问题
因此,当你尝试在C或C++代码中使用这两个函数时,编译器会报出“undefined reference”错误。为了解决这个问题,你可以采取以下几种方法:1.
高版本linux的EXPORT-SYMBOL共享变量通过extern 导入编译出现 undefined 错误解决
本文介绍了一个Linux内核模块的实现,包括字符设备的注册与注销、平台驱动的定义及probe和remove函数的应用。模块提供了可导出的函数hello_say,并通过EXPORT_SYMBOL宏供其他


