(「環境の準備-2:IPKG他」からの続きです。)
インストールしたIPKGを使用して作業に必要なパッケージをインストールします。
また標準でインストールされているBusyBoxに含まれないコマンドを、新版のBusyBoxをインストールして補います。
最後にSynologyの開発環境「DSM Tool Chain」をインストールすれば準備完了という感じです。
以降の手順はSSH(またはTelnet)で接続してrootでログインした状態で作業します。
※rootでログインする際のパスワードはadminに設定したパスワードと同じです。
「環境の準備-2:IPKG他」でインストールしたipkgコマンドを使って各パッケージをインストールします。
パッケージは以下を実行して一気にインストールします。
インストールするパッケージは「ipkg install optware-devel」を実行した場合と比べて「wget-ssl」をインストールしない点を除いてほぼ同等です(「bootstrap」をインストールする際に同時にインストールされる「wget」と「ipkg install optware-devel」を実行した際にインストールされる「wget-ssl」がコンフリクトを起こすため必要なパッケージを個別にインストールすることにしてます)。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
ipkg install termcap ipkg install tcsh ipkg install autoconf ipkg install automake ipkg install bash ipkg install bison ipkg install bzip2 ipkg install coreutils ipkg install diffutils ipkg install file ipkg install findutils ipkg install flex ipkg install gawk ipkg install groff ipkg install gzip ipkg install libstdc++ ipkg install libtool ipkg install make ipkg install m4 ipkg install ncurses ipkg install openssl ipkg install patch ipkg install perl ipkg install pkgconfig ipkg install python25 ipkg install rsync ipkg install sed ipkg install svn ipkg install tar ipkg install tcl ipkg install binutils ipkg install libc-dev ipkg install gcc ipkg install man ipkg install nano |
ついでにソースによってはコンパイル時に文句を言うため、上記でインストールしたgccに対してccとしてシンボリックリンクを設定します。
1 2 |
cd /opt/bin ln -s gcc cc |
手持ちのDS209+では、BusyBoxのバージョン1.16.1が使用されています。また、このBusyBoxはSynologyでカスタマイズしているようで一部のコマンドが存在しません。そこでBusyBoxのサイトから新版のBusyBoxのバイナリを取得して使用します。
なお、最初からインストールされている「/bin/busybox」を新版に置き換えてはいけません。新版のBusyBoxはあくまでも存在しないコマンドを補うためにインストールします(標準のBusyBoxを新版に置き換えるとDiskStationはまともに動かなくなります・・・)。
次のようにして「/bin」ではなく「/opt/bin」にコピーすればOKです(現在配布されているバイナリの新版は1.20.0でしたので、わかりやすいようにファイル名にバージョンを追記しています)。
1 2 3 4 |
cd /opt/bin wget http://busybox.net/downloads/binaries/latest/busybox-powerpc mv busybox-powerpc busybox-powerpc-1.20.0 chmod 755 busybox-powerpc-1.20.0 |
続いて、新版のBusyBoxに対して必要なコマンド名のシンボリックリンクを設定します。
1 2 3 4 5 6 7 8 9 10 11 |
cd /opt/bin ln -s busybox-powerpc-1.20.0 ps ln -s busybox-powerpc-1.20.0 passwd ln -s busybox-powerpc-1.20.0 free cd /opt/sbin ln -s ../bin/busybox-powerpc-1.20.0 adduser ln -s ../bin/busybox-powerpc-1.20.0 deluser ln -s ../bin/busybox-powerpc-1.20.0 addgroup ln -s ../bin/busybox-powerpc-1.20.0 delgroup cd /usr/bin ln -s ../../opt/bin/busybox-powerpc-1.20.0 file |
これで、上記シンボリックリンクを設定したコマンドが使えるようになります。
この中で「ps」や「free」は初期状態の1.16.1でも使えますが、新版の方が使用できるオプションが追加されているために設定しています(そんなコマンドが他にもあると思いますがとりあえず上記のみを設定しています)。
また「/usr/bin」に「file」のシンボリックリンクを作っていますが、本当はできるだけ「/usr/bin」にはファイルを置かない(「/usr/bin」の中身は変更しない)方が正解です。理由はDSMをアップデートするとわかるのですが、この件については別の機会に・・・。
Synology社が公式に提供している開発環境「DSM Tool Chain」をインストールします。この開発環境については以下のページの「Synology DiskStation サードパーティアプリ統合ガイド」で詳しく説明されていますので参考にするとよろしいかと思います。
今回、前記ipkgでも開発環境をインストールしていますし(実際の作業はipkgでインストールしたgccを使う)、DSMに準じたアプリの開発を行うことを目的としていませんが、Synologyの開発環境に含まれるファイルも必要になりますのでインストールします。
インストール方法(と言っても実際には解凍ですけど)は以下の通りです。
※記載のURLはDS209+でDSM4.1を使用している場合の開発環境です。必要なファイルは使用機種に応じて異なります。
※他のDiskStationに適合するファイルは「CPUと開発環境の調べ方」を参考にしてください。
1 2 3 4 |
mkdir -p ~/src cd ~/src wget http://jaist.dl.sourceforge.net/project/dsgpl/DSM%204.1%20Tool%20Chains/PowerPC%20853x%20Linux%202.6.32/gcc343_glibc234_ppc853x-GPL.tgz tar zxpf gcc343_glibc234_ppc853x-GPL.tgz -C /usr/local/ |
上記を実行すると「/usr/local/powerpc-linux-gnuspe/」にファイルが解凍されます。
圧縮ファイルは不要ですので消してOKです。
1 |
rm -f ~/src/gcc343_glibc234_ppc853x-GPL.tgz |
これで開発環境の準備は完了です。
続いて作業用のユーザとディレクトリを調えてから実際のインストールを行います。