1

我在一个适用于 Windows、Linux 和 VxWorks 的多平台软件上工作。该软件是用 C 和 C++ 编写的,我们使用:

  • 对于 Linux 目标和我们的主要开发环境,我们使用Eclipse 3.7.2 + CDT 插件(Ubuntu 12.04 附带的插件)。
  • 对于 VxWorks 目标,我们使用 Wind River Workbench,这是一个基于 Windows、Eclipse 3.7.1 CDT 的程序,由VxWorks 的制造商 Wind River 提供。
  • 对于 Windows 目标,我们使用 Visual Studio。

我的问题是 Linux Eclipse 和 Wind River Workbench 都会在项目的根目录中创建 .project 和 .cproject 文件。由于项目目录是跨平台共享的,因此存在冲突。

我发现的唯一解决方法如下:

/.../mysoftware/others/src ---> contains the code
/.../mysoftware/others/inc ---> contains the code
/.../mysoftware/others     ---> where the Wind River Workbench ".something" files are
/.../mysoftware/linux/src  ---> symlink to ../others/src
/.../mysoftware/linux/inc  ---> symlink to ../others/inc
/.../mysoftware/linux      ---> where the Linux Eclipse ".something" files are

这个解决方案非常丑陋,使我的 SCM (Mercurial) 的 Eclipse 插件停止工作,并且仅适用于 Linux。

如何让多个基于 Eclipse 的 IDE 使用它们自己的“.something”文件集?

4

2 回答 2

2

我建议您不要将这些文件签入 SCM,并将它们添加到 Mercurial 的忽略列表中。

您可以签入这些文件的模板版本(.project.linux.project.vxworks),每个开发人员可以.project在从 Mercurial 签出项目后手动复制到这些版本。只要它们没有太大变化,这就足够了。

于 2013-01-03T15:02:46.843 回答
0

我建议使用一个原始文件夹进行源代码控制操作,并为每个平台使用 2 个不同的文件夹。

您应该使用每个文件夹中的符号链接复制结帐文件夹结构。然后,在每个文件夹中创建所需的 CDT 项目。Eclipse 项目文件将进入该文件夹而不是原始文件夹,因此它们不会发生冲突。

于 2013-04-16T08:53:05.997 回答