Ошибка при установке lzip на MacOS 10.11.6


0

Это, вероятно, слишком очевидно, но я застрял. Как я могу завершить последний этап этой установки? Если кто-то может объяснить, что мне говорят об ошибке после «make install», это было бы полезно.

Last login: Sun Jul  9 13:54:14 on ttys000
Funi:~ $ cd /Users/ezx/Applications/Lzip
Funi:Lzip ezx$ ls
lzip-1.19       lzip-1.19.tar.gz    lzip-1.19.tar.gz.sig
Funi:Lzip ezx$ cd lzip-1.19
Funi:lzip-1.19 ezx$ ls
AUTHORS     Makefile.in arg_parser.h    doc     encoder_base.h  file_index.h        testsuite
COPYING     NEWS        configure   encoder.cc  fast_encoder.cc list.cc
ChangeLog   README      decoder.cc  encoder.h   fast_encoder.h  lzip.h
INSTALL     arg_parser.cc   decoder.h   encoder_base.cc file_index.cc       main.cc
Funi:lzip-1.19 ezx$ man apt-get
No manual entry for apt-get
Funi:lzip-1.19 ezx$ ./configure

creating config.status
creating Makefile
VPATH = .
prefix = /usr/local
exec_prefix = $(prefix)
bindir = $(exec_prefix)/bin
datarootdir = $(prefix)/share
infodir = $(datarootdir)/info
mandir = $(datarootdir)/man
CXX = g++
CPPFLAGS = 
CXXFLAGS = -Wall -W -O2
LDFLAGS = 
OK. Now you can run make.
Funi:lzip-1.19 ezx$ make
g++  -Wall -W -O2 -c -o arg_parser.o arg_parser.cc
g++  -Wall -W -O2 -c -o file_index.o file_index.cc
g++  -Wall -W -O2 -c -o list.o list.cc
g++  -Wall -W -O2 -c -o encoder_base.o encoder_base.cc
g++  -Wall -W -O2 -c -o encoder.o encoder.cc
g++  -Wall -W -O2 -c -o fast_encoder.o fast_encoder.cc
g++  -Wall -W -O2 -c -o decoder.o decoder.cc
g++  -Wall -W -O2 -DPROGVERSION=\"1.19\" -c -o main.o main.cc
g++  -Wall -W -O2 -o lzip arg_parser.o file_index.o list.o encoder_base.o     encoder.o fast_encoder.o decoder.o main.o
Funi:lzip-1.19 ezx$ make install
if [ ! -d "/usr/local/bin" ] ; then install -d -m 755 "/usr/local/bin" ; fi
install -m 755 ./lzip "/usr/local/bin/lzip"
install: /usr/local/bin/lzip: Permission denied
make: *** [install-bin] Error 71
Funi:lzip-1.19 ezx$ 

Ответы:


1

Вы вошли как обычный пользователь, у которого нет прав на запись в системные папки, такие как / usr / local / bin /.

Обычно вы запускаете последнюю команду следующим образом:

sudo make install

Это означает, что команда «make install» должна выполняться с правами администратора и, следовательно, иметь права на запись для системных папок.

В качестве альтернативы вы можете перезапустить команду configure, задав ей биндир, который находится в вашем собственном домашнем каталоге. Затем вы можете установить туда двоичный файл, но вам нужно будет указывать полный путь к двоичному файлу каждый раз, когда вы захотите запустить его.


Просто запустил его и получил: если [! -d "/ usr / local / bin"]; затем установите -d -m 755 "/ usr / local / bin"; fi install -m 755 ./lzip "/ usr / local / bin / lzip" if [! -d "/ usr / local / share / info"]; затем установите -d -m 755 "/ usr / local / share / info"; fi rm -f "/usr/local/share/info/lzip.info"* install -m 644 ./doc/lzip.info" /usr/local/share/info/lzip.info "if / bin / sh - c "install-info --version" & gt; / dev / null 2 ​​& amp; 1; then \ install-info --info-dir = "/ usr / local / share / info" "/usr/local/share/info/lzip.info"; \ fi
Tunes

если [ ! -d "/ usr / local / share / man / man1"]; затем установите -d -m 755 "/ usr / local / share / man / man1"; fi rm -f "/usr/local/share/man/man1/lzip.1"* install -m 644 ./doc/lzip.1" /usr/local/share/man/man1/lzip.1 "
Tunes

Это трудно прочитать в комментариях, но в этом нет ошибок. Так что, если это так до конца, у вас установлена ​​программа.
jksoegaard

Похоже, он пытается помочь мне что-то сделать, и я понятия не имею, что это такое.
Tunes

Нет, он не пытается тебя направлять. Он только что установил программу и связанные с ней справочные страницы.
jksoegaard
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.