概要
さくらレンタルサーバー(FreeBSD)にて、homeディレクトリにportsを入れ、それを使ってnodejsをインストールしたのでメモ
環境 |
---|
FreeBSD 9.1-RELEASE-p15 amd64 |
プラン さくらのレンタルサーバ スタンダード |
手順
環境変数
export MYBASE='usr'
export LOCALBASE=${HOME}/${MYBASE}/local
export PORTSDIR=${HOME}/${MYBASE}/ports
export PREFIX=${LOCALBASE}
export PKG_DBDIR=${LOCALBASE}/var/db/pkg
export PORT_DBDIR=${LOCALBASE}/var/db/pkg
export DISTDIR=${LOCALBASE}/tmp/dist
export WRKDIRPREFIX=${LOCALBASE}/tmp/work
export PKGTOOLS_CONF=${LOCALBASE}/etc/pkgtools.conf
export DEPENDS_TARGET='install clean'
export INSTALL_AS_USER=yes
export LDCONFIG="/sbin/ldconfig -f ${LOCALBASE}/var/run/ld-elf.so.hints -i -R ${LOCALBASE}/etc/ld-elf.so.conf"
export LD_LIBRARY_PATH=${LOCALBASE}/lib
export LD_RUN_PATH=${LOCALBASE}/lib
export PATH=${PATH}:${LOCALBASE}/bin:${LOCALBASE}/sbin
export MANPATH_MAP=${LOCALBASE}/man
export SRCCONF=${LOCALBASE}/etc/src.conf
export MAKE_JOBS_UNSAFE=yes
portsとINDEXを持ってくる
mkdir -p ${LOCALBASE}/{etc,lib,tmp/dist,tmp/work,var/db/pkg}
cd ${HOME}/${MYBASE}
fetch ftp://ftp.jp.freebsd.org/pub/FreeBSD/ports/ports/ports.tar.gz
tar xzf ports.tar.gz
cd ${PORTSDIR}
fetch http://www.FreeBSD.org/ports/INDEX-9.bz2
bunzip2 INDEX-9.bz2
ld-elf.so.conf作成
ldconfig -r | awk '/search/ {print $3}' | tr ":" "\n" > ${LOCALBASE}/etc/ld-elf.so.conf
echo ${LOCALBASE}/lib >> ${LOCALBASE}/etc/ld-elf.so.conf
pythonのmake
cd ${PORTSDIR}/lang/python
make install
そのままではnodejsをbuildできなかったので、workaround
mkdir -p ${HOME}${HOME}
ln -sf ${HOME}/usr ${HOME}${HOME}/usr
nodejsとnpmインストール
cd ${PORTSDIR}/www/node
make install
cd ${PORTSDIR}/www/npm
make install