不知道放在这个节点合适不合适
是这样的, liba.so 是一个 c++写的库,我没有源码
在之前运行的时候发现机器上没有 libstdc++.so
于是从 Debian 官网下了一个 deb 包,解开来放到 /usr/lib 里面了
之后用 Python 调用的时候出现这样的情况
root@vultr:~# objdump -f liba.so
liba.so: file format elf32-i386
architecture: i386, flags 0x00000150:
HAS_SYMS, DYNAMIC, D_PAGED
start address 0x00000000
root@vultr:~# uname -a
Linux vultr.guest 4.10.0-041000-generic #201702191831 SMP Sun Feb 19 23:44:17 UTC 2017 i686 GNU/Linux
root@vultr:~# python3
Python 3.4.2 (default, Oct 8 2014, 13:14:40)
[GCC 4.9.1] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from ctypes import *
>>> a = CDLL('./liba.so')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python3.4/ctypes/__init__.py", line 351, in __init__
self._handle = _dlopen(self._name, mode)
OSError: /usr/lib/i386-linux-gnu/libc.so: invalid ELF header
完全不知道是什么情况,感觉是库的锅,搜索“ libc.so: invalid ELF header ”也没找到解决方法,求解
1
pagxir 2017-04-20 22:36:33 +08:00
先搞清楚机器 arch 再说。这么瞎弄,搞不出结果的。
|
2
xbb7766 2017-04-20 22:38:18 +08:00
是不是一个 i386 一个 i686 的关系?
我记得 debian 的 32bit 内核也分好几个版本。 |