2010-08-05 12 views
9

मुझे 64-बिट प्रक्रिया से ओमनीओआरबी के डीएलएल को कॉल करने की आवश्यकता है और जैसा कि मुझे लगता है मुझे उन डीएलएल को 64-बिट के रूप में संकलित करने की आवश्यकता है।मैं 64-बिट विंडोज़ के लिए omniORB कैसे संकलित कर सकता हूं?

omniORB सामान्य रूप में 64-बिट समर्थन करने लगता है, लेकिन कोई विन्यास फाइल देखते हैं मेकअप प्रक्रिया (* .mk) के लिए शामिल किया ... इसलिए मैं मैं अपने ही में से एक बनाने के लिए लगता है ...

क्या किसी ने अभी तक यह कोशिश की है? और: क्या यह 64-बिट-मोड में ओआरबी चलाने के लिए "आसान" है (माना जाता है कि मैं इन डीएलएल को बनाने का एक तरीका है) या क्या कोई अन्य जाल है जिसे मैं अभी नहीं सोचता? :)

अग्रिम धन्यवाद!

+0

मदद करेगा, आपको शायद omniORB उपयोगकर्ताओं की मेलिंग सूची पर एक तेज उत्तर मिलेगा। –

+0

मुझे लगता है कि आपको केवल कंपाइलर पथ (यदि आप उस प्लेटफ़ॉर्म पर एक अलग का उपयोग कर रहे हैं) और पैरामीटर (64 बिट के लिए add -m64) को बदलना है। मंच क्या है? लिनक्स x86_64? या सोलारिस एसपीएआरसी 64? –

उत्तर

4

हाल ही में मैंने एमएसवीसी 2010 x64 के लिए omniORB 4.1.2 संकलित किया। मैं छोटे संशोधनों के साथ instructions from omniORB बाद:

  1. डाउनलोड omniORB-4.1.2.tar.gz (केवल स्रोतों, omnipython और precompiled पुस्तकालयों के बिना) एक निर्देशिका करने के लिए और उसे निकालने के।

  2. x64 (उदा। सी: \ python27) के लिए पायथन स्थापित करें। सी: \ python27 पाथ पर्यावरण चर में जोड़ें। ध्यान दें कि omnipython काम नहीं करता है, क्योंकि यह 32 बिट मोड में संकलित है।

  3. साइगविन स्थापित करें (उदा। सी: \ cygwin)। पाथ पर्यावरण परिवर्तक में c: \ cygwin \ bin जोड़ें।

  4. 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 
    
  5. omniORB में \ config \ config.mk पंक्ति जोड़ें platform = x86_win64_vs_10 और बाहर टिप्पणी अन्य सभी प्लेटफार्मों

  6. खोलें "दृश्य स्टूडियो 64 Win64 कमांड प्रॉम्प्ट", omniORB \ src को सीडी, कर make export

मुझे आशा है कि यह जानकारी

संबंधित मुद्दे

 संबंधित मुद्दे