微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Linux上吱吱叫SMTP

我正在使用Squeak 5类SecureSMTPClient通过SSL / TLS发送电子邮件

它在我的Windows机器上正常工作(感谢这个问题的答案)。

但是,在Linux上我得到:

Error: primitiveSSLCreate Failed

并在控制台中进行打印(但仅在图像第一次尝试发送邮件时):

# ioLoadModule(/home/squeak5vm/SqueakSSL): /home/squeak5vm/SqueakSSL: undefined symbol: clock_gettime

吱吱“原语”是与平台和图书馆交谈的function。 我的猜测是,这个Linux不提供Squeak期望的一些SSL / TLS库版本。 但Squeak究竟期待什么呢?

其他信息:

ldd /home/squeak5vm/SqueakSSL的输出是:

linux-gate.so.1 => (0xb7757000) libc.so.6 => /lib32/libc.so.6 (0xb7392000) /lib/ld-linux.so.2 (0xb7758000)

您正在使用的SqueakSSL插件的版本是针对OpenSSL进行编译的,而OpenSSL则需要clock_gettime 。

请注意, man页说

Link with -lrt (only for glibc versions before 2.17).

显然,你的SqueakSSL二进制文件是在比glibc 2.17更晚的系统上编译的。

这里有一些选项:

试试https://github.com/squeak-smalltalk/squeakssl/releases中的SqueakSSL二进制文件,它们与LibreSSL静态链接。 注意:他们可能会过几周。

查看是否可以使用glibc> = 2.17的更新的Linux版本

尝试类似重新链接预加载(例如,请参阅如何使用额外的目标文件重新链接现有的共享库 )

LD_PRELOAD=/usr/lib32/librt.so /path/to/squeak

我们希望尽快解决这个问题。 也许你想打开一个问题在https://github.com/OpenSmalltalk/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐