私はバイナリと共有ライブラリを1つ持っています。 共有ライブラリでコンパイルされる:gdbは "共有オブジェクトファイルを開くことができません"と言います
all:
g++ -g -shared -fpic $(SOURCES) -o libmisc.so
バイナリがコンパイルされている:
LIBS=-L../../misc/src
LDFLAGS=-lmisc
all:
g++ -g -o mainx $(INCLUDE) $(SOURCE) $(LIBS) $(LDFLAGS)
Iはlibmisc.so
出力経路に~/.bashrc
export LD_LIBRARY_PATH=/mnt/sda5/Programming/misc/src/
に設定しました。コンソールから
デバッグが正常に動作します:
gdb mainx
しかしEmacs22から、GDBが次のメッセージで失敗し起動する:を/ mnt/SDA5 /プログラミング/メイン/ SRC/mainx:プログラムの開始
/mnt/sda5/Programming/main/src/mainx:共有ライブラリの読み込み中にエラーが発生しました:libmisc.so:共有オブジェクトファイルを開くことができません:
これは現時点では非常に扱いにくく、解決できませんでした。これがemacsの問題であるかどうか、あるいはgdbのコマンドラインでパラメータを渡すべきかどうかはわかりません。
ありがとうございます。 非常にうまくいった。 私は早急に答えを探すためにキーワードを使ってgdbマニュアルを検索しましたが、失敗しました。あなたは私の一日を保存しました:) 最近、gdbのマニュアルを読んでいます。 vmihai。 – grayasm