最近在Solaris
上编译一款开源软件,在最后链接阶段出了问题,导致ld
程序core dump
。由于没有ld
程序源代码,导致完全没思路,没办法,只好在stackoverflow
上求教:http://stackoverflow.com/questions/26009192/why-the-ld-crash-in-building-libgd。从回复中我才知道可以通过设置LD_OPTIONS
环境变量,来了解整个链接过程。举个例子:
LD_OPTIONS=-Dfiles,detail
指定files
会输出ld
当前处理的文件,detail
会提供更多的信息。
可以用“ld -Dhelp
”命令打印每个选项的详细帮助信息。
如果想详细了解Solaris
下程序的链接过程,可以参考这篇文档:Linker and Libraries Guide。