0

我在 KDevelop 的一个 c++ 项目中链接到一个外部库。在 CMakeLists.txt 中,我有以下内容:

include_directories($ENV{INCLUDE_PATH})
link_directories($ENV{LD_LIBRARY_PATH})

当我在 KDevelop 中按编译时,它抱怨它找不到外部头文件和库。如果我将上面更改为

include_directories("/home/username/path/to/.h/files")
link_directories("/home/username/path/to/.so/files")

该项目编译没有错误。或者,如果我打开 gnome-terminal,导航到项目目录并输入

cmake .
make

一切都正确编译。因此,我认为问题在于 cmake 在 KDevelop 调用时不知道环境变量 INCLUDE_PATH 和 LD_LIBRARY_PATH。我已经在我的 .bashrc 文件中定义了这些变量。这是在 Ubuntu(标准 gnome 版本)中运行 KDevelop 的问题吗?我可以配置 KDevelop 以识别在 .bashrc 中发送的环境变量吗?

4

1 回答 1

1

bashrc 文件是通过交互式 shell 读入的。您可能希望将环境变量实际移动到始终读入的 .profile 文件中。完成更改后,注销并重新登录(您甚至可能不得不在某些 linux 中重新启动X11 环境)。

于 2012-03-24T22:41:34.410 回答