错误:无效值没有被忽略,因为它应该是
我正在尝试从动态库中获取函数符号,然后我需要使用新函数指针将我的函数替换为库函数。代码将用 c++ 文件编写。 我使用了以下步骤, { void *temp = …
无法使用 LD_PRELOAD 拦截 PyDict_New
我正在尝试使用 LD_PRELOAD 来拦截 PyDict_New 函数。我已经验证这个食谱可以在Python解释器中与getpid一起使用,并且我已经对其进行了调整以使用 PyD…
通过 dlsym 覆盖 FSGetCatalogInfo
我试图使用 DYLD_INSERT_LIBRARIES 覆盖 OS X Lion 10.7 下的 FSGetCatalogInfo 函数,并且一切正常,直到我实际调用原始 FSGetCatalogInfo 函数,此…
dlopen 问题(OSX)
我有一个动态加载 dylib 的主应用程序,从该 dylib 内部我想从主程序调用导出的函数。我正在使用 dlopen(NULL,flag) 来检索我的主要应用程序 handle …
填充共享库中的全局函数指针(Solaris、Sun Studio)
我正在围绕 Fortran 95 库创建一个小型 C++ 包装器共享库。由于 Fortran 符号在符号名称中包含 .,因此我必须使用 dlsym 将 Fortran 函数加载到 C++ …
使用 dlsym 跟踪 mmap
我正在尝试测量某些程序映射需要多少内存。 我使用以下代码: void * mmap (void * addr, size_t len, int prot, int flags, int fildes, off_t off) …
使用 Swig 将 C 和 TCL 结合起来
我一直在遵循使用 Swig 将 C 与 TCL 结合起来的教程。该教程似乎工作正常,但最后我遇到了一个无法解决的错误。情况如下: 我遵循的教程是: http://w…
dlsym 如何成功从剥离的二进制库导入函数?
奇怪的是 dlsym 可以从剥离的二进制文件中导入函数。 谁能告诉我为什么/如何? === FILE: a.c === int a1() { return 1; } int a2() { return 2; } ==…
C++中的工厂模式:自动生成显式createInstance()方法
我在编写 C++ 框架时遇到问题,用户应该拥有比可能使用它更少的开销。用户可以通过创建一个包含类的共享库来将他们的工作发布到框架,该类是由框架的 …
使用 dlsym 加载已命名的未导出符号?
是否可以使用 dlsym 从框架加载命名的未导出符号? 我尝试导入的符号有一个在框架内引用的名称。这是我需要调用的函数。 我正在尝试以通常的 dlopen +…
如何让这个用于加载模块的简单 C 测试程序正常工作?
我打算在 linux 上使用 dlopen 和 dlsym 来使这两个源文件工作: #include #include int main() { int *(func)(void); func=dlsym( dlopen("/home/noah…
C——> malloc --> dl符号
我已经使用 dlsym() 来调用我的 malloc 版本,而不是默认库 malloc: lt_malloc = (void*(*)(size_t))dlsym(RTLD_NEXT, "malloc"); TRACE((stderr, "i…
为什么这个动态库加载代码可以与gcc一起工作?
背景: 我发现自己面临着将 C++ GNU/Linux 应用程序移植到 Windows 的艰巨任务。该应用程序所做的事情之一是在特定路径上搜索共享库,然后使用 posix …