我正在使用ARM Cortex M3,我需要在其上移植Python(没有操作系统).什么是我最好的方法?我只需要核心Python和基本I/O.
在Linux中,我有一个使用pthreads的共享库,而没有使用的是main.c.
libpthread.so显示在我的共享库的ldd中,这是正确的.
$ ldd libmapreduce.so.1.0
linux-gate.so.1 => (0x0067d000)
libpthread.so.0 => /lib/libpthread.so.0 (0x0058c000)
[...]
Run Code Online (Sandbox Code Playgroud)
但是当我编译并链接我的main.c,它不使用pthreads到我的共享库时,我看到:
$ icc -Wall -o main main.c -lmapreduce
/opt/intel/Compiler/11.1/046/lib/ia32/libiomp5.so: undefined reference to `pthread_atfork'
Run Code Online (Sandbox Code Playgroud)
将-lpthread添加到我的编译命令,即
$ icc -Wall -o main main.c -lmapreduce -lpthread
Run Code Online (Sandbox Code Playgroud)
解析未定义的引用.
当我的main.c不使用它并且我的共享库已经链接了libpthread时,为什么我需要显式链接到libpthread?