我有一个弱符号的二进制文件,我希望能够在运行时与运行相关的共享库链接。弱符号,共享库和dlopen
$nm testrun
...
w basic2.test
...
我的第一个测试是使用.o
文件的静态链接时间,即工作,但我需要它来共享。
因此,我的第二个测试是获得一个定义了该符号的共享库,并在编译时将它与-lmy
(libmy.so)链接,实际上它也可以工作。
第三步尝试不在编译时链接和使用ld_preload技巧,这没有奏效。
nm libmy.so
...
00000550 T basic2.test
...
我真的不知道为什么这个人不工作,看起来像动态加载器应该有足够的信息来设置testruns弱符号与一个在libmy.so。
我的最终目标,我想将需要更多的工作,是在启动时加载一个小函数,该函数用dlsym检查适当的符号并将其设置在那里。
任何提示?
由于多路,那不是我的实际问题,但我发现一个名不匹配,我会更新的问题 –
检查回答。 – iabdalkader