在Eclipse-CDT中使用*relative*路径引用第三方库

Ale*_*ack 7 c++ eclipse-cdt

在Eclipse-CDT中使用相对路径引用第三方C++组件(例如包含库)的最佳实践是什么?

  • 我试图引用Boost和Google protobuf.
  • 我把它们放在我工作区的一个文件夹中,例如/ home/user/workspace/boost_1_39_9
  • 我在项目属性的构建设置下添加了对该文件夹的引用,但是eclipse不允许我将该路径指定为相对于工作区文件夹,我必须使用文件系统选择它并指定绝对路径

谢谢,

  • 亚历克斯

Jam*_*urn 6

Eclipse变量(例如$ {workspace_loc}和$ {project_loc})仅适用于实际位于运行时Eclipse工作空间的事物.当你说你把它们放在文件系统的工作区下时,你是否真的将文件导入Eclipse(使用新的Project;或者在现有项目中创建链接文件夹)?

如果文件存在于文件系统中而不存在于Eclipse本身中,那么Eclipse将只能使用绝对路径访问它们.

顺便说一下,CDT有自己的变量:$ {WorkspaceDirPath} $ {ProjDirPath} $ {ProjName},它扩展到特定的文件系统位置.


Ray*_*yOK 1

我不确定 CDT 构建设置的路径(不在我的计算机上),但您不能使用工作区变量吗?类似:${workspace_loc}/boost_1_39_9

编辑:好的,我做了一些搜索并找到了有关这些变量的一些信息,在这里。我认为你想要的是: ${project_loc:/boost_1_39_0} ?