社区
VxWorks
帖子详情
tornado 下如何Debug 调试C++程序
xuzi_fan
2011-12-19 05:52:04
在tornado下建了一个C++的downloadable工程,编译链接通过了,但是download目标文件的时候显示找不到符号,
已经在targetserver 中配置了符号表同步了 ,
请问各位大侠有木有知道怎么办的,十分感谢
...全文
301
7
打赏
收藏
tornado 下如何Debug 调试C++程序
在tornado下建了一个C++的downloadable工程,编译链接通过了,但是download目标文件的时候显示找不到符号, 已经在targetserver 中配置了符号表同步了 , 请问各位大侠有木有知道怎么办的,十分感谢
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xuzi_fan
2011-12-21
打赏
举报
回复
vxworks里有对C++的支持,不知道目标程序要怎么添加对C++的支持,,,求指教。。
seth0001
2011-12-20
打赏
举报
回复
系统没有添加对C++的支持?
xuzi_fan
2011-12-20
打赏
举报
回复
已经试过了,包含了 stdlib.h 也不行
baoxintc520
2011-12-20
打赏
举报
回复
#include<stdlib.h>
xuzi_fan
2011-12-19
打赏
举报
回复
(
我觉得应该是tornado的配置的问题,可是不知道还应该配置哪里,在网上搜了一些东西,
贴出来大家给帮忙分析一下吧
)
5.2.3 编译C++应用程序
Tornado项目工具(project tool)完全支持C++.配置和编译C++程序推荐使用项目工具。下面的信息对于理解C++环境是有用的。除非有特殊原因而使用人工方法,否则应该使用在《Tornado User's Guide: Projects》中说明的方法。
关于GNU编译器和相关工具的细节,参见《GNU ToolKit User's Guide》。
当使用GNU编译器编译C++模块时,在每个带有C++后缀(如.cpp)的源文件上调用ccarch(正像对C源码).在VxWorks环境中编译C++程序包括如下步骤:
1.每个C++源码文件被编译成目标代码,就像C程序一样。举例编译一个68K目标:
cc68k -fno-builtin -I$WIND_BASE/target/h -nostdinc -O2 \
-DCPU=MC68040 -c foo.cpp
cc68k -fno-builtin -I$WIND_BASE/target/h -nostdinc -O2 \
-DCPU=MC68040 -c bar.cpp
2.目标代码被munch(参见Munching C++ Application Modules).在我们的例子中:
nm68k foo.o bar.o | wtxtcl $WIND_BASE/host/src/hutils/munch.tcl \
-asm 68k > ctdt.c
cc68k -c ctdt.c
3.目标代码和已编译的munch输出连接在一起。(对于可下载的应用程序,它们可使用参数-r局部的(partially)连接在一起;对于可启动的应用程序,它们可静态的与VxWorks BSP连接在一起。)如果使用GNU工具,如下可从编译器驱动中调用连接器:
cc68k -r ctdt.o foo.o bar.o -o linkedObjs.o
这里连接两个目标模块,foo.o和bar.o,生成可下载的目标代码,linkedObjs.o。如果使用选项-frepo,则使用ccarch而不是ldarch来实例化模板。(参见5.2.7 Template Instantiation)
注意:如果使用Wind River System makefile来构造应用程序,munching是通过make来执行。
小心:在连接步骤中,-r用来制定局部连接。一个局部的连接文件仍然是可重定位的,也适合使用VxWorks模块加载器来下载和连接。《GNU ToolKit User's Guide: Using ld》中描述的选项-Ur是为了解析涉及到的C++构造函数。这个选项用于本地开发(native development),而不是交*开发(cross-development).VxWorks的C++模块不使用选项-Ur。
(可是看了老半天,也没看懂)
xuzi_fan
2011-12-19
打赏
举报
回复
我主要就是想实验一下tornado 对C++的debug调试是如何操作的,写了一段非常简单的代码,如下:
#include <stdio.h>
#include <iostream.h>
class A
{
public:
virtual void test1(){};
};
class B :public A
{
public:
void test1();
};
void B:: test1()
{
int i=15;
while(i--);
cout<<"hello"<<endl;
}
void test2()
{
B b;
b.test1();
}
夫人的泡泡鱼
2011-12-19
打赏
举报
回复
把具体情况贴出来,我们来分析
tornado
使用指南
- **CrossWind**:这是一个源代码级别的
调试
工具,支持 C/
C++
及汇编语言的
程序
调试
。它融合了图形界面和命令行界面的优点,使得用户可以轻松地进行
程序
调试
,比如设置断点、控制
程序
执行等。 - **WindSh**:一个...
VxWorks 5.x Datasheet.pdf
调试
代理(
Debug
Agent)是一个非常有用的工具,它允许开发者在目标硬件上远程
调试
和分析应用
程序
,而无需复杂的现场
调试
设置。 总之,VxWorks 5.x是一个功能全面、性能出色的RTOS,它不仅在技术上非常先进,而且在...
北邮VxWorks课件
6. **WDB (Wind
Debug
Agent)**:支持交叉
调试
,便于开发者
调试
嵌入式系统中的问题。 7. **ANSIC**:提供标准C库API,使得开发人员能够使用标准C语言编写代码。 8. **GNU和Diab C/
C++
编译器**:提供多种编译器选项...
与python一路走来
- 区分不同版本(
Debug
/Release),提高
调试
效率。 - 处理中文编码问题,确保源代码和文件名的正确编码。 - **数据分析处理**: - 针对文本和二进制两种数据格式,通过平台统一接口调用脚本。 - 使用模块/类继承...
Python学习之路-
Tornado
基础:深入
Tornado
下面几节主要讲解
tornado
.web.RequestHandler。回想一下,利用HTTP协议向服务器传参有几种途径?查询字符串(query string),形如key1=value1&key2=value2;请求体(body)中发送的数据,比如表单数据、json、xml;...
VxWorks
2,184
社区成员
2,914
社区内容
发帖
与我相关
我的任务
VxWorks
xworks是美国 Wind River System 公司( 以下简称风河公司 ,即 WRS 公司)推出的一个实时操作系统。
复制链接
扫一扫
分享
社区描述
xworks是美国 Wind River System 公司( 以下简称风河公司 ,即 WRS 公司)推出的一个实时操作系统。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章