13,009
回編集
11行目: | 11行目: | ||
==== ソースコードからインストール ==== | ==== ソースコードからインストール ==== | ||
QEMUのビルドに必要なライブラリをインストールする。<br> | QEMUのビルドに必要なライブラリをインストールする。<br> | ||
sudo zypper install flex bison automake gcc gcc-c++ make glibc glibc-utils glibc-devel-static glib2-devel glibc-utils | sudo zypper install flex bison automake gcc gcc-c++ make glibc glibc-utils glibc-devel-static glib2-devel glibc-utils ncurses-devel libxml2-devel \ | ||
glibc-devel-static glibc-devel-static-32bit glib2-devel glib2-devel-static glib2-devel-32bit \ | |||
zlib-devel zlib-devel-32bit zlib-devel-static zlib-devel-static-32bit libpcap-devel-static readline-devel-static xfsprogs-devel \ | |||
pcre-devel-static pcre2-devel pcre2-devel-static gmp-devel \ | |||
gtk3-devel libgnutls-devel libnettle-devel libseccomp-devel liburing-devel libgbm-devel glusterfs-devel \ | |||
libjpeg8-devel libpng16-devel libpulse-devel alsa-devel libjack-devel spice-protocol-devel libspice-server-devel \ | libjpeg8-devel libpng16-devel libpulse-devel alsa-devel libjack-devel spice-protocol-devel libspice-server-devel \ | ||
libxkbcommon-devel libxkbcommon-x11-devel libcap-devel libcap-ng-devel libpcap-devel libcurl-devel libudev-devel virglrenderer-devel \ | libxkbcommon-devel libxkbcommon-x11-devel libcap-devel libcap-ng-devel libpcap-devel libcurl-devel libudev-devel virglrenderer-devel \ | ||
21行目: | 24行目: | ||
librbd-devel rdma-core-devel libnet-devel libfvde-devel libdmmp-devel multipath-tools-devel libssh-devel libssh2-devel \ | librbd-devel rdma-core-devel libnet-devel libfvde-devel libdmmp-devel multipath-tools-devel libssh-devel libssh2-devel \ | ||
rpcbind rpcgen readline-devel libyajl-devel libpciaccess-devel device-mapper-devel libtirpc-devel libnl3-devel libpixman-1-0-devel \ | rpcbind rpcgen readline-devel libyajl-devel libpciaccess-devel device-mapper-devel libtirpc-devel libnl3-devel libpixman-1-0-devel \ | ||
libxslt-devel python3-docutils | libxslt-devel python3-docutils capstone libcapstone4 libcapstone-devel python3-capstone | ||
<br> | <br> | ||
QEMUのソースコードをダウンロードする。<br> | QEMUのソースコードをダウンロードする。<br> | ||
47行目: | 48行目: | ||
<code>--static</code>オプションを指定した場合、これらのsoftmmuターゲットはリンクエラーを引き起こす。<br> | <code>--static</code>オプションを指定した場合、これらのsoftmmuターゲットはリンクエラーを引き起こす。<br> | ||
../configure --prefix=<QEMU-User-Staticのインストールディレクトリ> \ | ../configure --prefix=<QEMU-User-Staticのインストールディレクトリ> \ | ||
--enable-linux-user --static \ | |||
--disable-system --disable-blobs --disable-brlapi --disable-cap-ng --disable-capstone \ | |||
--disable-curl --disable-curses --disable-docs --disable-gcrypt --disable-gnutls \ | |||
--disable-gtk --disable-guest-agent --disable-guest-agent-msi --disable-libiscsi \ | |||
--disable-libnfs --disable-mpath --disable-nettle --disable-opengl --disable-pie \ | |||
--disable-sdl --disable-spice --disable-tools --disable-vte --disable-werror \ | |||
-- | --disable-debug-info --disable-glusterfs \ | ||
--extra-ldflags=-latomic \ | |||
--target-list=aarch64-linux-user,arm-linux-user \ | |||
# 以下のオプションは任意である | |||
--cc=clang \ | |||
--disable-system \ # ArmおよびAArch64のみをインストールする場合は、--target-list=arm-linux-user,armeb-linux-user,aarch64-linux-userオプションを指定する | |||
--enable-capstone=internal \ # その他の値として、enabled, disabled, auto等がある (このオプションは不要の可能性あり) | |||
make -j $(nproc) | make -j $(nproc) または ninja -C . | ||
make install | make install または ninja -C . install | ||
<br> | <br> | ||
<u>以下に示す設定は、任意である。</u><br> | |||
ファイル名がコンフリクト(衝突)を起こさないように、ファイル名を変更する。<br> | ファイル名がコンフリクト(衝突)を起こさないように、ファイル名を変更する。<br> | ||
以下の例では、ファイル名に-staticサフィックスを追加している。<br> | 以下の例では、ファイル名に-staticサフィックスを追加している。<br> |