POSIX函数将库或二进制文件动态加载到内存中
由于 libc/libgcc_s 不匹配,Linux 上两个 dlopen() 调用之间的交互会出现段错误
我正在尝试打包一些在 RedHat 7 上构建并在 RedHat 8 上运行的软件。我将一些库(例如 glibc 和 libgcc_s)与二进制文件一起包含在内。问题发生时...
有没有办法让 Linux ELF 二进制文件具有可选的共享库依赖项而无需 dlopen()?
我有一个应用程序想要使用共享库(libwayland-client.so)(如果可用),但即使它不可用也仍然需要运行。 实现这一点的通常方法是使用 dl...
我正在尝试检查调用 dlopen 和 dlsym 的程序的行为:最终目标是插入一个小函数,该函数记录对通过 dlsym 获得的函数的调用。 通常,对于某些功能...
dlopen wayfire 插件导致未定义符号:_ZTIN2wf3txn20transaction_object_tE
为了避免 A/B 问题:最终我想要做的是查明我拥有的 wayfire 插件二进制文件(在我的例子中是 firedecor)是否已使用足够新的 wayfire 版本进行编译...
是否有一个编译器标志允许共享库调用来自打开它的共享库的函数?
下面是一个最小的可重现示例,其目标是从 a() 调用 b_util()。我的问题是是否可以在不显式地将 b_util() 函数指针传递给 a.c 的情况下执行此操作。 ...
@IBDesignable 预览在 M2 上的 XCode 14.2 下再次损坏?
我收到错误: .../Base.lproj/MainMenu.xib 无法呈现以下实例:dlopen(....app, 0x0001): 尝试过:'/...' (没有这样的文件),'....app' ( mach-o 文件,但它是一个不兼容的架构(...
如何在vala-lang中使用libc dlopen和dlsym
vala-lang 如何访问动态链接函数? 作为参考示例,假设我们想要重现此 cpp openssl md5 程序](https://stackoverflow.com/a/73843621/1695680),除了使用
vala-lang 如何访问动态链接函数? 作为参考示例,假设我们想要重现此 cpp openssl md5 程序](https://stackoverflow.com/a/73843621/1695680),除了使用
Vala(编程语言)如何使用libc dlopen和dlsym
vala-lang 如何访问动态链接函数? 作为参考示例,假设我们想要重现此 cpp openssl md5 程序](https://stackoverflow.com/a/73843621/1695680),除了使用
fcntl 被定义为可变参数函数 int fcntl(int fd, int action, ...) ,有时采用 int arg,有时采用 void* arg。 我想为这个 libc 函数编写一个日志拦截器(我们...
libtool:dlopen() 失败,但仅当作为子进程运行时
我对使用 libtool 在运行时加载插件的应用程序有一个奇怪的问题。当直接从 shell 运行时,它可以正确运行。但是当作为任何类型的子进程运行时(例如 P...
dlopen 在 Android 上对于 Vulkan 自定义层效果不佳
我有一个名为 memory_layer 的自定义层,用于收集内存信息。这是我想要实现的目标: 在我的 Vulkan 程序中使用 memory_layer。 Vulkan 加载器将 libmemory_layer.so 加载到 m...
为什么我在 CentOS 上调用 dlopen() 函数时得到无效句柄(非零)?
我尝试为正在运行的 Tomcat 进程安装 seccomp BPF 过滤器。将 gdb 附加到进程后,我调用 dlopen 函数来加载共享库(.so 文件),它返回一个 han...
我写了一个为linux平台设计的c代码。 现在,我想让它跨平台,以便也可以在 Windows 中使用。 在我的代码中,我 dlopen 一个 so 文件并利用其中的函数。 以下是我如何...
所以大家可能都知道glibc的/lib/libc.so.6可以像普通的可执行文件一样在shell中执行,在这种情况下它会打印其版本信息并退出。这是通过定义...来完成的
我在使用 dlopen 动态加载的库时遇到一些奇怪的链接问题。 准确地说,我有一个代码加载依赖于 Int 的 libmine.so 库(这是代码的一部分)...
如何使用 LD_PRELOAD 和 dlsym 覆盖 PHP 中的 php_network_connect_socket_to_host?
我试图覆盖“php_network_connect_socket_to_host”并且无法做到这一点,尽管我可以覆盖“connect”。 这是wrapper.c的源代码: #定义_GNU_SOURC...
对于bazel c++项目,如何使用“dlopen/sym”来定位我自己的输出库?
如何指定/配置以便我的 dlopen 函数可以找到我自己的 Bazel 项目构建的 .so 库文件? 我有一个非常简单的项目,如下所示: LS 构建工作空间 hello-dl.cc hello-g...
使用时 void *ptr = dlopen(path_to_shared_object,RTLD_NOW) “在 dlopen() 返回之前解析共享对象中的所有未定义符号”(主页)。 有没有类似的方法
使用 dlclose 和 dlopen 重新加载动态加载的库适用于 Linux 上的 Clang,但不适用于 GCC
考虑以下循环 而(真){ void* lib = dlopen("bin/liblibrary.so", RTLD_NOW | RTLD_LOCAL); 断言(lib); typedef void (*f_t)(void); f_t f = (f_t)dlsym(lib, &