gcc手册页说,“当您使用相同类型的多个选项时,顺序确实很重要;例如,如果多次指定-L
,则按指定的顺序搜索目录。 “
但是,这些-L
目录是否在系统目录之前搜索过(例如,ld
通常使用的目录)?
我的情况是我有两个同名的库,一个在系统位置,另一个在我的工作目录中,我想使用我的,但无法弄清楚如何验证我的版本正在被使用。< / p>
答案 0 :(得分:1)
尝试“ldd / bin / your / application”。 E.g:
ldd `which bash`
linux-vdso.so.1 => (0x00007fff46eda000)
libncurses.so.5 => /lib/libncurses.so.5 (0x00007facdd618000)
libdl.so.2 => /lib/libdl.so.2 (0x00007facdd414000)
libc.so.6 => /lib/libc.so.6 (0x00007facdd090000)
/lib64/ld-linux-x86-64.so.2 (0x00007facdd863000)
一般来说,有三个选项可以指定哪个库用于二进制文件: