2013-12-08 18 views
25

今週までgdbを正常に使用しました。 gdbを実行しています。dyld:ライブラリが読み込まれず、理由:画像が見つかりません

(gdb) r 
Starting program: /Volumes/MyProg 
dyld: Library not loaded: @rpath/libCore.so 
    Referenced from: /Volumes/MyProg 
    Reason: image not found 
(gdb) 

これを修正するにはどうすればよいですか。

私は:

  • OSX 10.9
  • GNUのGDB(GDB)MacPortsの

P.S.でインストール7.6

gdbとXcodeを再インストールしました。これは役に立たない。

私はdyldの問題について多くの質問をしていますが、明らかに私はOSX上のライブラリの経験が不足しており、私にとっては役に立たないようです。

このトピックの例:dyld issues library not loaded ライブラリをもう一度ダウンロードするにはどうすればいいですか?

またはこのトピック:Dyld: Library not loaded しかし、インストール名を調べるにはどうすればいいですか? @rpathとは何ですか?

答えて

6

  1. libCore.soROOT frameworkMyProg用途からライブラリです。
  2. 私が正しく理解していれば、メッセージLibrary not loaded: @rpath/libCore.so Referenced from: /Volumes/MyProg Reason: image not foundはリンカーがライブラリを見つけたがそれを使用できないことを意味する。
  3. ルートでは、インストール時にデフォルトでclangが使用されます。一方、私はgccを好むのでMyProgはgccを使います。私はGCCコンパイラでルートを再インストールした
  4. に./configure --with-CXX = G ++ --with-CC = gccの--with-LD = G ++私はMyProgを再コンパイルしている

これでgdbでデバッグできます。

1

あなたはここにRPATHに関する詳細な情報を見つけることができます:link

をだからあなたはあなたのlibCore.soへのパスを指定する必要があり、それがどこにあるか私は知らないので、正直なところ、私はこのライブラリに直面していません。

あなたはそれがRPATHが何であるかを理解するためにも、この答えを確認することができます:answer私はそれを固定する方法

+0

をあなたのライブラリーを追加し、私は、このリンクを見ました。しかし、Xcode開発者にとって何かを記述しているような気がします。リンクは@rpathの値を見つける方法の質問に答えません...ターゲット情報という名前のウィンドウで値を見つけることができますが、これらのウィンドウを見つける方法がわかりません..... – klm123

+0

私は持っています答えに新しいリンクが追加されました。答えを確認してください。 –

+0

...ありがとうございます。 – klm123

28

この問題は、一般プロジェクト設定の「埋め込みバイナリ」で解決しました。私はYour_Target->一般 - >組込みBinaries-を設定するプロジェクトに以下の設定を変更する

移動することで、この問題を解決した

+0

解決済み... thx !!! – Georg

+0

はい、これはカーセージで働いていました。 Carthageの指示(2015年5月23日現在)はリンクされたライブラリに追加するように指示していますが、削除して埋め込みバイナリで追加しました。それは(それ自身で)リンクされたライブラリに現れました。今すぐすべての作品。 –

9

> +ボタンをクリックして、ここで

+0

それは私のために働いた... – commando24

関連する問題