HOME / コンピュータTips / Solaris / コンパイル / lv

Date: 2024/12/13 |  このエントリーをはてなブックマークに追加  |  Tags: solaris opensolaris lv package pkg

マルチランゲージのlvをSolaris用にパッケージ化する。

インストールとデプロイ

ダウンロード

展開

gzip -dc lv451.tgz | tar xvf -

コンパイル

cd lv451/build
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/sfw/bin:/opt/sfw/bin:/opt/csw/bin:/opt/SUNWspro/bin:/usr/ccs/bin ; export PATH
LD_LIBRARY_PATH=/lib:/usr/lib/amd64:/usr/lib:/usr/sfw/lib/amd64:/usr/sfw/lib:/opt/sfw/lib:/opt/csw/lib/amd64:/opt/csw/lib:/usr/X11/lib/amd64:/usr/X11/lib:/usr/openwin/lib/amd64:/usr/openwin/lib ; export LD_LIBRARY_PATH
PKG_CONFIG_PATH=/opt/JPC/lib/pkgconfig:/usr/lib/pkgconfig:/opt/csw/lib/pkgconfig ; export PKG_CONFIG_PATH

CC=cc ; export CC
./configure \
 --prefix=/opt/JPC \

Makefileへのパッチ

本当はconfigure.inを書き換えないとならないのかもしれないが、とりあえず・・・

#prefix=        /opt/JPC                                                                                                                      
prefix= ../../install_root/opt/JPC
#CFLAGS=        -g -DLV_HELP_PATH=\"$(lvlibdir)\" -I$(srcdir)  -DUNIX=1 -DTERMCAP=1 -DHAVE_LIBTERMCAP=1 -DSTDC_HEADERS=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_FCNTL_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_TERMIO_H=1 -DHAVE_UNISTD_H=1 -DHAVE_TERMIOS_H=1 -DHAVE_LOCALE_H=1 -DHAVE_TGETNUM=1 -DHAVE_SETLOCALE=1 -DGETPGRP_VOID=1 -DRETSIGTYPE=void -DHAVE_LANGINFO_CODESET=1                                                        
CFLAGS= -g -O -DLV_HELP_PATH=\"/opt/JPC/lib/lv\" -I$(srcdir)  -DUNIX=1 -DTERMCAP=1 -DHAVE_LIBTERMCAP=1 -DSTDC_HEADERS=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_FCNTL_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_TERMIO_H=1 -DHAVE_UNISTD_H=1 -DHAVE_TERMIOS_H=1 -DHAVE_LOCALE_H=1 -DHAVE_TGETNUM=1 -DHAVE_SETLOCALE=1 -DGETPGRP_VOID=1 -DRETSIGTYPE=void -DHAVE_LANGINFO_CODESET=1
cd build && make 

インストール

インストール。

rm -rf ../../install_root/
mkdir -p ../../install_root/opt/JPC/bin
mkdir -p ../../install_root/opt/JPC/lib/lv
mkdir -p ../../install_root/opt/JPC/man/man1
make install

ここで ../../install_rootにインストール後のイメージが出来ている。

パッケージ化

cd ../../install_root

prototypeを作成

pkgproto . > prototype

出来たprototypeファイルから、prototypeのエントリを削除する。

f none prototype 0644 root root

その上で、下記の2行を追加。

i pkginfo

pkginfoを作成

cat <<__END > ../pkginfo
PKG=JPClv
NAME=lv - a Powerful Multilingual File Viewer / Grep
ARCH=i386
VERSION=4.51
CATEGORY=application
DESC=a Powerful Multilingual File Viewer / Grep
BASEDIR=/
VENDOR=http://www.ff.iij4u.or.jp/~nrt/lv/ packaged for pkglabo, JUSTPLAYER, co.,ltd. by Taki.
HOTLINE=http://pkglabo.justplayer.com/
EMAIL=pkgadmin -at - justplayer.com
__END
cp ../pkginfo .

メアドは書き換えてあるだけ。

パッケージ作成

../../make_package.sh 01

確認

割愛(笑