我正在使用Eclipse CDT.我已经配置了"外部构建器",我自动生成Makefile.不幸的是,生成的Makefile包含绝对包含路径.我想在其他系统上使用生成的Makefile(没有安装Eclipse) - 有没有办法让Eclipse使用相对路径进入Makefile?
我已使用$ {workspace_log}在设置 - >工具设置 - > GCC C编译器 - >包含路径下配置了我的项目包含目录.
我有几个项目都依赖于基础库.现在当我在这个基本库中更改头文件时,我必须重建所有依赖项目.目前Eclipse/CDT构建了一个又一个项目.如何并行构建所有这些项目?
请注意,我已经为每个项目使用-j(并行编译)选项.但这还不够,因为:
我是否可以使用Eclipse来批量重新格式化一堆C++文件(大约几千个),而不必实际打开IDE中的每一个?
更新:
现在一对夫妇的人都发布了Java IDE的解决方案,但是这并没有一些对C++ IDE工作,因为没有"源"子菜单中的项目资源管理器.:(
因为我不习惯Eclipse,所以我的项目的子文件夹是"源"和"普通"文件夹.这不是什么大问题,因为那些是Makefile项目,但让我的文件夹没有按字母顺序排列(首先显示源文件夹)让我感到困扰.
我想将我的"普通"文件夹转换为"源"文件夹但我在所述文件夹上的右键菜单中找不到任何相关内容,也没有在"属性"窗口中找到相关内容.
有没有办法转换不涉及.cproject手动编辑文件的文件夹类型?如果没有,我可以只编辑sourceEntries标签(它似乎到目前为止工作)?
我正在使用CDT 8.0.2.
我刚刚开始使用Eclipse Indigo(来自Galileo),并且每次使用size_t时,我都会在排水沟中得到小红虫.

代码编译没有问题,但我怀疑我必须显式添加包含目录的路径.我已经有了通常的嫌疑人.我正在使用Gnu工具链对ColdFire处理器进行交叉编译,所以除了标准包括我在m68k-elf下包含的芯片的mfg
\include
\include\c++\4.2.1
\include\c++\4.2.1\include
\include\c++\4.2.1\m68k-elf
Run Code Online (Sandbox Code Playgroud)
我注意到这个工具链唯一存在的stddef.h位于lib目录中
gcc-m68k\lib\gcc\m68k-elf\4.2.1\include
Run Code Online (Sandbox Code Playgroud)
我添加了路径,父路径和父路径,\include-fixed但问题仍然存在.
当测试哪些有效,哪些无效时,我注意到了一些事情
Symbol is not resolved不会使错误消失.Syntax and Semantic Errors,触发分析,返回并重新打开然后关闭Symbol is not resolved可防止错误再次出现.我试图在Eclipse中测试一个C++ 11线程的例子.但是在运行程序时我收到了这条消息:
在抛出'std :: system_error'的实例后调用终止what():不允许操作'
我的系统:ubuntu + gcc 4.7
程序:
#include <iostream>
#include <thread>
void worker()
{
std::cout << "hello from worker" << std::endl;
}
int main(int argc, char **argv)
{
std::thread t(worker);
t.join();
}
Run Code Online (Sandbox Code Playgroud)
......是的,我把-std=c++11和-pthread里面C/C++ Build -> Settings -> Tool Settings -> Cross G++ Compiler -> Miscellaneous -> Other Flags.
任何意见?
我知道您可以使用此处描述的GXX_EXPERIMENTAL hack启用正确的语法突出显示: Eclipse CDT索引器不知道C++ 11容器
但我认为,在使用cmake生成项目时,根本不需要触摸项目设置.
所以.有更简单的解决方案吗?
我的Eclipse中的拼写检查器今天顽皮地建议亵渎(cfr.image).

我该怎样才能防止它变得粗鲁?
我有一个makefile项目,包含许多源,头和其他文件,我试图将其转换为Eclipse"本机"项目.Indexer报告对目录中存在但从构建中排除的文件的错误和警告的问题.因此,我的目录树的大部分都标有红色x标记.
如何使Indexer忽略特定的文件和/或目录?
注意:将目录定义为"派生"时,将其排除在进一步搜索之外,但遗憾的是,不会从代码分析中排除.使用项目资源过滤器也无法解决问题.
我正在尝试使用 cmake 和 eclipse 将 FreeRtos 添加到我的项目中,但出现错误。我运行的是 debian 10,我的 cmake 版本是 3.13.4。cmake 的文件可以在此 git repo中找到。当我运行以下命令时:
frank@debian:~/temp2/build$ cmake ../../temp2/AM335X-FreeRTOS-lwip/ -G"Eclipse CDT4 - Unix Makefiles"
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
CMake Error at ProjectIncludes.cmake:46 (add_library):
No SOURCES given to target: lib_third_party_ti_platform_beaglebone
Call Stack (most recent call first):
CMakeLists.txt:33 (include)
CMake Error at ProjectIncludes.cmake:30 (add_library):
No SOURCES given to target: lib_third_party_ti_utils
Call Stack (most recent call first):
CMakeLists.txt:33 (include)
CMake Error at ProjectIncludes.cmake:38 (add_library):
No SOURCES given to target: lib_third_party_ti_mmcsdlib
Call Stack (most recent call …Run Code Online (Sandbox Code Playgroud)