Centos 之 非root情况下ncurses安装问题
最近使用主机发现,没有root权限,然后想用zsh,发现没有root权限也是安装不了,但是安装zsh又需要ncurses,但是网上都是一些yum之类的命令,但是yum只能root用哇,苦于无奈,只能安装在自己的目录下使用了。具体过程如下。
系统版本:
$ lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.3.1611 (Core)
Release: 7.3.1611
Codename: Core
源码包下载
http://ftp.gnu.org/pub/gnu/ncurses/
这里可以找到需要的版本
正常安装
./configure --prefix=$HOME
会遇到一个问题,如下
/usr/bin/ld: /usr/lib/libncurses.a(lib_addch.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a
shared object; recompile with -fPIC /usr/lib/libncurses.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[1]: *** [http://www.cnblogs.com/.ext/x86_64-linux/curses.so] Error 1
make[1]: Leaving directory `/home/deploy/tmp/ruby-
enterprise-1.8.6-20081215/source/ext/curses'
make: *** [all] Error 1
从错误中可以定位到可能是ncurses这个静态链接库的问题,从网上找了很久,解决方法如下在安装ncurses时如下方法安装:
$./configure --prefix=$HOME --with-shared --without-debug --enable-widec
$make && make install
版权声明
由 durban创作并维护的 Gowhich博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证。
本文首发于 博客( https://www.gowhich.com ),版权所有,侵权必究。
本文永久链接: https://www.gowhich.com/blog/806
版权声明
由 durban创作并维护的 Gowhich博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证。
本文首发于 Gowhich博客( https://www.gowhich.com ),版权所有,侵权必究。
本文永久链接: https://www.gowhich.com/blog/806