मैं ओएस एक्स 10.8.2 पर theenable-gui = yes फ्लैग के साथ vim कैसे संकलित करता हूं


3

मैं के नवीनतम संस्करण को संकलित करने की कोशिश कर रहा हूँ vim(दिनांक के अनुसार to.३.: on५) इस --enable-guiविकल्प के साथ yes:

./configure --enable-gui=yes
make

लेकिन makeकई त्रुटियों ( पूर्ण आउटपुट ) के साथ विफल रहता है । मैं काफी त्रुटियों का एहसास नहीं कर सकता, क्योंकि मुझे कुछ विशिष्ट नहीं दिखाई देता है जिसे मैं ठीक कर सकता हूं। मुझे यह जोड़ना होगा कि GUI विकल्प के बिना यह संकलन ठीक काम करता है, इसलिए यह सीधे X या OS X कोको फ्रेम वर्क से संबंधित हो सकता है। मैं रेटिना MBP पर OS X 10.8.2 चला रहा हूं।

इसे काम करने के लिए मुझे क्या बदलना / जोड़ना / स्थापित करना चाहिए?

नोट: यह प्रश्न स्पष्ट रूप vimसे GUI विकल्प के साथ स्रोत से संकलन करने के बारे में है। मैं इसके बारे में जानता हूं macvimऔर लगभग हर चीज के लिए यही उपयोग करता हूं। हालांकि, vimएक्लिप्स के अंदर एम्बेड करने के लिए eclim, मुझे ज़रूरत है gvim(विंडोज और लिनक्स पर बॉक्स से बाहर काम करता है)। दुर्भाग्य से, macvimएक्लिप्स के अंदर एम्बेडिंग का समर्थन नहीं करता है, इसलिए इसे ओएस एक्स पर काम करने के मेरे प्रयास।


क्या आपने Homebrew की कोशिश की? Vim ( brew edit vim) के लिए सूत्र को संपादित करना और लाइन --enable-gui=noको बदलना बहुत सरल होगा --enable-gui=yes। आपका लॉग बताता है कि आपको कुछ निर्भरताएँ याद आ रही हैं।
डोमिनिक

जवाबों:


5

आप चलाने से पहले इस तरह से CFLAGS निर्यात करके हेडर फ़ाइलों के गुम होने की त्रुटि को ठीक कर सकते हैं make:

export CFLAGS="-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/Developer/Headers/FlatCarbon/"

दुर्भाग्य से, संकलन का एक नया प्रयास vimत्रुटियों के भार के साथ विफल हो जाता है:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacTypes.h:17:24: error: #include nested too deeply
(...)
/System/Library/Frameworks/CoreFoundation.framework/Headers/CFBase.h:156: error: conflicting types for ‘Boolean’
/usr/X11/include/X11/Intrinsic.h:155: error: previous declaration of ‘Boolean’ was here
(...)
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacTypes.h:11:20: error: missing binary operator before token "("
(...)

और README_mac.txt बहुत मदद की पेशकश नहीं करता है:

(...)
Sorry, this text still needs to be written!

अन्य संकलित विकल्पों के साथ कुछ और विफल प्रयासों के बाद, और त्रुटियों के माध्यम से स्किमिंग के बाद, एक को तुरंत यह धारणा मिलती है कि जीयूआई समर्थन अभी तक ओएस एक्स के लिए लागू नहीं है, कम से कम क्वार्ट्ज के लिए

vimHomeBrew और MacPorts के लिए अन्य विकल्पों पर एक नज़र , बहुत संदेह की पुष्टि करता है: पूर्व में GUI समर्थन की पेशकश नहीं करता है ( यहाँ देखें ) और बाद में केवल X11 का उपयोग करके ( यहां देखें )।

तो vimGUI समर्थन के साथ संकलित करने के लिए आपको अच्छे ol 'X11 पर वापस जाना होगा (मैंने एथेना विगेट्स का परीक्षण किया, अन्य विकल्प हैं motifऔर, यदि आप GTK का उपयोग करते हैं, gtk1और gtk2):

$ make distclean
$ ./configure --enable-gui=yes --enable-gui=athena --disable-darwin

XQuartz लॉन्च करने के बाद मैं vimGUI मोड में शुरू कर सकता था :

$ export DISPLAY=:0
$ ./src/vim -g

यहाँ छवि विवरण दर्ज करें

हालाँकि, मुझे लगता है कि यह GUI समर्थन नहीं है जिसे आपको vimग्रहण के अंदर एम्बेड करने की आवश्यकता है ।


यद्यपि यह ग्रहण के साथ काम नहीं करता है, यह मेरे प्रश्न का उत्तर देता है, इसलिए +1! Gtk समर्थन के साथ ग्रहण की आवश्यकता है, लेकिन मुझे लगता है कि यह भी संकलन करने वाले मुद्दे हैं। हालाँकि, यह एक अलग मुद्दा है और लगता है कि मैं इसे स्वयं ठीक कर सकता हूँ। धन्यवाद :)
rm -rf

धन्यवाद, मुझे खुशी है कि मैं मदद कर सका, उम्मीद है कि आप vimजीकेटी समर्थन के साथ संकलन कर सकते हैं ।
jaume

2

आप gtk समर्थन के साथ इंस्टॉल करने के लिए macports का उपयोग कर सकते हैं vim:

sudo /opt/local/bin/port install vim +huge +gtk2
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.