腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
1
回答
在windows到
linux
项目转换中绕过__declspec(dllimport)
、
、
我正在将一个visual studio c++框架转换成一个
linux
版本,在消除对windows的依赖的过程中,我在一些
头文件
中遇到了一大堆__declspec(dllimport)调用。据我所知,declspec调用将当前.h文件中定义的函数/类链接到动态库"UeiDaqAPI“
linux
不支持__declspec(dllimport),所以我尝试了一个使用
dlopen
()的“变通办法对于更多的背景信息,大约有40个
头文件
使用上面的__declspec()调用,因此测试任何变通方
浏览 91
提问于2020-01-13
得票数 0
2
回答
dlopen
()搜索路径
、
、
有没有办法以编程方式找出
dlopen
()为共享对象搜索了哪些路径?我一直以为
dlopen
()只会查看/lib和/usr/lib,但现在我发现在
Linux
Mint上,libglib-2.0so等几个核心组件位于一个完全不同的文件夹中,即/rofs/lib/i386-gnu-
linux
有没有办法知道
dlopen
()将搜索共享对象的所有这些路径?我已经检查了环境变量LD_LIBRARY_PATH,但它根本没有定义。
浏览 4
提问于2011-11-19
得票数 10
回答已采纳
1
回答
如何防止加载特定的动态库
、
、
、
、
我想使用一个古老的软件(虚拟锦标赛“经典”从1999年,也称为UT99)。动态库libtxc_dxtn.so被隐式加载,探索可选的S3纹理压缩(S3TC)支持。不幸的是,在加载库时,主应用程序会出现分段故障(崩溃也描述了)。解决方法似乎是通过删除或移动libtxc_dxtn.so来删除Mesa的纹理压缩库。这个应用程序在没有纹理压缩的情况下运行的非常好,但是当然其他需要纹理压缩支持的应用程序现在已经崩溃了。当然,我不想为一个特定的应用程序修改我的系统。我能阻止(如“掩码”或“禁用”)特定的动态库被特定的应用程序加载吗?我希望能找到与LD_PRELOAD相反的东西。 Upda
浏览 3
提问于2017-12-02
得票数 2
回答已采纳
1
回答
dlopen
无法为作为原型的函数定义未定义的符号。
、
、
、
我正在使用C11在
Linux
(64位)上编写一个共享库。test.dvoid* lh =
dlopen
("./dll.so", RTLD_NOW | RTLD_GLOBAL);dlerror给了我:
dlopen
错误:.在
头文件
中定义为prototype并在C文件中实现时,为什么不能找到函数呢?
浏览 3
提问于2014-11-11
得票数 0
回答已采纳
1
回答
将预构建的.so文件添加到android项目中,并使用
dlopen
和ndk加载该文件。
、
但是为库提供的
头文件
不是JNI特定的
头文件
,它是常见的C
头文件
。我想使用
dlopen
加载这个库,并使用dlsym获取符号。因此,我可以使用dlsym返回的函数指针调用这些函数。我所要求的->
dlopen
(lib_path,RTLD_LAZY);安装apk文件后到mylib.so的路径 如果有人这样做成功了,请帮帮我。
浏览 1
提问于2012-09-11
得票数 0
1
回答
``
dlopen
()‘通过调用动态链接器’`ld
linux
.so‘执行动态链接吗?
、
CSAPP说
dlopen
()是否通过调用动态链接器ld-
linux
.so来执行动态链接?ld-
linux
.so是
dlopen
()调用来执行动态链接的动态链接器吗? 谢谢。
浏览 0
提问于2020-09-27
得票数 0
回答已采纳
1
回答
如何重新定义c++指针函数?
、
、
、
更新 我使用这个在Android (
Linux
)上,我通过函数
dlopen
加载了bass模块,我需要通过dlsym函数将所有函数点(这里是贝斯库的原始
头文件
)指向这个加载模块。
浏览 0
提问于2019-12-13
得票数 1
回答已采纳
1
回答
使用dlfcn.h库函数时出现无效的ELF标头错误
、
、
mm_realloc)(void*, size_t); void *handle =
dlopen
浏览 14
提问于2017-12-25
得票数 0
回答已采纳
1
回答
on错误: FreeBSD 7.2上未定义的符号"_nss_cache_cycle_prevention_function“
、
、
我有一个ANSI程序,它使用传递RTLD_LAZY的
dlopen
()动态加载.so文件。这在
Linux
上也可能是一个问题,尽管我在那里没有遇到这个问题。我不希望将FreeBSD特定的
头文件
加载到我的程序中。我想以一种可移植的方式包含这个函数,或者取消这些警告。
浏览 0
提问于2010-08-25
得票数 1
回答已采纳
4
回答
如何在C++中加载共享对象?
、
、
我有一个共享对象(相当于Windows dll的
Linux
),我想导入它并与我的测试代码一起使用。 我敢肯定这不是这么简单;)但这是我想做的事情。
浏览 0
提问于2009-07-17
得票数 29
回答已采纳
1
回答
函数已声明,但未在共享库中定义
、
、
有一个函数只在
头文件
中声明,而没有在源代码中定义。 extern int theFunc(int);在库中只有一个函数声明的原因是什么?
浏览 2
提问于2018-11-07
得票数 0
1
回答
如何从C程序函数中调用包含简单函数的程序集文件?
、
、
、
、
我想编写一个简单的C程序示例,它调用.asm格式的文件并执行他的代码。 call(functionwithasmcode.asm);
浏览 1
提问于2021-01-29
得票数 0
2
回答
Android NDK -从dlsym()只加载主DLL\SO的符号
、
、
、
在
dlopen
()之后使用dlsym()将提供该方法的地址,但它将在所有链接的SO中搜索该方法。例如,如果我使用
dlopen
()打开了A.so,然后使用
dlopen
()提供的句柄调用dlsym()来检查函数foo(),那么只有当它是A.so的一部分时,我才应该获得句柄。在
Linux
上,如果我们使用带有'RTLD_FIRST‘标志的
dlopen
(),就可以实现预期的行为。但安卓似乎不支持'RTLD_FIRST‘。我验证了宏'RTLD_FIRST‘&的'dlfc
浏览 0
提问于2019-01-24
得票数 2
1
回答
推迟共享库的链接
、
、
、
如果我在
linux
中使用一个共享库,如果应用程序必须在运行时找到这个库,为什么我需要将它链接到-l?有没有一种方法可以只用一个
头文件
编译应用程序,并在运行时进行链接?
浏览 5
提问于2012-05-24
得票数 1
1
回答
在GNU/
Linux
上链接插件时,如何智能地检测未定义的符号?
、
、
、
、
我有一个可以通过
dlopen
()加载插件的程序foo。我正在编写一个这样的插件foobar,它与第三方库libfoo提供的功能接口。在
Linux
上,我是这样构建foobar的:gcc -fpic -shared -o foobar.so foobar.o -lbar问题是,这不能检测到未定义的符号,例如,由于代码中的错误或
头文件
和库之间的不匹配。链接成功,只有在加载插件或调用插件中的内容(取决于
dlopen
()标志)时才会出现错误。在GNU/<
浏览 2
提问于2012-08-29
得票数 6
1
回答
为什么我和cygwin有错误?
、
libhandle) { else libhandle =
dlopen
("/data/data/net.avs234/lib/libatrack9.so", RTLD_NOW); if(libhan
浏览 1
提问于2011-05-27
得票数 0
3
回答
使用调用共享库。/
我对在
Linux
中使用
dlopen
调用共享库感到好奇。假设我想在C中使用一个名为fileName.so的共享库。我在64位的Ubuntu
Linux
上工作,我包含了dlfcn.h并使用
dlopen
函数来访问共享库。当我使用
dlopen
(fileName.so, RTLD_LAZY)时,返回一个空的句柄,并且不打开共享库。但是,当我使用
dlopen
("./fileName.so", RTLD_LAZY)时,
dlopen
会执行它的工作并打开共享
浏览 4
提问于2013-02-04
得票数 1
回答已采纳
1
回答
在球拍中有依赖关系的FFI?
、
、
、
我开发了一个非常简单的FFI布线PI库,以便能够控制Raspberry Pi使用球拍。通常,在编译使用LCD的C文件时,在编译时标记标准库和开发库:在我的LCD FFI中,我做了以下工作: (ffi-lib "usr/lib/libwiringPiDev.so")); ffi-
浏览 7
提问于2021-03-09
得票数 2
回答已采纳
1
回答
Magick++链接错误
、
、
、
、
image.read("/home/usr1/test.tiff"); return 0;我正在和arm-
linux
/
dlopen
.c:194: undefined reference to `
dlopen
' /usr/local/lib/libMagick++/libMag
浏览 4
提问于2011-09-07
得票数 2
回答已采纳
1
回答
dlopen
何时阻塞?
、
、
、
共享库通过LD_PRELOAD加载,同一个库的构造函数调用
dlopen
("libc.so.6")只有当在
Linux
上使用目标应用程序Firefox设置LD_PRELOAD时才会出现问题(如上所述)。任何其他应用程序都可以正常工作(
dlopen
不会阻塞)!
浏览 10
提问于2018-02-26
得票数 0
点击加载更多
热门
标签
更多标签
云服务器
对象存储
ICP备案
云点播
实时音视频
活动推荐
运营活动
广告
关闭
领券