Eclipse CDT中的项目依赖项
Project dependency in Eclipse CDT
这是我第一次使用eclipse。我是一个经验丰富的VisualStudio用户,所以我试图在eclipse中找到类似的功能。我有两个项目,A和b。项目A吐出libA。A当它完成编译时。项目B与lib链接。这是我的问题。
- 我先编译项目A,然后再编译项目B,一切正常。
- 我对项目a进行了代码更改,需要构建项目a。
- 我尝试构建项目B,但它声明没有检测到任何更改。
我如何让项目B知道项目A的输出??目前,我不得不做一个干净的构建项目B为它重新链接到libA.a.
谢谢。编辑:在我的project ->Path and Symbols->References选项卡中,我选中了project A。项目A重建后,此链接不会重新链接。
尝试以下设置:
- 转到Main Project →C/c++通用 →路径与符号 →引用
- 勾选所有依赖项。
进入项目B的项目属性,选择项目引用,并使其引用(依赖)项目a
编辑,似乎是一个已知的错误
可以通过使用touch
命令来解决这个问题。
在Eclipse中,作为C/c++ Build/Settings的一部分是"Build Steps"选项卡。在预构建步骤命令行中,输入touch filename
。
filename
是应用程序中的任何文件。这可能是main()
的文件。这可能是一个特殊的文件,touchdummy.c
,它可以是一个很小的文件,编译速度很快。
当构建应用程序时,即使您没有更改任何源,touch
命令也会导致make重新构建应用程序。如果重新构建了库,则使用新库重新构建应用程序。
可以在这里阅读touch
如何影响文件的日期/时间。http://pubs.opengroup.org/onlinepubs/9699919799/utilities/touch.html
编辑:在Eclipse中确切的命令应该是touch ${ProjDirPath}/src/main.c
Edit:这个命令应该可以工作,但是如果'main'项目没有改变,预构建步骤就不会执行。touch
命令还会使eclipse提示重新加载它所接触的文件。
Eclipse项目通过项目属性(依赖项目?)中的复选框相互依赖,这是Eclipse决定构建哪个项目的方式。您可以自己设置,但通常在更改Java构建路径时设置。
默认情况下,至少在QNX c++项目中,它不会检查其他项目中的更改。右键单击项目,展开"check dependencies on/off"->"check user header only"这似乎有效,大致上……它似乎做了一个make依赖于代码,并添加了*。D文件到输出文件夹,这些文件只是列出头文件的依赖文件。注意:这些似乎不能再生,并且过时了-我不知道如何再生它们。
项目(库):
Properties>C/c++ Build>Settings>Build Steps>Post-build Steps> touch -m ${ProjDirPath}/source/Build/build_updated.cpp
你应该创建文件夹"source/build"首先,不要在该文件夹中添加任何其他文件。
项目B:
Properties>Project References> check Project A
Properties>С/С++通用>路径和符号>源位置>链接文件夹>链接到文件系统中的文件夹>查找并选择" Source/build"
- VS 2015 链接错误 无法构建依赖于 libcurl 的项目
- 如何将外部依赖引入跨平台CMake项目?
- 如何使用所有依赖项部署C++项目?
- 在现代 CMake 项目中存档静态依赖项
- 如何在bazel中同时处理外部依赖项和我的项目
- 如何在github中组织依赖C++的项目
- CMake-ing 项目与谷神星求解器时的特征依赖关系冲突
- 如何为在 x86 主机上为 arm 目标交叉编译的项目安装依赖项
- 项目 A 依赖共享库 B,B 依赖 C,A 不依赖 C。当我使用 B 的 API 时,警告 B 找不到 C
- CLion 导入具有依赖项的现有 cmake 项目
- Cmake生成了VS项目的循环依赖关系,但没有制作文件.如何避免
- 在 NDK 上编译两个带有 gradle 的项目,其中一个依赖于另一个的二进制文件
- 如何删除依赖项目中相同依赖项源的重复项
- VS 2012不生成依赖项目
- Visual Studio/C++:基于启动调试模式生成的非依赖项目的生成
- 如何在Visual Studio中将项目依赖项/引用从一个项目继承到依赖项目
- eclipse CDT:重新构建依赖项目
- 部分c++模板专门化的依赖项目
- 为什么启动项目而不执行依赖项目
- 在Netbeans中没有链接的依赖c++项目二进制文件