这个行吗?hex编辑了一个文件并将inet_aton更改为inet_pton

2024-10-01 09:27:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将python脚本移植到旧的solaris10计算机。我从sunfreeware下载并安装了所有必需的软件包。它在导入行(import-CGIHTTPServer)中崩溃,并显示以下错误消息:

ImportError: ld.so.1: python: fatal: relocation error: file /usr/local/lib/python2.6/lib-dynload/_socket.so: symbol inet_aton: referenced symbol not found

我试图用libresolve重新编译,但我不想这样做,所以我复制了该文件_插座.so到我的linux机器上,用ghex2编辑。我用inet_pton替换了inet_aton,因为我读到solaris使用inet_pton。{我也读过。在

我把文件抄回来了_插座.so到原始目录,备份旧目录并替换为已修补的目录。它正在运行,目前看起来还不错。在

你认为python套接字模块将来会崩溃吗?在

inet_atoninet_pton返回的结构是否兼容?在


Tags: 文件import目录脚本solib计算机symbol
2条回答

您认为python套接字模块将来会崩溃吗?

是的。inet aton和inet\u pton使用的参数数量和类型不同。第一次调用此php函数时,您的代码可能会中断或至少出现故障。如果您(或您使用的库)从不调用它,您可能是安全的。在

否;inet_aton和{}不兼容。看看原型:

int inet_aton(const char *, struct in_addr *);
int inet_pton(int, const char *, void *);

完全不同。试图用一个换另一个只会导致痛苦和痛苦(很可能是崩溃)。如果您已经这样做了,并且它似乎正在工作,可能是因为使用inet_aton的代码没有被调用。在

相关问题 更多 >