linux-找不到FFI错误模块
作者:互联网
我正在使用Ubuntu 64位和Pharo 1.2.1
我编写了一些FFI代码,可以从glibc访问crypt(3).我想将其更改为从使用apt-get安装的libxcrypt访问crypt.当我从以下方法更改方法时:
ffiCrypt: aKey with: aSalt
<cdecl: char* 'crypt' (char* char*) module: 'crypt'>
^self externalCallFailed
至:
ffiCrypt: aKey with: aSalt
<cdecl: char* 'crypt' (char* char*) module: '/lib/libxcrypt.so.1'>
^self externalCallFailed
我收到“找不到外部模块”错误.我已经从映像所在的目录链接到libxcrypt.so.1文件.
我怀疑这可能是64位与32位库的事情,或者我需要将库链接到其他地方但不知道.
我可以检查哪些步骤或事情以尝试查找为什么找不到外部模块?
解决方法:
这既是64位还是32位库问题,也是链接问题.
阅读此:
http://forum.world.st/FFI-library-dependency-howto-td50461.html#a50462
帮助我了解了Pharo在哪里寻找库,因此我只需要安装32位libxcrypt并正确链接即可.
标签:ffi,smalltalk,pharo,linux 来源: https://codeday.me/bug/20191208/2091625.html