我需要從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