如何解决在制作过程中出现tmux错误:compat.h:326:错误:“ forkpty”的类型冲突
我希望您能帮助我在tmux上出错。
我正在尝试编译tmux(在我的homedir中的SLES11.2服务器上,没有root用户访问权限),但是在make命令期间遇到错误,我希望有人向我指出正确的方向! / p>
到目前为止已执行的步骤:
下载:
- tmux-3.1b.tar.gz
- libevent-2.1.12-stable.tar.gz(prereq)
- ncurses-6.2-20200907(prereq)
- pkgconfig
到目前为止,所有这些方法似乎都有效:
#LIBEVENT
cd /home/neldrid/lib/libevent-2.1.12-stable
export PKG_CONFIG_PATH=/home/neldrid/lib/pkgconfig
./configure --prefix=/home/neldrid/lib/libevent --enable-shared
make
make install
# NCURSES
export PKG_CONFIG_PATH=/home/neldrid/lib/pkgconfig
./configure --prefix=/home/neldrid/lib/ncurses --with-shared --with-termlib --enable-pc-files --with-pkg-config-libdir=/home/neldrid/lib/pkgconfig
# TMUX
cd /home/neldrid/bin/tmux-3.1b
export PKG_CONFIG_PATH="/home/neldrid/lib/pkgconfig:/home/neldrid/lib/libevent/lib/pkgconfig"
export LIBNCURSES_CFLAGS=/home/neldrid/lib/ncurses/include/ncurses
export LIBNCURSES_LIBS=/home/neldrid/lib/ncurses/lib
export LIBEVENT_CFLAGS=/home/neldrid/lib/libevent/include
export LIBEVENT_LIBS=/home/neldrid/lib/libevent/lib
export LIBTINFO_CFLAGS=/home/neldrid/lib/libtinfo
export LIBTINFO_LIBS=/home/neldrid/lib/libtinfo
export LD_LIBRARY_PATH=/home/neldrid/lib/libevent/lib:/home/neldrid/lib/ncurses/lib:/home/neldrid/lib/libtinfo:/usr/lib:/usr/lib64
./configure --prefix=/home/neldrid/bin/tmux CPPFLAGS="-I/home/neldrid/lib/ncurses/include/ncurses -I/home/neldrid/lib/libevent/include -I/home/neldrid/lib/libtinfo"
因此上述所有方法似乎都可以正常工作,但是当我尝试制作时,我得到了:
> make
depbase=`echo alerts.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -std=gnu99 -DPACKAGE_NAME=\"tmux\" -DPACKAGE_TARNAME=\"tmux\" -DPACKAGE_VERSION=\"3.1b\" -DPACKAGE_STRING=\"tmux\ 3.1b\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"tmux\" -DVERSION=\"3.1b\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -D__EXTENSIONS__=1 -D_ALL_SOURCE=1 -D_GNU_SOURCE=1 -D_POSIX_PTHREAD_SEMANTICS=1 -D_TANDEM_SOURCE=1 -DHAVE_DIRENT_H=1 -DHAVE_FCNTL_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_PATHS_H=1 -DHAVE_PTY_H=1 -DHAVE_STDINT_H=1 -DHAVE_SYS_DIR_H=1 -DHAVE_DIRFD=1 -DHAVE_FLOCK=1 -DHAVE_PRCTL=1 -DHAVE_SYSCONF=1 -DHAVE_ASPRINTF=1 -DHAVE_CFMAKERAW=1 -DHAVE_MEMMEM=1 -DHAVE_SETENV=1 -DHAVE_STRCASESTR=1 -DHAVE_STRNDUP=1 -DHAVE_STRSEP=1 -DHAVE_NCURSES_H=1 -DHAVE_PR_SET_NAME=1 -DHAVE_PROC_PID=1 -I. -DTMUX_VERSION="\"3.1b\"" -DTMUX_CONF="\"/etc/tmux.conf:~/.tmux.conf:~/.config/tmux/tmux.conf\"" -iquote. -I/home/neldrid/lib/ncurses/include/ncurses -I/home/neldrid/lib/libevent/include -I/home/neldrid/lib/libtinfo /home/neldrid/lib/ncurses/include/ncurses /home/neldrid/lib/libtinfo /home/neldrid/lib/libevent/include -std=gnu99 -O2 -MT alerts.o -MD -MP -MF $depbase.Tpo -c -o alerts.o alerts.c &&\
mv -f $depbase.Tpo $depbase.Po
In file included from tmux.h:36,from alerts.c:24:
compat.h:326: error: conflicting types for ‘forkpty’
/usr/include/pty.h:40: error: previous declaration of ‘forkpty’ was here
make: *** [alerts.o] Error 1
我不确定我需要提供什么,但我很高兴,希望有人能指出我要去哪里的正确方向!
谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。