作者antirazin (~ SNSD & KARA ~ )
看板MacDev
标题[问题] Xcode开发C++如何连接C++ shared object
时间Tue Feb 6 21:43:12 2018
抱歉小弟是Xcode和C++的新手,初在此板发文,麻烦各位大大鞭小力一点 >"<
我现在手边有一个.so档,
透过nm反编译找到一些function想要使用看看,
我已经在Build Phrases -> Link Binary with Libraries 加入了该so档,
似乎还是没办法让我的C++ project找到,
我也没有相关的header档,
想问看看各位大大的看法~
逻辑上不正确之处请多指正谢谢~!
--
1F:推 waterspout:其中这男子为什麽在对方说不後 仍强行抚摸对方下体10/11 21:45
2F:→ waterspout:而里面有没有什麽秘密? 好!我们今天也请到了五位来宾 10/11 21:46
3F:→ e6638:皓平:其实马雅人早就预言到了 10/11 21:46
4F:→ waterspout:皓平 我还没叫到你
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.24.189.173
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MacDev/M.1517924606.A.7B2.html
5F:→ XXXXLAY: Pch? 02/07 01:18
6F:→ antirazin: 也没.pch file 02/07 22:43
7F:推 yume190: 没header file 吗? 02/09 12:53
8F:→ yume190: 以及是 run 本机吗 02/09 12:58
9F:→ yume190: Link flag 有下吗 02/09 12:59
後来我是找到可以用dlopen和dlsym去动态load shared object,
结果出现error
Cannot load library: dlopen(/usr/lib64/libtest.so, 1): no suitable image found. Did find:
/usr/lib64/libtest.so: unknown file type, first eight bytes: 0x7F 0x45 0x4C 0x46 0x02 0x01 0x01 0x00
/usr/lib64/libtest.so: unknown file type, first eight bytes: 0x7F 0x45 0x4C 0x46 0x02 0x01 0x01 0x00
Program ended with exit code: 1
上网参考
https://stackoverflow.com/questions/1924452/what-can-cause-dlopen-no-suitable-image-found-cant-map
看起来是shared object格式Mac OS认不出来,
後来换成用VM去开一个CentOS出来就编的过了,
目前是卡在执行时dlopen会跑出segmentation fault.....
※ 编辑: antirazin (114.24.151.163), 02/12/2018 00:24:24