qemu
2024年06月27日
MSYS2 を使用する場合、MinGW64 環境と UCRT64 環境の 2 つがあります。
MinGW64 は馴染み深い Microsoft Visual C++ の msvcrt を C RunTime(CRT)ライブラリに使用します。一方 UCRT64 は Windows 10 から使用可能な Universal CRT を使用します。(UCRT64 は 2020 年ごろから開発が始まった比較的新しい環境です。)
今まではどちらも同じようなものだと思っていたので惰性で MinGW64 を使い続けてきましたが、同じバージョンの QEMU が UCRT 版(mingw-w64-ucrt-x86_64-qemu)は期待通り動くのに、MinGW64 版(mingw-w64-x86_64-qemu)は動かないケースがありました。今後は特別な理由が無い限り UCRT64 環境を使おうと思います。
詳細は以下になります。
続きを読む
MinGW64 は馴染み深い Microsoft Visual C++ の msvcrt を C RunTime(CRT)ライブラリに使用します。一方 UCRT64 は Windows 10 から使用可能な Universal CRT を使用します。(UCRT64 は 2020 年ごろから開発が始まった比較的新しい環境です。)
今まではどちらも同じようなものだと思っていたので惰性で MinGW64 を使い続けてきましたが、同じバージョンの QEMU が UCRT 版(mingw-w64-ucrt-x86_64-qemu)は期待通り動くのに、MinGW64 版(mingw-w64-x86_64-qemu)は動かないケースがありました。今後は特別な理由が無い限り UCRT64 環境を使おうと思います。
詳細は以下になります。
続きを読む
2023年04月26日
このブログでも何度か取り上げてきましたが、QEMU の Windows バイナリ(x64)のビルドは、以前はとても大変でした。今回、とある事情で数年ぶりに Xilinx QEMU の git HEAD(QEMU 7.1.0 ベース)をビルドする必要がでてきたので調査したところ、以前作った Xilinx QEMU 2020.3(QEMU 5.0.50 ベース)のビルド環境ではライブラリが古いためビルドできず、アップデートも困難な状態でした。
最終的に、最も王道である MSYS2 でビルドが成功し、正常動作が確認できました。その時のメモです。
続きを読む
最終的に、最も王道である MSYS2 でビルドが成功し、正常動作が確認できました。その時のメモです。
続きを読む
2019年04月18日
Xilinx 社の ZynqMP 詳しくないのですが、Xilinx QEMU は PMU※1(qemu-system-microblazeel)ターゲットの QEMU と APU/RPU※2(qemu-system-aarch64)ターゲットの QEMU を別プロセスで 2 つ起動してエミュレーションを行う構成が存在します。
以前ビルドした Windows 版※3でも動作させることができたのでメモしておきます。
続きを読む
以前ビルドした Windows 版※3でも動作させることができたのでメモしておきます。
続きを読む
2019年01月18日
2018年12月27日
2018年12月04日
QEMU の Windows 版のビルド方法は、このブログでも何度も取り上げていますが、QEMU が要求する GLib ライブラリのバージョンが上がり続けているなどの理由により、正常動作する QEMU をビルドできる環境を構築し、QEMU のバージョンアップに追従し続けることが、現状かなり難しくなっています。(少なくとも現在の MSYS2 の GCC 8.2.0 環境でビルドした QEMU は正常動作しません。)
そこで本記事では、QEMU のメンテナの一人であり、長年 Windows 版を開発、バイナリの配布をし続けている Stefan Weil さんがメンテナンスしているビルド環境をお借りして、Ubuntu 18.04 上で Windows 64-bit 版 QEMU をクロスビルドする方法を解説します。
続きを読む
そこで本記事では、QEMU のメンテナの一人であり、長年 Windows 版を開発、バイナリの配布をし続けている Stefan Weil さんがメンテナンスしているビルド環境をお借りして、Ubuntu 18.04 上で Windows 64-bit 版 QEMU をクロスビルドする方法を解説します。
続きを読む
2016年11月21日
お久しぶりです。だいぶ間が空いてしまいました。その間、全身性エリテマトーデス(SLE)という、免疫が狂って自分自身を攻撃してしまう原因不明の難病を発病し、半年ほど休職していたりと色々ありましたが、なんとか職場復帰することができました。またよろしくお願いします。
そんなこんなで浦島太郎状態なのですが、QEMU のサイトを久しぶりに見てみた所、Docker という仮想化技術を使用して QEMU の Windows 用バイナリをビルドできるようになったそうなので、試してみました。
続きを読む
そんなこんなで浦島太郎状態なのですが、QEMU のサイトを久しぶりに見てみた所、Docker という仮想化技術を使用して QEMU の Windows 用バイナリをビルドできるようになったそうなので、試してみました。
続きを読む
2015年12月02日
Xilinx さんが公開している QEMUは Linux ホストのみサポートなのですが、一応ごにょごにょしてみたら Windows でも MinGW-w64 環境で動作させることができたので、メモを残しておきます。(ちゃんとした修正では無いことを、ご了承ください。)
続きを読む
続きを読む
2013年01月08日
QEMU のイメージファイル(仮想ディスクとして使用)を配布する際には、実際に使ったぶんだけファイルサイズが大きくなる(あるいは、別ファイルに差分だけを書き出せる)、QCOW2 形式(QEMU Copy-On-Write image file format version 2)が便利です。
buildroot でビルドした rootfs.tar から、QCOW2 形式のイメージファイルを作った時のメモです。
続きを読む
buildroot でビルドした rootfs.tar から、QCOW2 形式のイメージファイルを作った時のメモです。
続きを読む
2012年11月05日
1 年以上前に試した時は、様々な問題があって MinGW-w64 でビルドした x64 版の QEMU は動作しませんでした。
QEMU のソースを眺めていて、tcg/i386/tcg-target.c に、_WIN64 の ifdef が増えていることに気が付きました。どうも、QEMU 1.1.0 あたりから x64 対応が入ったようです。
他にも、例えば target-arm/op_helper.c あたりで、生の long が使われていたりしたのが、uintptr_t になっていたりして、ちゃんと動きそうな感じがします。
というわけで、再び挑戦してみたところ、QEMU 1.2.0 で x64 版の動作が確認できました。
続きを読む
QEMU のソースを眺めていて、tcg/i386/tcg-target.c に、_WIN64 の ifdef が増えていることに気が付きました。どうも、QEMU 1.1.0 あたりから x64 対応が入ったようです。
他にも、例えば target-arm/op_helper.c あたりで、生の long が使われていたりしたのが、uintptr_t になっていたりして、ちゃんと動きそうな感じがします。
というわけで、再び挑戦してみたところ、QEMU 1.2.0 で x64 版の動作が確認できました。
続きを読む
2012年10月12日
QEMU は ARM semihosting をサポートしているので、QEMU の標準入出力に対して、QEMU 上で動作するターゲットプログラム (ARM) から直接 printf() や fgets() ができます。
(ちなみに、弊社の PARTNER デバッガソフトウェアと exeGCC は、同様のメカニズムを VLINK として提供しています。これは ARM プロセッサに限定されない、MIPS や SH でも使用可能な、汎用のしくみです。)
続きを読む
(ちなみに、弊社の PARTNER デバッガソフトウェアと exeGCC は、同様のメカニズムを VLINK として提供しています。これは ARM プロセッサに限定されない、MIPS や SH でも使用可能な、汎用のしくみです。)
続きを読む
2012年06月20日
Android と言えば ARM ですが、最近は MIPS ベースの Android にも注目が集まっているようです。
(私はあまり詳しくないのですが。)
そういえば、x86 と ARM 以外の Linux は動作させたことが無いなと思ったので、まずは QEMU 1.1.0 で MIPS Linux を動作させてみることにしました。
続きを読む
そういえば、x86 と ARM 以外の Linux は動作させたことが無いなと思ったので、まずは QEMU 1.1.0 で MIPS Linux を動作させてみることにしました。
続きを読む
2012年06月13日
以前 QEMU 1.0.1 をビルドしたのですが、RAM ディスクで arm-test ぐらいは動いたものの、Debian を qcow2 イメージからブートさせることはできませんでした。
これはどうやら、私のビルド環境の問題などではなく、既知の不具合だったようです。
続きを読む
これはどうやら、私のビルド環境の問題などではなく、既知の不具合だったようです。
続きを読む
???次のページへ