2018年4月12日のブックマーク (1件)

  • makeするとライブラリが入っているのに /usr/lib/ld: cannot find と怒られる問題

    make中に、こんなエラーが出ることがあります。 /usr/lib/ld: cannot find -lfoo こんな風にlibfooというライブラリが見つからないと言ってきます。 そこで、ほんとに入っていないのか調べてみます。 $ ldconfig -p | grep libfoo これで、当にそのライブラリが入っていなかった場合は、インストールしてください。ただ、ライブラリが入っているのに上記のように怒られてしまうことが結構あります。 原因として、シンボリックリンクがきちんと張られていないというパターンが多いです。たとえば、libfoo.soというライブラリが2度バージョンアップして、libfoo.so.6とlibfoo.so.6.2があるとします。ふつうは互換性のため、 libfoo.so -> libfoo.so.6.2 libfoo.so.6 -> libfoo.so.6.2

    makeするとライブラリが入っているのに /usr/lib/ld: cannot find と怒られる問題
    M1spark20Beta
    M1spark20Beta 2018/04/12
    ライブラリがないとmakeで怒られた時のメモ