ACE 5.4.7/TAO 1.4.7が最新版です。
http://www.cs.wustl.edu/~schmidt/ACE.html
http://www.cs.wustl.edu/~schmidt/TAO.html
ACEのビルド
Windows上でCygwinを使ってACE+TAOをビルドします。
ACE+TAO+CIAOをワークディレクトリに展開し、環境変数ACE_ROOTを設定します。
ACE_wrappers$ export ACE_ROOT=`pwd`
ACEをビルドします。2つファイルを作成します。
ACE_wrappers/ace/config.h
// -*- C++ -*- #ifndef ACE_CONFIG_H #define ACE_CONFIG_H #define ACE_HAS_STANDARD_CPP_LIBRARY 1 #include "ace/config-cygwin32.h" #endif /* ACE_CONFIG_H */
ACE_wrappers/include/makeinclude/platform_macros.GNU
include $(ACE_ROOT)/include/makeinclude/platform_cygwin32.GNU
ACEをビルドします。ビルドオプションとして、最適化有り、デバッグ無し、静的リンクライブラリの作成有りを指定しています。ここでは最低限のlibACEだけを生成しています。
ACE_wrappers$ cd ace ace$ make optimize=1 debug=0 static_libs=1 : ace$ ls lib* libACE.a libACE.dll libACE.dll.a ace$
gperfのビルド
TAOのIDLコンパイラがgperfコマンドを使用するのでビルドしておきます。
ace$ cd ../apps/gperf/src src$ make optimize=1 debug=0 static_libs=1 : src$ ls *exe gperf.exe src$ **TAOのビルド 環境変数TAO_ROOTを設定します。 >|| ACE_wrappers$ export TAO_ROOT=$ACE_ROOT/TAO
ACEのライブラリをリンクするために、環境変数PATHを設定します。
ACE_wrappers$ PATH=$ACE_ROOT:$PATH
TAOをビルドします。ここでは、CORBAのm最低限の部分だけとして、TAOコア、IDLコンパイラ、ネーミングサービスをビルドします。
TAOコアのビルド
ACE_wrappers$ cd TAO/tao tao$ make optimize=1 debug=0 static_libs=1 : tao$
生成されたライブラリファイルはかなり大量です。拡張子 .a/.dll/.dll.aを
省略したファイル名の部分の一覧を以下に記します。
libTAO libTAO_BiDirGIOP libTAO_CodecFactory libTAO_Codeset libTAO_Domain libTAO_DynamicAny libTAO_DynamicInterface libTAO_IFR_Client libTAO_IORInterceptor libTAO_IORManip libTAO_IORTable libTAO_ImR_Client libTAO_Messaging libTAO_ObjRefTemplate libTAO_PI libTAO_PI_Server libTAO_PortableServer libTAO_RTCORBA libTAO_RTPortableServer libTAO_RTScheduler libTAO_SmartProxies libTAO_Strategies libTAO_TypeCodeFactory libTAO_Utils libTAO_ValueType
TAO IDLコンパイラのビルド
tao$ cd ../TAO_IDL TAO_IDL$ make optimize=1 debug=0 static_libs=1 : TAO_IDL$
IDLコンパイラ・コマンドおよびIDLコンパイラ・ライブラリが生成されます。
TAO_IDL$ ls lib* libTAO_IDL_BE.a libTAO_IDL_BE.dll.a libTAO_IDL_FE.dll libTAO_IDL_BE.dll libTAO_IDL_FE.a libTAO_IDL_FE.dll.a TAO_IDL$ ls *exe tao_idl.exe TAO_IDL$
NamingServiceのビルド
TAO$ cd orbsvcs orbsvcs$ make TAO_ORBSVCS=Naming optimize=1 debug=0 static_libs=1 : CosTypedEventCommC.h:50:27: CosEventCommC.h: No such file or directory
なんかエラーが発生しています。