RISC-V の Linux とかどんなもん?

spike で Linux が動くものなのか?
まずは、ここを見ながらカーネル(vmlinux)をコンパイルしてみる。
soft-float じゃなくて no-float じゃないの?とか文句言われたので、srch/tiscv/Makefile を書き換えた。
#KBUILD_CFLAGS += -msoft-float
#KBUILD_AFLAGS += -msoft-float
KBUILD_CFLAGS += -mno-float
KBUILD_AFLAGS += -mno-float
これでカーネルはできたかな?
次はルートディスクイメージなるものが必要らしい。ここから下を見るのが良いか?
んん?mount が出来ないとな?WSL の限界かな?やっぱり本物の Linux が必要かな?
[追記]
そんなわけで、主力マシンの仮想環境に Ubuntu を入れてルートディスクイメージの作成だけそこでやってみる。
USB メモリに busybox をコピーして仮想環境に持っていく。
[デバイス]-[USB] からメモリを選ぶと Ubuntu が認識するんですね。どこにマウントされたのかわからないので、GUI でコピーします。
そして、mnt/ 以下にいろいろと操作しろと書いてあるけど、これは全部 root 権限じゃないと出来ないみたいです。
出来上がった root.bin をもう一度 USB メモリ経由で持って来て、
This is bbl's dummy_payload. To boot a real kernel, reconfigure
bbl with the flag --with-payload=PATH, then rebuild bbl.
ん?bbl を作り直すのか?
$ ../configure --prefix=$RISCV --host=riscv64-unknown-elf --with-payload=../../linux-4.6.2/vmlinux
$ make
$ cd HOGE
$ spike +disk=root.bin ../riscv-pk/build/bbl
なんか出たけどまだみたい。root.bin があってもなくても同じ所で落ちるので、root.bin がマウントできないんだろうね。
[ 0.040000] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

[PR]
トラックバックURL : http://tom01h.exblog.jp/tb/26946793
トラックバックする(会員専用) [ヘルプ]
※このブログはトラックバック承認制を適用しています。 ブログの持ち主が承認するまでトラックバックは表示されません。
by tom01h | 2016-11-19 00:03 | PCとか | Trackback | Comments(0)