CentOS 6.2 64bit ç°å¢ã« checkinstall 1.6.2 ãå ¥ããhowto
- è¦ç¹
- git ãªãã¸ããªã®ææ°çã使ã
- 64bitç°å¢ã®ãã£ã¬ã¯ããªæ§é ã«åãããããããããå½ã¦ã
CentOS 6.2 64bit ç°å¢ã« checkinstall 1.6.2 ã® tar.gz ããå
¥ãããã¨ããã¨ã make ã§æ¬¡ã®éã失æããã
$ cd checkinstall-1.6.2 $ make for file in locale/checkinstall-*.po ; do \ case ${file} in \ locale/checkinstall-template.po) ;; \ *) \ out=`echo $file | sed -s 's/po/mo/'` ; \ msgfmt -o ${out} ${file} ; \ if [ $? != 0 ] ; then \ exit 1 ; \ fi ; \ ;; \ esac ; \ done make -C installwatch make[1]: ãã£ã¬ã¯ã㪠`/home/foobar/checkinstall-1.6.2/installwatch' ã«å ¥ãã¾ã gcc -Wall -c -D_GNU_SOURCE -DPIC -fPIC -D_REENTRANT -DVERSION=\"0.7.0beta7\" installwatch.c installwatch.c:2942: error: conflicting types for âreadlinkâ /usr/include/unistd.h:828: note: previous declaration of âreadlinkâ was here installwatch.c:3080: error: conflicting types for âscandirâ /usr/include/dirent.h:252: note: previous declaration of âscandirâ was here installwatch.c:3692: error: conflicting types for âscandir64â /usr/include/dirent.h:275: note: previous declaration of âscandir64â was here make[1]: *** [installwatch.o] ã¨ã©ã¼ 1 make[1]: ãã£ã¬ã¯ã㪠`/home/foobar/checkinstall-1.6.2/installwatch' ããåºã¾ã make: *** [all] ã¨ã©ã¼ 2 $
ãã¡ãï¼システムネタ|centos6.2にcheckinstallをいれるï¼ã«ããã¨ãgit ãªãã¸ããªã®ææ°çã§ã¯ä¿®æ£æ¸ã¿ã¨ã®ãã¨ãªã®ã§ãgit clone ãããã®ã make ããã
$ git clone http://checkinstall.izto.org/checkinstall.git $ cd checkinstall
64bit ç°å¢ã«åããããããMakefileçã«ãããããã夿´ç¹ã¯ä»¥ä¸3ç¹ã
å°ä¿®æ£ãªã®ã§ vi ãã emacs ã§å¼ã£ã¡ããã°OKã
- checkinstallrc ãä¿®æ£
- checkinstallrc ã®ã¤ã³ã¹ãã¼ã«å ã /usr/local ç´ä¸ã«ä¿®æ£
- installwatch.so ã®ã¤ã³ã¹ãã¼ã«å ã®ä¿®æ£
$ git diff diff --git a/Makefile b/Makefile index 2e28adc..b6d217c 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ PREFIX=/usr/local BINDIR=$(PREFIX)/sbin LCDIR=$(PREFIX)/lib/checkinstall/locale -CONFDIR=$(PREFIX)/lib/checkinstall +CONFDIR=$(PREFIX) all: for file in locale/checkinstall-*.po ; do \ diff --git a/checkinstallrc-dist b/checkinstallrc-dist index d4feb4e..fe5f56e 100644 --- a/checkinstallrc-dist +++ b/checkinstallrc-dist @@ -117,7 +117,7 @@ RESET_UIDS=0 NEW_SLACK=1 # Comma delimited list of files/directories to be ignored -EXCLUDE="" +EXCLUDE="/selinux" # Accept default values for all questions? ACCEPT_DEFAULT=0 diff --git a/installwatch/Makefile b/installwatch/Makefile index ae34fc1..fb41eb3 100644 --- a/installwatch/Makefile +++ b/installwatch/Makefile @@ -11,7 +11,7 @@ PREFIX=/usr/local VERSION=0.7.0beta7 BINDIR=$(PREFIX)/bin -LIBDIR=$(PREFIX)/lib +LIBDIR=$(PREFIX)/lib64 all: installwatch.so
ãã®ããããã¯ãããã¨ãã checkinstall ããã¨ãã«ããinstallwatch.soããªããã¨ãã/selinuxã«æ¸ããªããã¨æãããã
# ln -s /usr/local/lib/installwatch.so /usr/local/lib64/installwatch.so
ã¨ã·ã³ããªãã¯ãªã³ã¯ãå¼µã£ãããcheckinstallrc ã夿´ããã chekinstall --exclude=/selinux ã¨ãªãã·ã§ã³ãä»ãããåé¿ã§ãããã©ãæéãªã®ã§å ã«ãã£ã¦ããã
make ã¨ä¸æ¦ make install
$ make # make install
rpm åãã¦ããã¨ãè²ã 便å©ãªã®ã§ rpm åã㦠make install ãã¦ãããã®ã䏿¸ãã
# mkdir -p ~/rpmbuild/SOURCES # checkinstall (çç¥) tempãã¡ã¤ã«ãåé¤..OK temp dirãåé¤..OK ********************************************************************** Done. The new package has been saved to /root/rpmbuild/RPMS/x86_64/checkinstall-20120405-1.x86_64.rpm You can install it in your system anytime using: rpm -i checkinstall-20120405-1.x86_64.rpm **********************************************************************
ã§ããRPMãã¤ã³ã¹ãã¼ã«ï¼ç¢ºèªã
# rpm -ivh /root/rpmbuild/RPMS/x86_64/checkinstall-20120405-1.x86_64.rpm æºåä¸... ########################################### [100%] 1:checkinstall ########################################### [100%] # rpm -qi checkinstall Name : checkinstall Relocations: (not relocatable) Version : 20120405 Vendor: (none) Release : 1 Build Date: 2012å¹´04æ05æ¥ 18æ22å23ç§ Install Date: 2012å¹´04æ05æ¥ 18æ23å00ç§ Build Host: foobar.jp Group : Applications/System Source RPM: checkinstall-20120405-1.src.rpm Size : 96172 License: GPL Signature : (none) Packager : checkinstall-1.6.3 Summary : CheckInstall installations tracker, version 1.6.2 Description : CheckInstall installations tracker, version 1.6.2 CheckInstall keeps track of all the files created or modified by your installation script ("make install" "make install_modules", "setup", etc), builds a standard binary package and installs it in your system giving you the ability to uninstall it with your distribution's standard package management utilities. #
ããã§çµäºã
ããã±ã¼ã¸æ
å ±ãæ°ã«ãªã人ã¯ãrpmåããã¨ãã«å¼ã£ã¦ãã ãããªã