
自己挂载下iso镜像,去isolinux 目录下看看有没有这个文件 比如ubuntu-desktop 就有
需要这个动态库libstdc++.so,因为没有找到。当然也可以加参数帮助编译器找-rpath或者-rpath-link。还是多学习一下编译器的链接的原理。推荐看看bison源代码分析,以便写的代码一次性通过。不至于出现这样那样的错误。可以这样理解.当和静态库一起编译后,可执行程序将会比较大,且用ldd查看的时候,结果为“not a dynamic executable ”.
当和动态库一起编译后, 可执行程序比较小, 用ldd查看的时候, 显示可执行程序依赖很多库, 比如
$ ldd a.out
linux-vdso.so.1 => (0x00007fff964bf000)
libm.so.6 =>/lib/x86_64-linux-gnu/libm.so.6 (0x00007f87f0695000)
libpthread.so.0 =>/lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f87f0478000)
libdl.so.2 =>/lib/x86_64-linux-gnu/libdl.so.2 (0x00007f87f0274000)
libc.so.6 =>/lib/x86_64-linux-gnu/libc.so.6 (0x00007f87efeed000)
libgcc_s.so.1 =>/lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f87efcd6000)
/lib64/ld-linux-x86-64.so.2 (0x00007f87f0936000)
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)