У меня есть одна двоичная и одна общая библиотека.
Общая библиотека скомпилирована с:
all:
g++ -g -shared -fpic $(SOURCES) -o libmisc.so
двоичный файл скомпилирован с:
LIBS=-L../../misc/src
LDFLAGS=-lmisc
all:
g++ -g -o mainx $(INCLUDE) $(SOURCE) $(LIBS) $(LDFLAGS)
Я установил ~/.bashrc
export LD_LIBRARY_PATH=/mnt/sda5/Programming/misc/src/
к выходному пути libmisc.so
.
Отладка с консоли работает нормально:
gdb mainx
Однако из Emacs22 запуск gdb завершается неудачно со следующим сообщением:
Запуск программы: / mnt / sda5 / Programming / main / src / mainx
/ mnt / sda5 / Programming / main / src / mainx: ошибка при загрузке общих библиотек: libmisc.so: невозможно открыть общий объектный файл: такого файла или каталога нет
Это выглядит очень сложно на данный момент, и я не мог решить это. Я не уверен, является ли это проблемой emacs, или я должен передать параметр в командной строке GDB.