我需要从64位进程调用omniORB的DLL,当我得到它时,我需要将这些DLL编译为64位。如何编译64位Windows的omniORB?
omniORB似乎一般支持64位,但是没有配置文件包含在make-process(* .mk)中......所以我想我必须创建一个我自己的...
有没有人已经尝试过呢?并且:在64位模式下运行ORB是否“容易”(假设有创建这些DLL的方式)还是还有其他我现在没有想到的陷阱? :)
在此先感谢!
我需要从64位进程调用omniORB的DLL,当我得到它时,我需要将这些DLL编译为64位。如何编译64位Windows的omniORB?
omniORB似乎一般支持64位,但是没有配置文件包含在make-process(* .mk)中......所以我想我必须创建一个我自己的...
有没有人已经尝试过呢?并且:在64位模式下运行ORB是否“容易”(假设有创建这些DLL的方式)还是还有其他我现在没有想到的陷阱? :)
在此先感谢!
最近我为MSVC 2010 x64编译omniORB 4.1.2。我跟着instructions from omniORB与小的修改:
下载omniORB-4.1.2.tar.gz(唯一来源,没有omnipython和预编译库)到一个目录,并解压缩。
安装Python for x64(例如c:\ python27)。将c:\ python27添加到PATH环境变量中。请注意,omnipython不起作用,因为它是以32位模式编译的。
安装cygwin(例如c:\ cygwin)。将c:\ cygwin \ bin添加到PATH环境变量中。
在omniORB \ MK \平台创建x86_win64_vs_10.mk(只是复制x86_win32_vs_9.mk的内容),然后修改内容的位:
PYTHON = /cygdrive/c/Python27/python
# Use the following set of flags to build and use multithreaded DLLs
#
MSVC_DLL_CXXNODEBUGFLAGS = -MD -EHs -GS -GR -Zi -nologo
MSVC_DLL_CXXLINKNODEBUGOPTIONS = -nologo -manifest -DEBUG -MACHINE:X64
MSVC_DLL_CNODEBUGFLAGS = -MD -GS -GR -Zi -nologo
MSVC_DLL_CLINKNODEBUGOPTIONS = -nologo -manifest -DEBUG -MACHINE:X64
#
MSVC_DLL_CXXDEBUGFLAGS = -MDd -EHs -RTC1 -GS -GR -Zi -nologo
MSVC_DLL_CXXLINKDEBUGOPTIONS = -nologo -manifest -DEBUG -MACHINE:X64
MSVC_DLL_CDEBUGFLAGS = -MDd -RTC1 -GS -GR -Zd -Zi -nologo
MSVC_DLL_CLINKDEBUGOPTIONS = -nologo -manifest -DEBUG -MACHINE:X64
#
# Or
#
# Use the following set of flags to build and use multithread static libraries
#
MSVC_STATICLIB_CXXNODEBUGFLAGS = -MD -EHs -GS -GR -Zi -nologo
MSVC_STATICLIB_CXXLINKNODEBUGOPTIONS = -nologo -manifest -DEBUG -MACHINE:X64
MSVC_STATICLIB_CNODEBUGFLAGS = -MD -GS -GR -Zi -nologo
MSVC_STATICLIB_CLINKNODEBUGOPTIONS = -nologo -manifest -DEBUG -MACHINE:X64
MSVC_STATICLIB_CXXDEBUGFLAGS = -MDd -EHs -RTC1 -GS -GR -Zi -nologo
MSVC_STATICLIB_CXXLINKDEBUGOPTIONS = -nologo -manifest -DEBUG -MACHINE:X64
MSVC_STATICLIB_CDEBUGFLAGS = -MDd -RTC1 -GS -GR -Zi -nologo
MSVC_STATICLIB_CLINKDEBUGOPTIONS = -nologo -manifest -DEBUG -MACHINE:X64
在omniORB \设置\ config.mk添加行platform = x86_win64_vs_10
并注释掉所有其他平台
打开 “的Visual Studio 64 Win64的命令提示符”,cd到omniORB \ SRC,做make export
我希望这些信息能帮到您
您可能会在omniORB用户邮件列表中获得更快的答案。 – 2010-08-17 15:22:12
我认为你只需要改变编译器路径(如果你在该平台上使用不同的)和参数(为64位添加-m64)。什么是平台? Linux x86_64?还是Solaris SPARC 64? – 2011-12-08 13:41:51