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 使用完之后,再将值重新赋予结构体。

    评论

报告相同问题?

悬赏问题

  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?