MinGWでSkyeyeをビルドする
TOPPERSから公式リリースされた,TOPPERSカーネル向けシミュレーション環境に含まれているSkyeyeをビルドする*1ときのTips
- 環境変数のINCLUDEをクリアする
最後のリンクで(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:実行確認はしていない