hlgxiuxiu2011 2017-04-18 08:23 采纳率: 0%
浏览 1407

ACE在ubuntu上的编译错误

ACE/TAO-5.6.9 gcc version 5.4.0 Ubuntu 16.04.2

执行以下命令时:
$ tar xjvf ACE-5.6.9.tar.bz2
$ cd ACE_wrappers
$ mkdir build
$ cd build
$ ../configure --prefix=/usr/local
$ make

出现错误:
../../ace/Dev_Poll_Reactor.cpp: In member function 'int ACE_Dev_Poll_Reactor::dispatch_io_event(ACE_Dev_Poll_Reactor::Token_Guard&)':
../../ace/Dev_Poll_Reactor.cpp:1216:41: error: cannot bind packed field 'pfds->epoll_event::events' to '__uint32_t& {aka unsigned int&}'
__uint32_t &revents = pfds->events;
^
Makefile:3306: recipe for target 'libACE_la-Dev_Poll_Reactor.lo' failed
make[3]: *** [libACE_la-Dev_Poll_Reactor.lo] Error 1
make[3]: Leaving directory '/opt/ACE_wrappers/build/ace'
Makefile:5192: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/opt/ACE_wrappers/build/ace'
Makefile:2506: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/opt/ACE_wrappers/build/ace'
Makefile:444: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1

怎么解决?

  • 写回答

1条回答

  • firecityplans 2018-08-06 11:51
    关注

    这个应该是/usr/include/linux的头文件引用问题。改成eventpool.h就可以了。并且由于字节对齐,引用也会出现问题,可以先赋值给一个uint32_t 使用完之后,再将值重新赋予结构体。

    评论

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条