我在Ubuntu Linux(12.04 LTS)上使用Qt 5.2.1(来自QtCreator 3.0.x),我正在尝试自定义构建过程...我的目标是让一个构建目录与源目录不同(另外我想指定临时文件中的不同目录)...
所以在故事的最后,我想要一个包含可执行文件和所有共享库的构建目录(所以我将可执行文件rpath
设置为包含它自己的目录)并且我想调试我的应用程序从那个文件夹......
这是我的.pro
文件:
# Configure target directory
DESTDIR = $$PWD/build/bin
# Configure working (obj) directory
OBJECTS_DIR=$$PWD/build/obj
# Configure working (moc) directory
MOC_DIR=$$PWD/build/moc
# Let the linker to search for libraries in build path
# and set the executable search path for including its own folder
DOLLAR = $
QMAKE_LFLAGS += -L $$DESTDIR -Wl,-rpath,$${DOLLAR}$${DOLLAR}ORIGIN
一切都很好:编译完全按照我想要的方式执行... 但是我在这个阶段遇到了QtCreator调试器(GDB)的问题......
当我尝试开始调试时,QtCreator说:
无法加载libRtCore.so.1的共享库符号。你需要 “set solib-search-path”或“set sysroot”?
(请考虑libRtCore.so.1
是我的可执行文件所依赖的共享库,当然,它在构建目录中可用)...如何设置调试器以便为libRtCore加载符号。 so.1?有什么想法吗?
答案 0 :(得分:0)
好的,发现......问题在于我使用&#34运行应用程序;在终端中运行" ...清除相应的复选框(如下面的屏幕截图所示),调试器就像一个魅力!