[请教]vxworks6.7上移植ACE-TAO2.0的问题

PandaLuck 2014-11-03 02:37:58
【过程】
最近项目上需要在vxworks6.7上移植ACE-TAO。在网上找到一篇介绍vxworks6.6上的移植文章《在windows下交叉编译用于vxworks6.6的ACE+TAO》,方法大概是:
1)下载ACE-TAO2.0(含源码和makefile相关文件),根目录下执行命令mwc.pl -static -type vc10 TAO_ACE.mwc,生成VS2010版的sln工程,然后编译其中的TAO_IDL_EXE相关项目(共5个)。
2)在VS2010命令工具上,打开VxWorks development shell(运行WindRiver67\wrenv.exe -p vxworks-6.7命令),
利用mwc.pl -type gnuace生成所有makefile文件。
3)最后make。
【Bug】
make完成后,生成了lib库和测试例程的vxe文件,测试命名服务中的Messengerclient.vxe,烧写至目标板文件系统上,启动该进程,却立刻又被停止删除。提示信息: “RTP 0x2763010 has been deleted due to signal 11”。过程如下。

在shell上执行如下命令:
->
-> cmd
[vxWorks *]#
[vxWorks *]# MessengerClient.vxe -ORBInitRef NameService=corbaloc:iiop:192.168.0.2:12345/NameService
Launching process 'MessengerClient.vxe' ...
Process 'MessengerClient.vxe' (process Id = 0x2763010) launched.
0x2765420 (iMessengerClient): RTP 0x2763010 has been deleted due to signal 11.

【】
于是打算在wind river workbench的IDE上调试一下,将MessengerClient的几个源文件建立RTP工程,设置include lib目录,设置
宏DEFINES为 -DACE_VXWORKS=0x670 -DACE_HAS_PTHREADS -DACE_HAS_CUSTOM_EXPORT_MACROS=0 -fno-strict-aliasing -DNDEBUG -DACE_NDEBUG -D__ACE_INLINE__ -DACE_AS_STATIC_LIBS -DTAO_AS_STATIC_LIBS。
然后编译链接工程。
各cpp文件可以通过编译,但在连接目标文件时,出现如下问题:

在ACE_TMAIN(int argc, ACE_TCHAR *argv[]) 行提示存在如下 error:
this declaration has no storage class or type specifier

最近几天一直在折腾这几个问题,搞不定啊。请高手指点,谢谢~

...全文
1048 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
PandaLuck 2014-11-05
  • 打赏
  • 举报
回复
配置如下 //ace\config.h #elif defined (ACE_VXWORKS) # include "ace/config-vxworks.h" #endif // include\makeinclude\platform_macros.GNU debug=0 optimize=1 static_libs_only=1 CPU=PPC32 TOOL_FAMILY=diab 针对vxe文件启动进程失败,调试跟踪了一下vxe的汇编代码,是在进入ace_os_main_i 之后,调用ACE_Object_Manager::ACE_Object_Manager构造函数,然后依次调用: ACE_Object_Manager::init ACE_Object_Manager_Preallocations::ACE_Object_Manager_Preallocations ACE_Service_Config::current ACE_Service_Config::singleton ACE_Service_Gestalt::ACE_Service_Gestalt ACE_OS::mutex_lock 在这里死掉, PC指针停在pthread_mutex_lock处 这是ACE的源码有问题码?

2,179

社区成员

发帖
与我相关
我的任务
社区描述
xworks是美国 Wind River System 公司( 以下简称风河公司 ,即 WRS 公司)推出的一个实时操作系统。
社区管理员
  • VxWorks开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧