我有一个使用的C++程序Eclipse CDT.该程序需要传递给它的参数.我该怎么做Eclipse CDT呢?
谢谢.
尝试的事情:转到安装新软件 - >选定的C/C++开发工具.我收到以下错误
Cannot complete the install because of a conflicting dependency.
Software being installed: C/C++ Development Tools 8.0.0.201106081058 (org.eclipse.cdt.feature.group 8.0.0.201106081058)
Software currently installed: Aptana Studio 3 3.0.4.201108101506-10082011150838 (com.aptana.rcp.product 3.0.4.201108101506-10082011150838)
Only one of the following can be installed at once:
Debug Core 3.7.0.v20110518 (org.eclipse.debug.core 3.7.0.v20110518)
Debug Core 3.6.0.v20100519 (org.eclipse.debug.core 3.6.0.v20100519)
Cannot satisfy dependency:
From: Aptana Studio 3 3.0.4.201108101506-10082011150838 (com.aptana.rcp.product 3.0.4.201108101506-10082011150838)
To: org.eclipse.debug.core [3.6.0.v20100519]
Cannot satisfy dependency:
From: C/C++ Development Tools Debugger UI 7.1.0.201106081058 (org.eclipse.cdt.debug.ui 7.1.0.201106081058)
To: bundle org.eclipse.debug.core [3.7.0,4.0.0)
Cannot …Run Code Online (Sandbox Code Playgroud) 我有一个我尝试用 Eclipse-CDT 编译的项目。该项目依赖于一个带有头文件和源文件的库。如何在 Eclipse 中配置项目,以便它可以从项目库中编译所需的源文件?
使用生成文件,我使用:
SRC+=lib_source.c
Run Code Online (Sandbox Code Playgroud) 我是C++和Eclipse(带CDT插件)的新手,我想将我在旧计算机上编写的小项目转移到我的新计算机上.在新机器上,我必须为项目中的每个相应文件创建一个新项目,新文件,然后将源复制并粘贴到这些文件中,或者Eclipse中是否有一个允许我一次性导入文件的设置.我一直在搜索所有的菜单项,如"导入项目"或"导入文件",但我找不到任何东西.复制和粘贴是唯一的解决方案吗?我使用的是Ubuntu 12.04.
我有一个嵌入式 C 项目,它在控制台上使用 make 构建和运行得很好,但是 Eclipse CDT 给了我错误。
在 中main.c,此函数使用宏APP_BUTTON_INIT:
static void buttons_init(void)
{
static app_button_cfg_t buttons[] =
{
{SIGNAL_ALERT_BUTTON, false, NRF_GPIO_PIN_NOPULL, button_event_handler},
{BONDMNGR_DELETE_BUTTON_PIN_NO, false, NRF_GPIO_PIN_NOPULL, NULL}
};
APP_BUTTON_INIT(buttons, sizeof(buttons) / sizeof(buttons[0]), BUTTON_DETECTION_DELAY, false);
}
Run Code Online (Sandbox Code Playgroud)
该APP_BUTTON_INIT宏定义app_button.h是这样的:
#define APP_BUTTON_INIT(BUTTONS, BUTTON_COUNT, DETECTION_DELAY, USE_SCHEDULER) \
do \
{ \
uint32_t ERR_CODE = app_button_init((BUTTONS), \
(BUTTON_COUNT), \
(DETECTION_DELAY), \
(USE_SCHEDULER) ? app_button_evt_schedule : NULL); \
APP_ERROR_CHECK(ERR_CODE); \
} while (0)
Run Code Online (Sandbox Code Playgroud)
错误是
Symbol 'app_button_evt_schedule' could not be …Run Code Online (Sandbox Code Playgroud) 我正在研究 eclipse cdt 插件开发使用gnuarmeclipse。
我为 c 项目添加了新模板。
这是新 template.xml 的一部分
<process type="org.eclipse.cdt.managedbuilder.core.NewManagedProject">
<simple name="name" value="$(projectName)" />
<simple name="artifactExtension" value="elf" />
<simple name="isCProject" value="true" />
</process>
<process type="org.eclipse.cdt.core.CreateFolder">
<simple name="projectName" value="$(projectName)"/>
<simple name="path" value="source/linkerscript"/>
</process>
<process type="org.eclipse.cdt.core.AddFiles">
<simple name="projectName" value="$(projectName)"/>
<complex-array name="files">
<element>
<simple name="source" value="linkerscript/myprocessor.ld"/>
<simple name="target" value="linkerscript/myprocessor.ld"/>
<simple name="replaceable" value="true"/>
</element>
</complex-array>
</process>
<process type="org.eclipse.cdt.managedbuilder.core.SetMBSBooleanOptionValue">
<simple name="projectName" value="$(projectName)"/>
<complex-array name="resourcePaths">
<element>
<simple name="id" value="org.eclipse.cdt.cross.arm.gnu.c.link.option.nostart" />
<simple name="value" value="true" />
<simple name="path" value="" />
</element>
</complex-array>
</process>
<process …Run Code Online (Sandbox Code Playgroud) 我可能会遗漏一些非常基本的东西.但我不知道如何找出基本的东西.当我将T设置为10并且dt设置为0.1时,我应该得到结果101但是我得到结果为100.为什么会这样?
n_sim_steps = (int)(T/dt) + 1
Run Code Online (Sandbox Code Playgroud)
此外,如果我在eclipse中将其作为手表执行,则返回101,但在代码中它会产生100.
使用 ARM DS-5 环境,基于 Eclipse 4.3.2,我定义了一个 C 项目并使用 Makefile 来构建它。Makefile 包含一些模块选择变量,它们被设置为Y或N取决于我们是否想要包含模块。
我正在尝试从项目设置中设置这些变量。因此,我使用以下构造在 Makefile 中有一个默认设置:
Module_1 ?= Y
Module_2 ?= Y
Run Code Online (Sandbox Code Playgroud)
现在,我想添加一个Module_1设置为Yor的项目变量N。碰巧下面有Build Variables和Environment变量C/C++ Build。当我添加Module_1 N到Environment变量时,它会覆盖默认设置。但是,当我在其中执行相同操作时,Build Variables它没有任何效果。
这两种类型的变量有什么区别?
在我的一个c ++函数中,我称之为ab demangle.我想在将其更改为字符串后取消分配结果.这是代码:
const char * realName;
string name;
const std::type_info &ti = typeid(*this);
realName = abi::__cxa_demangle(ti.name(), 0, 0, &status);
name= realName;
int index =name.find_last_of(':');
name = name.substr(index+1, name.length()-index-1);
free((void *) realName);
Run Code Online (Sandbox Code Playgroud)
代码运行没有问题但是eclipse编译器不满意并且显示使用free的错误:"函数'free'无法解析".
我尝试使用删除而不是免费.
delete realName;
Run Code Online (Sandbox Code Playgroud)
代码运行没有问题,eclipse编译器很高兴,但是当我用valgrind分析代码时,我得到一个分析错误:不匹配free()/ delete/delete []
所以我的问题是:1-我应该在c ++中使用free还是我只使用delete,delete [] 2-如果我不应该使用free为什么valgrind给我一个错误3-如果我应该使用free为什么eclipse cdt comipler给出我编译错误但是当我运行代码时一切正常.4-我的代码是否具有基于c ++ 11的正确样式?或者它是c和旧c ++的组合?
我正在尝试beep()在CDT中使用windows.h的C++ 函数.但它不编译并抛出此错误:
'beep'未在此范围内声明
函数'beep'无法解析以下是代码:
/*
* blahblah.cpp
*
* Created on: Jan 28, 2016
*
*/
#include <iostream>
#include <windows.h>
using namespace std;
int main(){
beep(523, 500);
//cin.get();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我在64位Win7机器上使用MinGW
谢谢