2009-12-15 53 views
2

我有一个Eclipse C项目,这将都是指一个公共代码共享库(.C的混合和.h文件在同一文件夹)资源文件夹但是将按每个项目的不同编码。在Eclipse CDT共享是构建不同的项目

的公共代码库可以从每个项目中进行编辑,但这些编辑将修复到的所有项目来进行。除了通过定义构建选项之外,通用代码对于每个项目都不会有分歧。

如果我创建这个图书馆的一个项目就意味着库的构建与是不是我所需要的。我需要生成的目标文件落在他们正在构建的项目中。所以一个c/C++项目没有意义。

共用代码将被检查到一个颠覆回购(如将每个项目)。我可以使用“新建文件夹 - >链接的资源”,但我更愿意保持独立的目录结构开发碰巧使用的项目。

有没有干净的方式做到这一点?

谢谢。

+0

所以,你有3个目录。项目1(CDT项目) 项目2(CDT项目) 为什么你不能在Project1和Project2内部链接CommonCode源码? – fabrizioM 2009-12-15 13:42:19

+0

你的意思是:#include“../myinc.h”? – JeffV 2009-12-15 14:47:11

回答

3

我不确定这将适用于您的Eclipse版本或CDT(我用Java测试过),但似乎您应该创建第二个源文件夹。由于源文件夹通常是私有的它存在于这个项目,你必须创建一个链接文件夹...(从你的描述上面我想也许你已经这样做了,但对于答案的完整性我包括以下步骤)。

我就是这么做的:

  1. 在项目中创建一个新项目
  2. 选择文件夹(不是源文件夹,但一个简单的文件夹)
  3. 在创建文件夹对话框中单击“高级>>”按钮,选中‘链接到文件系统’复选框
  4. 点击‘浏览’文件夹并选择的共源文件的文件夹
  5. 单击Finish

你现在有一个简单的文件夹,但为了在您的编译文件夹中的文件(至少在Java中是这样工作的),你需要创建一个源文件夹:

  1. 创建在您的项目新项目
  2. 选择“Source文件夹”
  3. 单击“浏览”旁边的“文件夹名称”文本框中
  4. 选择新创建的链接文件夹

现在,在我的Eclipse版本和Java中,该文件夹包含在代码的编译中。它希望在CDT中以相同的方式工作...

如果您运行带有真正符号链接(Linux,OSX?)的操作系统,也可以在项目中使用符号链接的文件夹作为额外的源文件夹,然后您应该只需执行上面的“源文件夹”创建步骤即可。

如果您的Eclipse版本在源文件夹创建对话框中没有“浏览”按钮,请尝试在文本框中输入相同的名称。

问候,

/E

+0

P.s. AFAIK可以对文件夹执行第二组步骤,而不管它来自哪里,但是为了在编译中包含该文件夹,需要执行第二组步骤。 D.S。 – Erik 2009-12-27 09:29:18