简体   繁体   English

在Ubuntu上安装libsigsegv时出错

[英]Error installing libsigsegv on ubuntu

While installing libsigsegv for clisp, I have run into an error. 在安装libsigsegv时,我遇到了一个错误。 "make install" does not finish correctly. “ make install”无法正确完成。 The problem as I can see it is a permission issue. 我看到的问题是权限问题。 I am very new to Unix and cant figure out how to solve this issue. 我对Unix非常陌生,无法弄清楚如何解决此问题。 Can you help me please to solve this issue? 您能帮我解决这个问题吗? Any suggestions highly appreciated. 任何建议高度赞赏。

me@me-VPCSB11FX:~/school/summer/libsigsegv/libsigsegv$ make install
Making install in src
make[1]: Entering directory `/home/me/school/summer/libsigsegv/libsigsegv/src'
make[2]: Entering directory `/home/me/school/summer/libsigsegv/libsigsegv/src'
test -z "/usr/local/lib" || /bin/mkdir -p "/usr/local/lib"
/bin/bash ../libtool --mode=install /usr/bin/install -c  'libsigsegv.la'   '/usr/local/lib/libsigsegv.la'
/usr/bin/install -c .libs/libsigsegv.lai /usr/local/lib/libsigsegv.la
/usr/bin/install: cannot create regular file '/usr/local/lib/libsigsegv.la': Permission denied
make[2]: *** [install-libLTLIBRARIES] Error 1
make[2]: Leaving directory `/home/me/school/summer/libsigsegv/libsigsegv/src'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/home/me/school/summer/libsigsegv/libsigsegv/src'
make: *** [install-recursive] Error 1

The installation step is trying to write to a shared directory /usr/local/lib , which is read-only for end users and writable only for administrators and such. 安装步骤正在尝试写入共享目录/usr/local/lib ,该目录对最终用户是只读的,而对于管理员等则只能写。

You would need to give yourself additional privilleges by using su or sudo -- see eg here . 您需要使用susudo来给自己额外的特权-参见例如此处

Also please note that installing custom stuff this way of make install is not very nice nowadays. 还请注意,如今make install这种方式make install来安装自定义内容并不是很好。 You should be using some package management system like RPM or Aptitude or whatever, depending on your Unix distribution. 您应该使用某些软件包管理系统,例如RPM或Aptitude或其他,这取决于您的Unix发行版。 It handles uninstallation, dependencies, conflicts, updates and everything else automatically. 它可以自动处理卸载,依赖项,冲突,更新和其他所有内容。

The detailed installation instructions are found in the INSTALL or INSTALL.generic file, for every GNU package. 对于每个GNU软件包,可以在INSTALL或INSTALL.generic文件中找到详细的安装说明。 For GNU libiconv it is this file: http://git.savannah.gnu.org/gitweb/?p=libsigsegv.git;a=blob;f=INSTALL 对于GNU libiconv,它是以下文件: http ://git.savannah.gnu.org/gitweb/?p=libsigsegv.git;a=blob;f=INSTALL

The default installation location, /usr/local , is not writable by an ordinary user. 普通用户不能写入默认的安装位置/usr/local You have three options: 您有三种选择:

  • Use sudo make install instead of make install . 使用sudo make install代替make install
  • Make the /usr/local directory and its subdirectory owned by yourself, instead of owned by root: chown -R $(id -u -n) /usr/local 使/usr/local目录及其子目录由您自己拥有,而不是由root拥有: chown -R $(id -u -n) /usr/local
  • Specify a different installation directory (see section "Installation Names" of said INSTALL file): For example: ./configure --prefix=${HOME}/gnu/arch/$(uname -p) 指定一个不同的安装目录(请参阅所述INSTALL文件的“安装名称”部分):例如: ./configure --prefix=${HOME}/gnu/arch/$(uname -p)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM