Solarisに各種ソフトウエアをインストールしてみます。
対象はSolaris 8/9/10/11です。
configureスクリプトでSunのコンパイラを使用するときに適切な環境変数、 パスを設定するために以下のテンプレートスクリプト(setup-pre.sh)を用意 します。
#!/bin/sh # # default setting... if [ "`isainfo -k`" = "amd64" ]; then ISA="i386" else ISA="sparcv8plus" fi if [ $# -eq 1 ]; then case "$1" in "sparcv8plus"|"sparcv9"|"i386"|"amd64") ISA=$1 ;; *) echo "Usage $0 [sparcv8plus|sparcv9|i386|amd64]" exit 1 ;; esac fi echo "Target Architecture: $ISA" echo "" if [ "$ISA" = "sparcv9" -o "$ISA" = "amd64" ]; then LIBISA="/64" else LIBISA= fi CC="cc" CXX="CC" COPTFLAGS="-xO3" CXXOPTFLAGS="$COPTFLAGS" if [ `uname -r` = "5.11" ]; then GCCBIN=gcc-4.8.2 GPPBIN=g++-4.8.2 elif [ `uname -r` = "5.10" -o `uname -r` = "5.9" ]; then GCCBIN=gcc-4.4.7 GPPBIN=g++-4.4.7 fi GCCCOPTFLAGS="-O2" case "$ISA" in "sparcv9"|"amd64") if [ `uname -r` = "5.8" -o `uname -r` = "5.9" ]; then CISAFLAGS="-xtarget=native64 -xarch=native64" else CISAFLAGS="-m64" fi GCCCISAFLAGS="$CISAFLAGS -fPIC" if [ "$ISA" = "sparcv9" ]; then CISAFLAGS="$CISAFLAGS -xcode=pic32" elif [ "$ISA" = "amd64" ]; then CISAFLAGS="$CISAFLAGS -KPIC" fi ;; "i386") ;; "sparcv8plus") ;; *) ;; esac CC="$CC $CISAFLAGS"; export CC CXX="$CXX $CISAFLAGS"; export CXX CFLAGS="$COPTFLAGS"; export CFLAGS GCCCFLAGS="$GCCCOPTFLAGS $GCCCISAFLAGS"; export GCCCFLAGS ASFLAGS="$CISAFLAGS"; export ASFLAGS CXXFLAGS="$CFLAGS"; export CXXFLAGS case `uname -r` in "5.9"|"5.10") CPPFLAGS="-I/usr/local/include" if [ -d /usr/sfw ]; then CPPFLAGS="$CPPFLAGS -I/usr/sfw/include" fi LDFLAGS="-L/usr/sfw/lib$LIBISA -R/usr/sfw/lib$LIBISA" ;; "5.11") CPPFLAGS="" LDFLAGS="" ;; esac case `uname -r` in "5.8"|"5.9") sslpath=/usr/local bdbpath=/usr/local bdbver=44 zlibpath=/usr/local ldappath=/usr/local iconvpath=/usr idnpath=/usr/local ;; "5.10") sslpath=/usr/sfw OPENSSL_VERSION_CHECK_OPTION="--disable-openssl-version-check" bdbpath=/usr bdbver=42 zlibpath=/usr ldappath=/usr/local iconvpath=/usr idnpath=/usr/local ;; "5.11") sslpath=/usr bdbpath=/usr bdbver=53 zlibpath=/usr ldappath=/usr iconvpath=/usr idnpath=/usr/local ;; *) sslpath=/usr bdbpath=/usr bdbver=47 zlibpath=/usr ldappath=/usr/local iconvpath=/usr idnpath=/usr/local ;; esac # # OpenSSL # ssllib=$sslpath/lib$LIBISA sslinc=$sslpath/include # # Berkeley DB # case "$ISA" in "amd64") # because of missing 64 bit library... bdblib=/usr/local/lib$LIBISA ;; *) bdblib=$bdbpath/lib$LIBISA ;; esac bdbinc=$bdbpath/include # # OpenLDAP # ldaplib=$ldappath/lib$LIBISA case `uname -r` in "5.8"|"5.9"|"5.10") ldapinc=$ldappath/include ;; "5.11") ldapinc=$ldappath/include/openldap ;; esac # # SASL # if [ -d /usr/local/include/sasl ]; then saslpath=/usr/local sasllib=$saslpath/lib$LIBISA saslinc=$saslpath/include/sasl CPPFLAGS="-I$saslinc $CPPFLAGS" LDFLAGS="-L$sasllib -R$sasllib $LDFLAGS" fi # # Kerberos V5 # krb_enable=1 if [ $krb_enable -gt 0 ]; then if [ "X$local_krb5" = "X" ];then gss_impl=seam krb5path=/usr krb5lib=$krb5path/lib$LIBISA krb5inc=$krb5path/include/kerberosv5 else if [ -d /usr/local/kerberos ]; then gss_impl=mit krb5path=/usr/local/kerberos krb5lib=$krb5path/lib$LIBISA krb5inc=$krb5path/include elif [ -d /usr/local/heimdal ]; then gss_impl=heimdal krb5path=/usr/local/heimdal krb5lib=$krb5path/lib$LIBISA krb5inc=$krb5path/include fi LDFLAGS="-L$krb5lib -R$krb5lib $LDFLAGS" fi CPPFLAGS="-I$krb5inc $CPPFLAGS" fi # # Solaris 8/9/10 have /usr/lib/gss # Solaris 8/9 have /usr/lib/gss/gl # # elif [ -d /usr/lib/gss -a ! -d /usr/lib/gss/gl ]; then # case "$ISA" in # "sparcv9"|"amd64") # LDFLAGS="/usr/lib/$ISA/gss/mech_krb5.so -R/usr/lib/$ISA/gss $LDFLAGS" # ;; # *) # LDFLAGS="/usr/lib/gss/mech_krb5.so -R/usr/lib/gss $LDFLAGS" # ;; # esac # # MySQL # mysqlpath=/usr/local mysqllib=$mysqlpath/lib$LIBISA/mysql mysqlinc=$mysqlpath/include/mysql export CPPFLAGS export LDFLAGS CONFDIRS="--prefix=/usr/local --bindir=/usr/local/bin/$ISA --sbindir=/usr/local/sbin/$ISA --libdir=/usr/local/lib$LIBISA"
Sunが主要なフリーソフトウエアをあらかじめコンパイルして提供していま
す。メディアキットを購入するとそのCD-ROMも添付されていますが、Webか
らダウンロードすることも可能です。
http://wwws.sun.com/software/solaris/freeware/からCDイメージをダウンロードします。
LessTifはMotifとぶつかるのでインストール時はインストールリストから抜
いた方がいいでしょう。
% bzip2 -d software_companion_intel.rr.bz2 # lofiadm -a software_companion_intel.rr # mount -F hsfs /dev/lofi/1 /mnt # cd /mnt # ./installer # cd / # umount /mnt # lofiadm -d /dev/lofi/1
コマンドラインでインストールするときは以下を記述したファイルを用意し ておき、それをpkgaddで指定すると非対話式になるので楽です。
mail= instance=unique partial=nocheck runlevel=nocheck idepend=nocheck rdepend=nocheck space=nocheck setuid=nocheck conflict=nocheck action=nocheck basedir=/opt
# pkgadd -d /cdrom/s9_software_companion/components/x86/Packages -n -a sfw.admin SFWgimp
/usr/local/libはldのライブラリ検索パスに入れてしまいます。
# cd /usr/local/lib # ln -s sparcv9 64 # crle -u -l /usr/local/lib # crle -64 -u -l /usr/local/lib/64
Solaris 9については次のようにリンクを作成しておきます。
# cd /usr/sfw/lib # ln -s sparcv9 64
アーキテクチャごとにバイナリを分けて実行時にアーキテクチャを決定 するようにします。
# ln /usr/lib/isaexec /usr/local/bin/[binary]
Copyright ©2000-2018 T.Hiraga <hiraga@next-hop.net> All Rights Reserved. Last modified: $Date: 2015/01/23 06:38:41 $ |