CentOS पर tmux स्थापित करने का प्रयास करने पर 6.x त्रुटि के साथ विफल हो जाता है: 'EVBUFFER_EOL_LF' अघोषित


11

मैंने निम्नलिखित चरणों का उपयोग करके tmux को संकलित करने की कोशिश की:

yum -y install ncurses-devel libevent-devel
wget http://downloads.sourceforge.net/tmux/tmux-1.9a.tar.gz
tar -xvzf tmux-1.9a.tar.gz
cd tmux-1.9a
./configure
make

makeआदेश के बाद त्रुटि के साथ विफल:

control.c:64:47: error: ‘EVBUFFER_EOL_LF’ undeclared (first use in this function)

यहाँ ncurses-devel और libevent-devel संकुल का विवरण दिया गया है।

[root@rigel ~]# yum info ncurses-devel.x86_64 libevent-devel.x86_64
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
 * base: centosmirror.go4hosting.in
Installed Packages
Name        : libevent-devel
Arch        : x86_64
Version     : 1.4.13
Release     : 4.el6
Size        : 421 k
Repo        : installed
From repo   : base
Summary     : Header files, libraries and development documentation for libevent
URL         : http://monkey.org/~provos/libevent/
License     : BSD
Description : This package contains the static libraries documentation for libevent.
            : If you like to develop programs using libevent, you will need
            : to install libevent-devel.

Name        : ncurses-devel
Arch        : x86_64
Version     : 5.7
Release     : 3.20090208.el6
Size        : 1.7 M
Repo        : installed
From repo   : base
Summary     : Development files for the ncurses library
URL         : http://invisible-island.net/ncurses/ncurses.html
License     : MIT
Description : The header files and libraries for developing applications that use
            : the ncurses terminal handling library.
            :
            : Install the ncurses-devel package if you want to develop applications
            : which will use ncurses.

CentOS 6.x पर tmux स्थापित करने का सही तरीका क्या है?

जवाबों:


17

समस्या तब होती है क्योंकि yum libevent संस्करण 1.4 स्थापित करता है जबकि tmux 1.9 के लिए libevent संस्करण 2.0 की आवश्यकता होती है। समाधान स्रोत से libevent संस्करण 2.0 स्थापित करना है।

यहाँ स्क्रैच से tmux स्थापित करने के लिए कमांड का पूरा सेट है।

yum -y install ncurses-devel

wget https://github.com/libevent/libevent/releases/download/release-2.0.22-stable/libevent-2.0.22-stable.tar.gz
tar -xvzf libevent-2.0.22-stable.tar.gz
cd libevent-2.0.22-stable
./configure
make -j 4
make install
cd ..

wget https://github.com/tmux/tmux/releases/download/2.1/tmux-2.1.tar.gz
tar -xvzf tmux-2.1.tar.gz
cd tmux-2.1
./configure LDFLAGS="-Wl,-rpath,/usr/local/lib"
make -j 4
make install

यहां कमांड के तीन ब्लॉक हैं।

  1. Yum कमांड ncurses-devel पैकेज (यदि यह पहले से मौजूद नहीं है) को tmux संकलित करने के लिए आवश्यक स्थापित करता है।
  2. फिर हम स्रोत से libevent संस्करण 2.0 संकलित करते हैं और इसे स्थापित करते हैं।
  3. फिर हम स्रोत से tmux 2.1 संकलित करते हैं और इसे स्थापित करते हैं। ऐसा करते समय, हम यह सुनिश्चित करते हैं कि हम tmux को libevent से लिंक करें, जिसे हमने / usr / स्थानीय / lib में स्थापित किया है, अन्यथा यह त्रुटि प्राप्त होगी tmux: error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory:।

अंत में, tmuxtmux लॉन्च करने के लिए कमांड निष्पादित करें ।


6
tmux का कॉन्फिगर इन्हें भी स्वीकार करता है: LIBEVENT_CFLAGS = "- I / usr / local / Export" निर्यात LIBEVENT_LIBS = "- L / usr / local / lib -Wl, -rpath = / usr / local / lib -levent" को शामिल करें - rpath का प्रस्ताव समाप्त होगा LD_LIBRAY_PATH परिवर्तन जो आपके सिस्टम पर अन्य उपयोगकर्ताओं के लिए अधिक सुविधाजनक है।
अजित एंटनी

गोगलर्स के लिए ध्यान दें: मैंने प्राचीन सेंटोस 5 पर भी इसका सफलतापूर्वक उपयोग किया है।
टायर

7

Libevent-devel के 2 -तुरंत इंस्टाल करें

मेरी 64 बिट मशीन पर:

yum install libevent2-devel.x86_64

यदि आपके पास पहले से ही libevent-devel स्थापित है, तो पहले इसे अनइंस्टॉल करें।


1

मेरे द्वारा निष्पादित किए जाने के बाद कॉन्फ़िगर और काम करना शुरू करें:

sudo yum erase libevent-devel

sudo yum install libevent2-devel

ध्यान दें पहला वाला पुराने संस्करण को हटाता है ( 1 ) और दूसरे को एक स्पष्ट '2' जोड़ा जाता है। इसके अलावा मशीन का प्रकार सौभाग्य से स्वचालित रूप से हल हो गया है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.