标签: eclipse-cdt

为什么Eclipse CDT会说:'语法错误',但编译没问题

我正在使用现有的C代码,它有几行语句类似于这一行:

struct collect_conn *tc = (struct collect_conn *) 
     ((char *)c - offsetof(struct collect_conn, runicast_conn));
Run Code Online (Sandbox Code Playgroud)

struct collect_conn沿着以下行:

struct collect_conn {
  struct runicast_conn runicast_conn;
  struct announcement announcement;
  const struct collect_callbacks *cb;
  struct ctimer t;
  uint16_t rtmetric;
  uint8_t forwarding;
  uint8_t seqno;
};
Run Code Online (Sandbox Code Playgroud)

我正在使用Eclipse CDT,它将带有橙色波浪线的行标记为"语法错误".我认为它是由CDT索引者标记的.但是,编译(在终端中手动)是没有问题的.

然而,这有点不方便,因为线上的元素没有被索引(因此调用层次结构树并不总是正确的,或者元素的突出显示等)

为什么Ecipse不喜欢这条线?

c indexing eclipse-cdt

14
推荐指数
4
解决办法
4万
查看次数

Eclipse CDT"路径和符号"对话框中的"导出"按钮?

在Eclipse CDT的Project Properties对话框的Paths and Symbols部分的Includes选项卡上,有一个"Export"按钮:

路径和符号对话框 我发现的最好的文档说这"切换了选择的包含路径是否被导出." 如果单击它,它将更改为"Unexport",并且"[exp]"将附加到选定的包含路径.

这到底是做什么的?"导出包含路径?"是什么意思?

eclipse eclipse-cdt

14
推荐指数
1
解决办法
6084
查看次数

如何在"构建项目"的Eclipse CDT中构建当前项目?

我正在使用Eclipse CDT,我只想构建当前项目,而不是任何引用的项目.这有点可能吗?

这背后的想法是,我想区分"构建项目"和"构建所有项目"(在这种情况下,也应该构建引用的库).

马丁,提前谢谢

eclipse-cdt

14
推荐指数
3
解决办法
6604
查看次数

如何让eclipse cdt显示运行时错误(例如分段错误)

我在Linux上的Eclipse CDT中开发和运行C++程序.

问题是Eclipse CDT在控制台中没有显示任何运行时错误消息(例如分段错误),而在使用命令行直接运行程序时我可能会收到此类错误消息.

c++ eclipse eclipse-cdt

14
推荐指数
1
解决办法
4197
查看次数

更改Eclipse CDT项目的输出目录

我找不到更改构建文件输出的可能性.我发现唯一停用整个生成的makefile进程,我不想这样做.

c++ makefile eclipse-cdt

14
推荐指数
1
解决办法
8408
查看次数

停止eclipse CDT从main调试

因此,如果我使用eclipse CDT调试我的C++代码,它似乎总是从main()函数启动调试过程,即使在main()开头没有断点...

有没有办法让eclipse CDT从第一个断点而不是main()开始调试?

c++ eclipse debugging program-entry-point eclipse-cdt

14
推荐指数
1
解决办法
3582
查看次数

使用Windows和MinGW在Eclipse中编写的C++程序无法显示输出到控制台视图

我正在使用Windows 7 64位.

我安装了eclipse版本3.6.2,cdt和MinGW.我在Eclipse中有一个C++控制台程序,如下所示:

#include <iostream>
#include <cstdio>
using namespace std;

int main() {
    setbuf(stdout, NULL);

    for (int i = 0; i < 10000000; i++) {
        cout << "!!!Hello World!!!" << endl; // prints !!!Hello World!!!
    }
    int val;
    cin >> val;

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

如果我运行此控制台程序,它应显示Hello world在Eclipse中的Console View,但不显示任何内容.

如果我转到调试文件夹并运行exe,它会打印到控制台.

如果我犯了一些语法错误,那么Eclipse Console View将显示一些内容,例如:

**** Internal Builder is used for build ****
g++ -O0 -g3 -Wall -c -fmessage-length=0 -osrc\hh.o ..\src\hh.cpp
..\src\hh.cpp: In function 'int main()':
..\src\hh.cpp:17:3: error: expected ';' before …
Run Code Online (Sandbox Code Playgroud)

c++ eclipse console eclipse-cdt

14
推荐指数
3
解决办法
2万
查看次数

Eclipse CDT找不到Cygwin或MinGW工具链

我很难将Eclipse Juno配置为C/C++.我是一个Windows用户,所以我已经安装CygwinMinGW,以及CDTEclipse的下.也PATH正确配置了变量,尽管我在Eclipse C/C++新项目中仍然没有任何新的工具链.

这些是我的Eclipse详细信息:

Eclipse Java EE IDE for Web Developers.

Version: Juno Release
Build id: 20120614-1722
Run Code Online (Sandbox Code Playgroud)

另外,请参阅Eclipse的已安装组件的图像. Eclipse中安装的组件 从Windows命令行附上一些outout:

C:\>echo %path%
C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x8
6)\Common Files\Microsoft Shared\Windows Live;C:\Windows\system32;C:\Windows;C:\
Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Fil
es (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files\MiKTeX 2.9\miktex
\bin\x64\;C:\Program Files\MATLAB\R2011b\runtime\win64;C:\Program Files\MATLAB\R
2011b\bin;C:\Program Files (x86)\Windows Live\Shared;C:\Program Files\Java\jdk\b
in;C:\Program Files (x86)\Java\jre\bin;C:\Program Files (x86)\Android\android-sd
k\platform-tools;C:\Program Files (x86)\Android\android-sdk\tools;C:\Program Fil
es\Python32;C:\Program Files (x86)\Notepad++;C:\tomcat\bin;C:\Users\Administrato
r\AppData\Roaming\npm;C:\Program Files (x86)\Gnu\GnuWin32\bin;C:\Program Files\n
odejs;C:\Users\Administrator\AppData\Roaming\npm;C:\MinGW\bin;C:\MSYS\bin;C:\cyg
win\bin

C:\>gdb --version
GNU gdb (GDB) 7.4
Copyright …
Run Code Online (Sandbox Code Playgroud)

eclipse cygwin mingw eclipse-cdt toolchain

14
推荐指数
2
解决办法
3万
查看次数

使用Eclipse CDT/RSE/RDT远程调试C++应用程序

我正在与Eclipse(在Windows中)进行斗争,以使其连接到我的Linux机箱并远程编译和调试C++代码.

我的工作:

  • 安装CDT/RSE/RDT(Eclipse Juno,CDT 8.1.2,PTP(RDT)6.0.4,RSE 3.4)
  • rdt-server在Linux机器上运行(perl ./daemon.pl 4075)
  • 创建本地C++项目(基于Makefile)
  • 编译和调试本地C++项目
  • 创建远程项目(使用与rdt-server的"Linux"连接)
  • 编译远程项目(基于Makefile)

我可以做的一些手动的事情(没有Eclipse):

  • "远程"调试我编译的项目: ssh mybox 'cd /path/to/project; gdb main'
  • 启动一个gdbserver: ssh mybox 'cd /path/to/project; gdbserver fqdn:10000 main'

什么不起作用:在Eclipse中调试

  • 通过"C++应用程序"调试错误:未指定程序(因为我没有本地代码)
  • 通过"C++远程"调试错误:未指定程序(我需要本地代码吗?)
  • 通过"C++ attach"调试(调试器:"gdbserver")
    • 在linuxbox上运行的gdbserver
    • gdb无法与gdbserver交谈(cygwin gdb 7.5,linux gdb/gdbserver 7.3); 警告:架构拒绝了目标提供的描述.
  • 通过"C++ attach"调试(调试器:"gdb")将尝试附加到我的Windows进程.

其他可能导致问题的事情:

  • 我正在使用sshMSYS/Git提供的二进制文件(不是PATH)
  • Cygwin没有开启 PATH

我真的想在Eclipse中为我的C++项目进行远程调试.您有什么建议从这里开始吗?

c++ eclipse gdb remote-debugging eclipse-cdt

14
推荐指数
1
解决办法
1万
查看次数

CDT悬停展示文档

在JDT中,如果我们悬停任何对象,比如函数,类,变量等,eclipse会在工具提示中显示文档.当代码辅助窗口显示可能性时,也会显示该文档.

但是,CDT不能像这样工作.默认情况下,它显示悬停对象的代码.有一个设置Window -> Preferences -> C/C++ -> Editor -> Hovers,选择Documentation显示,但不幸的是它没有显示任何内容.还有一个名为libhover的项目,但它似乎不适用于代码内的doxygen注释.

有没有解决方案来模仿CDT中的JDT悬停行为?

eclipse eclipse-cdt

14
推荐指数
1
解决办法
2149
查看次数