問題タブ [tao]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
409 参照

c++ - VS 2010 を使用して ACE と TAO (CORBA) をビルドすると、多くのエラーが発生しました。

ACE と TAO の環境を構築しようとしていますが、多くのエラーが発生します。

ACEとTAOをインストールするために行った手順は次のとおりです。

  1. ファイル (ACE+TAO+CIAO-6.1.2.zip) をフォルダー (C:\ACE_wrappers) に解凍します。
  2. C:\ACE_wrappers\ace に config.h ファイルを作成します。
  3. config.h ファイルを開き、次の行を入力します。

#定義コードはこちら ACE_HAS_WINNT4 1

#定義 ACE_HAS_STANDARD_CPP_LIBRARY 1

#ACE_HAS_MFC 1 を定義

#定義 THR_USE_AFX 1

#定義 ACE_USES_STATIC_MFC 1

#定義 ACE_AS_STATIC_LIBS 1

#ACE_NO_INLINE を定義

#include "ace/config-win32.h"

  1. 保存して閉じる
  2. コントロール パネルを開く - > システム -> システムの詳細設定 -> 環境変数
  3. 新しいシステム変数を作成します: ACE_ROOT、値: C:\ACE_wrappers
  4. 新しいシステム変数を作成します: TAO_ROOT、値: C:\ACE_wrappers\TAO
  5. PATH システム変数に値を追加します: C:\Program Files\Microsoft Visual Studio 10.0\VC\bin;C:\ACE_wrappers\bin;C:\ACE_wrappers\lib;C:\ACE_wrappers\TAO\bin; 値は次のとおりです: %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;c:\Program Files\Microsoft SQL Server\100\Tools\ Binn\;c:\Program Files\Microsoft SQL Server\100\DTS\Binn\;%USERPROFILE%.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm\;C:\Program Files\Windows Kits\8.1 \Windows Performance Toolkit\;C:\Program Files\Microsoft Visual Studio 10.0\VC\bin;C:\ACE_wrappers\bin;C:\ACE_wrappers\lib;C:\ACE_wrappers\TAO\bin;

  6. ビジュアルスタジオ2010を起動

  7. C:\ACE_wrappers\TAO にある TAO_ACE_vc10.sln ソリューションを開きます
  8. ソリューション構成 (メニュー バー) で [リリース] を選択します。
  9. すべてのプロジェクトを選択して右クリックし、[プロパティ] を選択します。
  10. 構成プロパティを設定 -> 一般 -> MFC を使用して共有 DLL で MFC を使用する
  11. [構成プロパティ] -> [VC++ ディレクトリ] -> [実行可能ディレクトリ] に C:\ACE_wrappers\bin; を追加します。
  12. 構成プロパティ -> VC++ ディレクトリ -> インクルード ディレクトリに C:\ACE_wrappers C:\ACE_wrappers\TAO C:\ACE_wrappers\TAO\tao C:\ACE_wrappers\TAO\orbsvcs C:\ACE_wrappers\TAO\orbsvcs\orbsvcs を追加します。
  13. [構成プロパティ] -> [VC++ ディレクトリ] -> [ライブラリ ディレクトリ] に C:\ACE_wrappers\ace C:\ACE_wrappers\TAO\tao C:\ACE_wrappers\TAO\orbsvcs\orbsvcs を追加します。

  14. すべてのプロジェクトを選択し、構成プロパティ -> 一般 -> 構成の種類が動的ライブラリ (.dll) であるかどうかを確認します。そうであれば、静的ライブラリ (.lib) に変更しますが、アプリケーション (.exe) またはユーティリティの場合は、次に私は変わりません。ビルド中にエラーが発生した Scheduling_Service プロジェクトと同様です。

  15. ビルド -> ソリューションのビルド

久しぶりに、ほとんどのプロジェクトは正常にビルドされました。Scheduling_Service、Time_Service_Clerk、NT_Notify_Service、Naming_Service (およびおそらく他のプロジェクトはほとんどない) にエラーがあります (エラー LNK2001: 未解決の外部シンボル "__declspec(dllimport) public:......)。

1>Scheduling_Service.obj : エラー LNK2019: 未解決の外部シンボル "__declspec(dllimport) public: __thiscall TAO_ORB_Manager::~TAO_ORB_Manager(void)" (__imp_??1TAO_ORB_Manager@@QAE@XZ) 関数 __unwindfunclet$??0TAO_Scheduling_Service@@ で参照QAE@XZ$0 1>Scheduling_Service.obj : エラー LNK2019: 未解決の外部シンボル "__declspec(dllimport) public: __thiscall TAO_ORB_Manager::TAO_ORB_Manager(class CORBA::ORB *,class PortableServer::POA *,class PortableServer::POAManager *) " (__imp_??0TAO_ORB_Manager@@QAE@PAVORB@CORBA@@PAVPOA@PortableServer@@PAVPOAManager@4@@Z) 関数内で参照 "public: __thiscall TAO_Scheduling_Service::TAO_Scheduling_Service(void)" (??0TAO_Scheduling_Service@@QAE@ XZ) 1>Scheduling_Service.obj: エラー LNK2019: 未解決の外部シンボル "__declspec(dllimport) public:virtual __thiscall CosNaming::Name::~Name(void)" (__imp_??1Name@CosNaming@@UAE@XZ) 関数で参照される "public: int __thiscall TAO_Scheduling_Service::init(int,char * * const)" (? init@TAO_Scheduling_Service@@QAEHHQAPAD@Z) 1>TAO_RTSchedd.lib(Scheduler_Factory.obj) : エラー LNK2001: 未解決の外部シンボル "__declspec(dllimport) public: virtual __thiscall CosNaming::Name::~Name(void)" (__imp_? ?1Name@CosNaming@@UAE@XZ) 1>Scheduling_Service.obj: エラー LNK2019: 未解決の外部シンボル "__declspec(dllimport) public: struct CosNaming::NameComponent & __thiscall TAO::unbounded_value_sequence::operator[](unsigned int)" (__imp_??A?$unbounded_value_sequence@UNameComponent@CosNaming@@@TAO@@QAEAAUNameComponent@CosNaming@@I@Z) 関数で参照される "public: int __thiscall TAO_Scheduling_Service::init(int,char * * const)" (?init@TAO_Scheduling_Service@@QAEHHQAPAD@Z) 1>TAO_RTSchedd.lib(Scheduler_Factory.obj): エラー LNK2001: 未解決の外部シンボル "__declspec(dllimport) public: struct CosNaming::NameComponent & __thiscall TAO::unbounded_value_sequence::operator[](unsigned int)" (__imp_??A?$unbounded_value_sequence@UNameComponent@CosNaming@@@TAO@@QAEAAUNameComponent@CosNaming@@I@Z)

誰もこの問題を知っていますか?どうもありがとうございました。