ace tao 编译的一个问题

来源:互联网 发布:ios10快速关闭蜂窝数据 编辑:程序博客网 时间:2024/04/26 07:11

今天编译了ace tao,遇到一些问题,记录下来:

编译器: mingw3.2  msys(版本未知)

1. 顺利编译ace,在编译tao时,一个链接失败:TAO_IDL_CPP_Keyword_Table::lookup 方法未定义,

查看fe_lookup.cpp文件发现只有2个include,是空的,在makefile中查找发现这个文件是由gperf.exe生成的。于是加入gperf.exe路径($ACE_ROOT/bin)到path中,删除fe_lookup.cpp,重新编译OK。

2. 编译次序

    $ACE_ROOT/ace,
    $ACE_ROOT/apps/gperf,
    $TAO_ROOT/tao,
    $TAO_ROOT/TAO_IDL
    $TAO_ROOT/orbsvcs/orbsvcs

需要进入到对应的目录make,不要使用-C 选项,否则也有些头文件找不到的问题。

3. 编译TAO时performance-tests目录有错误,无法编译通过。但给出的编译信息只有警告,没有错误:

make[4]: *** [.obj/demux_test_client.o] Error 1
make[4]: Leaving directory `/d/projs/ACE/ACE_wrappers/TAO/performance-tests/POA/Demux'
make[3]: *** [Demux_Poa_Client] Error 2
make[3]: Leaving directory `/d/projs/ACE/ACE_wrappers/TAO/performance-tests/POA/Demux'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/d/projs/ACE/ACE_wrappers/TAO/performance-tests/POA'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/d/projs/ACE/ACE_wrappers/TAO/performance-tests'
make: *** [all] Error 2

只有在TAO的GNUMakefile里,屏蔽performance-tests目录。