MinGWでSkyeyeをビルドする

TOPPERSから公式リリースされた,TOPPERSカーネル向けシミュレーション環境に含まれているSkyeyeをビルドする*1ときのTips

最後のリンクで(INCLUDE)を使うようなので,マシンの環境変数にINCLUDEが設定されていればクリアすること.

$export INCLUDE=

とかでクリアできます.

  • usleep関数宣言は削除

ビルドするとusleep周りでエラーになるので,utils/portable/usleep.hにある宣言をコメントアウトする.

#include <unistd.h>
#define HAVE_USLEEP

#else

//int usleep(unsigned long usec);

#endif

上の二つを修正すればリンクまでこぎつけて,リンクエラーで止まります.
utils/com/Makefileで-lintc -lcを削除して,-lwsock32を追加
Cygwinだとwsock32は自動的にリンクしてくれるようなのだけど,MinGWでは明示的に指定しないとだめと,id:monamour555の啓示を受けました.

*1:実行確認はしていない