checkinstall
deb 패키지 파일을 설치하지 않고 생성만 할지 어떻게 결정하나요 ?
의 경우 checkinstall --install=no
작업을 수행할 권한이 없기 때문에 결국 실패합니다. 설치하지 않고 deb 파일을 만들려면 루트가 정말로 필요합니까?
$ checkinstall --install=no
checkinstall 1.6.2, Copyright 2009 Felipe Eduardo Sanchez Diaz Duran
This software is released under the GNU GPL.
*****************************************
**** Debian package creation selected ***
*****************************************
This package will be built according to these values:
0 - Maintainer: [ tim@admin ]
1 - Summary: [ wine 1.6.2 built from source Oct 3, 2014 ]
2 - Name: [ wine ]
3 - Version: [ 1.6.2 ]
4 - Release: [ 1 ]
5 - License: [ GPL ]
6 - Group: [ checkinstall ]
7 - Architecture: [ i386 ]
8 - Source location: [ wine-1.6.2 ]
9 - Alternate source location: [ ]
10 - Requires: [ ]
11 - Provides: [ wine ]
12 - Conflicts: [ ]
13 - Replaces: [ ]
Enter a number to change any of them or press ENTER to continue:
Installing with make install...
========================= Installation results ===========================
make[1]: Entering directory `/tmp/wine-1.6.2/tools'
make[1]: `makedep' is up to date.
make[1]: Leaving directory `/tmp/wine-1.6.2/tools'
make[1]: Entering directory `/tmp/wine-1.6.2/libs/port'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/libs/port'
make[1]: Entering directory `/tmp/wine-1.6.2/libs/wine'
version=`(GIT_DIR=../../.git git describe HEAD 2>/dev/null || echo "wine-1.6.2") | sed -n -e '$s/\(.*\)/const char wine_build[] = "\1";/p'` && (echo $version | cmp -s - version.c) || echo $version >version.c || (rm -f version.c && exit 1)
make[1]: Leaving directory `/tmp/wine-1.6.2/libs/wine'
make[1]: Entering directory `/tmp/wine-1.6.2/libs/wpp'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/libs/wpp'
make[1]: Entering directory `/tmp/wine-1.6.2/tools'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/tools'
make[1]: Entering directory `/tmp/wine-1.6.2/tools/widl'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/tools/widl'
make[1]: Entering directory `/tmp/wine-1.6.2/tools/winebuild'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/tools/winebuild'
make[1]: Entering directory `/tmp/wine-1.6.2/tools/winedump'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/tools/winedump'
make[1]: Entering directory `/tmp/wine-1.6.2/tools/winegcc'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/tools/winegcc'
make[1]: Entering directory `/tmp/wine-1.6.2/tools/wmc'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/tools/wmc'
make[1]: Entering directory `/tmp/wine-1.6.2/tools/wrc'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/tools/wrc'
make[1]: Entering directory `/tmp/wine-1.6.2/include'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/include'
make[1]: Entering directory `/tmp/wine-1.6.2/dlls/adsiid'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/dlls/adsiid'
make[1]: Entering directory `/tmp/wine-1.6.2/dlls/dinput'
make[1]: `libdinput.def' is up to date.
make[1]: Leaving directory `/tmp/wine-1.6.2/dlls/dinput'
make[1]: Entering directory `/tmp/wine-1.6.2/dlls/dinput'
make[1]: `libdinput.def.a' is up to date.
make[1]: Leaving directory `/tmp/wine-1.6.2/dlls/dinput'
make[1]: Entering directory `/tmp/wine-1.6.2/dlls/dxerr8'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/dlls/dxerr8'
make[1]: Entering directory `/tmp/wine-1.6.2/dlls/dxerr9'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/dlls/dxerr9'
make[1]: Entering directory `/tmp/wine-1.6.2/dlls/dxguid'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/dlls/dxguid'
make[1]: Entering directory `/tmp/wine-1.6.2/dlls/strmbase'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/dlls/strmbase'
make[1]: Entering directory `/tmp/wine-1.6.2/dlls/strmiids'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/dlls/strmiids'
make[1]: Entering directory `/tmp/wine-1.6.2/dlls/uuid'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/dlls/uuid'
make[1]: Entering directory `/tmp/wine-1.6.2/dlls/winecrt0'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/dlls/winecrt0'
make[1]: Entering directory `/tmp/wine-1.6.2/dlls/acledit'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/wine-1.6.2/dlls/acledit'
./tools/mkinstalldirs -m 755 /usr/local/lib/wine
mkdir /usr/local/lib/wine
mkdir: cannot create directory `/usr/local/lib/wine': Permission denied
make: *** [/usr/local/lib/wine] Error 1
**** Installation failed. Aborting package creation.
Cleaning up...OK
Bye.
, fakeroot checkinstall
권한 문제로 인해 실패했습니다.
답변1
을 사용해 보십시오 checkinstall --install=no --fstrans=yes
. 패키지가 실제 파일 시스템에 닿지 않도록 파일 시스템 변환이 가능합니다. 따라서 파일을 저장하는 데 루트 권한이 필요하지 않습니다.
답변2
--install=no
이를 통해 원하는 동작을 얻을 수 있어야 합니다 .