OSvのビルド環境の構築

OSvはMacWindows上のVirtualBoxVMwareVMware ESXiなど様々な環境で動作するのですが、ビルド環境はFedoraの最新版という極めて限られた環境でのみテストされています(理屈の上では他のディストリビューションでもビルド可能ですが、細かなパッケージの差異などのためにエラーを起こすことがあります)。

より多くの環境でビルド出来るようにビルドスクリプトを手直しするのが本筋なのですが、ここでは取り敢えずFedora環境を用意して開発を始めることを目的とします。

VMware上での開発

WindowsMacではこの方法を選択する必要があります。
Linux環境でもこの方法が使用出来ますが、後述のchroot環境を使った方が高いパフォーマンスが得られます。

VMwareをインストールしてFedoraのディスクイメージを起動します。
(ネステッドVMを使用するため、VMwareでなくてはなりません。VirtualBoxなどでは動作しません。)
VMイメージはここで配布しています。

ユーザ名とパスワードはroot:osvdev, osvdev:osvdevです。

osvdevユーザでログインを行いTerminalを立ち上げ、以下のコマンドを実行することにより開発作業を始められます。

cd osv
git pull
make -j4
./scripts/run.py -n

chroot環境での開発

Fedora以外のLinuxでの開発にはこの方法がおすすめです。
chrootディレクトリにFedoraをインストールします。
GitHub - syuu1228/fedora-chroot-image: Fedora chroot image distribution and build scriptにてchrootイメージを配布しているのでこちらを使用します。

wget -O fedora-chroot.tar.xz "https://github.com/syuu1228/fedora-chroot-image/blob/master/fedora-chroot.tar.xz?raw=true"
sudo tar -xpf fedora-chroot.tar.xz
sudo ./run-fedora.sh

chrootディレクトリ内でrootユーザのシェルが実行されます。

cd ~
./bootstrap.sh

最小限必要なパッケージをインストールします。

yum install git
git clone https://github.com/cloudius-systems/osv.git
cd osv
./scripts/setup.py
git submodule update --recursive --init
make -j4
./scripts/run.py -n

OSvのソースコードをダウンロードしてビルドを行います。