/usr/bin/x86_64-w64-mingw32-ld: 找不到 -ldl
问题由来:拷贝在ubuntu 下提示/usr/bin/x86_64-w64-mingw32-ld: 找不到 -ldl
(1)原因:
因为在ubuntu 下缺少libdl.a库
root@blj-virtual-machine:/usr/simul/123/sourcecode# make -s /usr/bin/x86_64-w64-mingw32-ld: 找不到 -ldl collect2: error: ld returned 1 exit status make[1]: *** [/usr/simul/123/sourcecode/common.mk:85:/usr/simul/123/sourcecode/lib/libinstruction.dll] 错误 1 /usr/bin/x86_64-w64-mingw32-ld: 找不到 -ldl /usr/bin/x86_64-w64-mingw32-ld: 找不到 -linstruction ————因为这个库依赖于ldl库所以现需要解决ldl问题 collect2: error: ld returned 1 exit status make[1]: *** [/usr/simul/123/sourcecode/common.mk:81:/usr/simul/123/sourcecode/TS30] 错误 1 make: *** [makefile:12:all] 错误 2 root@blj-virtual-machine:/usr/simul/123/sourcecode#
解决方案
将windows下的库拷贝至依赖库
例如自己源码或者ubuntu中安装的mingw32库文件中
后续更改完成后依然提示
/usr/bin/x86_64-w64-mingw32-ld: 找不到 -linstruction
根本原因使用了多线程编译,编译顺序导致无法找到对应的库,删除-j4也没有从本质上解决该问题
all: @for dir in $(BUILD_DIR); \ do \ make -j4 -C $$dir; \ done clean: