close

每次要整合一個新的 library, 總會遇到一些奇奇怪怪的問題

 

這次的問題是,

我要把 libb.so 加進我們的系統,

讓 xxx.exe 可以 link 到 libb.so.

 

編譯 libb.so 需要先 link liba.so, 這一關已經過了.

隨後編譯 xxx.exe, 在最終的 linking 過程中, 發現 libb.so 竟然找不到 liba.so.

 

解法:

一開始編譯 libb.so 時,

LDFLAGS 加上:

-rpath-link, PATH_TO_liba.so/

隨後編譯 xxx.exe 就沒問題了

 

Reference:

1. http://stackoverflow.com/questions/24598047/why-does-ld-need-rpath-link-when-linking-an-executable-against-a-so-that-needs

2. http://sysprogs.com/w/fixing-rpath-link-issues-with-cross-compilers/

 

 

 

 

 

 

 

 

 

 

 

 

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 kk 的頭像
    kk

    kk

    kk 發表在 痞客邦 留言(0) 人氣()