編譯thrift外篇-關於默認鏈接包
阿新 • • 發佈:2017-08-25
make roo onf oca str rift question arch lan
根據 https://stackoverflow.com/questions/9922949/how-to-print-the-ldlinker-search-path 使用
ldconfig -v 2>/dev/null | grep -v ^$‘\t‘
列出了所有的默認鏈接包路徑,使用
ll /usr/local/cuda-8.0/lib64 /usr/lib/x86_64-linux-gnu/libfakeroot /usr/local/lib /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu /usr/lib/nvidia-375 /usr/lib32/nvidia-375 /lib32 /usr/lib32 /lib /usr/lib |grep
snappy
可以看到有snappy庫。 查看leveldb時,有兩個leveldb庫,一個是apt-get安裝的,一個是自己編譯拷貝進去的,兩個不一樣大。現在想知道apt-get安裝的路徑在哪。
使用 ls -d -1 $PWD/**/* 這種方式以全路徑方式列出當前目錄下的文件,可以套用到上述路徑,發現,snappy路徑
/usr/lib/x86_64-linux-gnu/libsnappy.a
/usr/local/lib/libleveldb.a
leveldb路徑
第一個是系統安裝的。
通過fincore可知,鏈接的是/usr/local/lib/libleveldb.a ,也就是自己編譯的。
最後,在Makefile裏加上一句 LIB=/usr/lib/x86_64-linux-gnu/
以及 -L $(LIB)
竟然編譯成功了!!!!
編譯thrift外篇-關於默認鏈接包