首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用VS 2010构建ACE和TAO (CORBA)时发生了许多错误

使用VS 2010构建ACE和TAO (CORBA)时发生了许多错误
EN

Stack Overflow用户
提问于 2018-03-26 07:01:08
回答 1查看 507关注 0票数 0

我正在尝试构建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文件并键入行:

#定义代码heree 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

#包括"ace/config-win32.h“

  1. 保存并关闭
  2. 打开控制面板->系统->高级系统设置->环境变量
  3. 创建一个新的系统变量: ACE_ROOT,value: C:\ACE_wrappers
  4. 创建一个新的系统变量: TAO_ROOT,value: C:\ACE_wrappers\TAO
  5. 在PATH系统变量中添加值: C:\Program \ 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文件\\100\Tools\Binn\c:\Program\\100\DTS\Binn\%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;c:\Program;Microsoft\Dnvm\C:\Program\Windows\8.1\Windows\;C:\Program\Microsoft 10.0\VC\bin;C:\ACE_wrappers\bin;C:\ACE_wrappers\lib;C:\ACE_wrappers\TAO\bin;
  6. 启动2010
  7. 在TAO_ACE_vc10.sln中打开C:\ACE_wrappers\TAO解决方案
  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. 选择每个项目并检查其配置属性-> General -> Configuration Type是否是动态库(.dll),如果是,则更改为静态库(.lib),但如果是应用程序(.exe)或实用程序,则不会更改。就像在构建过程中出现错误的Scheduling_Service项目一样。
  15. 构建->构建解决方案

经过很长一段时间,大多数项目都是成功建成的。Scheduling_Service、Time_Service_Clerk、NT_Notify_Service、Naming_Service (可能很少有其他项目)有错误(错误LNK2001:未解决的外部符号"__declspec(dllimport) public:.“)。

__unwindfunclet$??0TAO_Scheduling_Service@@QAE@XZ$0 1>Scheduling_Service.obj : error LNK2019:未解决的外部符号"__declspec(dllimport) public:__thiscall TAO_ORB_Manager::~TAO_ORB_Manager(void)“(__imp_??1TAO_ORB_Manager@@QAE@XZ)在函数TAO_ORB_Manager::~TAO_ORB_Manager 1>Scheduling_Service.obj中引用: error LNK2019:未决外部符号"__declspec(dllimport) public:__thiscall TAO_ORB_Manager::TAO_ORB_Manager(类CORBA::ORB *,class PortableServer::POA *,类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 : error LNK2019:未决外部符号"__declspec(dllimport) public:__declspec __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):error LNK2001:未解决的外部符号"__declspec(dllimport) public:__declspec __thiscall CosNaming::Name:~Name(Void)”(__imp_??1Name@CosNaming@@UAE@XZ) 1>Scheduling_Service.obj : error LNK2019:未解决的外部符号"__declspec(dllimport) public: struct CosNaming::NameComponent & __thiscall TAO::unbounded_“函数引用的(__imp_??A?$unbounded_value_sequence@UNameComponent@CosNaming@@@TAO@@QAEAAUNameComponent@CosNaming@@I@Z)”value_sequence::operatorunsigned int公共: int __thiscall TAO_Scheduling_Service::init(int,char ** const)“(?init@TAO_Scheduling_Service@@QAEHHQAPAD@Z) 1>TAO_RTSchedd.lib(Scheduler_Factory.obj):error LNK2001:未解决的外部符号"__declspec(dllimport) public: struct::NameComponent& __thiscall __thiscall

有人知道这个问题吗?非常感谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-26 11:53:02

除非您使用的是为静态使用而生成的Visual项目,否则不应该使用#define ACE_AS_STATIC_LIBS 1。目前,您想要进行静态构建,必须使用MPC重新生成Visual项目

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49485642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档