FC2カウンター FPGAの部屋 soc-lm32のその後4(とりあえずuClinuxをビルド)
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

soc-lm32のその後4(とりあえずuClinuxをビルド)

とりあえず、Building the Linux Port to LatticeMico32 System User Guide を見ながらTheobroma Systems Limitedにあるlm32-linuxやlm32-linuxのtoolchainsをCygwinでmakeしてみることにした。
順調にビルドできてきたが、10.のtoolchainのmakeでエラーが出て止まってしまった。
uClinux_toolchains_081016.png

このころは順調に進んでいたが、どうやらforkできなくなってエラーが出てしまった。メモリ使用量を見ると3GB使用している。それ以降のmakeはforkができないと言われてできなくなってしまった。Cygwinてメモリリークでもしているのだろうか?Cygwinを落としてもメモリの使用量は変わりがない。
toolchainのmakeはスキップしてもいいようなので、パソコンをリブートして最初からやり直した。
uClinux_Build_1_081017.png

最後の14.のmake でエラーが出てしまった。
uClinux_Build_2_081017.png

原因を調査中です。

追加:
原因はlm32linux-20080206\linux-2.6.x\scripts\mod\libelfbuild\libelf にINSTALL という名前のテキストファイルがあるのが原因でした。これがあるためinstall という名前のフォルダが作れなかったようです。INSTALLをINSTALL.txtに改名したら、そこは通りました。
現在はこの辺でエラーが出ています。
uClinux_Build_2_081017.png
  1. 2008年10月17日 05:30 |
  2. Spartan3E Starter Kit でマイコンを作る
  3. | トラックバック:0
  4. | コメント:4

コメント

INSTALLとinstallがぶつかるのは、きちんとmanagedマウントできてないんじゃないでしょうか。最後のエラーも、mkdirで失敗するのはあやしすぎるので、その関係だと推測します。
ただ、あまりWindowsでのビルドを想定してないように見えるので、linuxでビルドしたほうが良さそうに見えますね。
  1. 2008/10/17(金) 23:17:26 |
  2. URL |
  3. KEI #-
  4. [ 編集 ]

KEIさん、こんにちは。
managedマウントて、そういう意味だったんですね。了解しました。
一応やっていたんですが、もしかしてWindowsの休止状態とかにすると、だめになりますかね?私は休止状態で終わりすることが多いのですが、そうするとCygwinがおかしくなることが多い感じです。一番最後のエラーのときはmanagedマウントがエラーでできませんでした。
一応、LatticeのマニュアルにはCygwinでのビルドの仕方が書いてあるんですが、なんかメモリリークもしているみたいですし、うまくいきませんね。
VMwareでlinuxインストールして、やってみたいと思います。
  1. 2008/10/18(土) 05:21:00 |
  2. URL |
  3. marsee #-
  4. [ 編集 ]

こんにちは。
 Cygwinは、Unix系のシステム・コールをCygwin1.dllを通して、Windows系のシステム・コールに偽装するのが主な動作原理です。で、gccとかLinux Kernelの再コンパイルともなると、コンパイル作業そのものよりは、コンパイル環境のチェックの方がメインな作業になるというか、結果として様々なツールがチャイルド・プロセスとして起動されます。で、最終的にひとつのプロセスの起動に対して、Windows APIのCreateProcessが呼ばれるんですが、このCreateProcess、極めて動作が怪しいというか、Windows2000とXPで動作が異なったりします。Visual Cとかの統合ツールでは、非Windowsのコンソール・プログラムを起動するのに、このAPIの非公開引数を使ったりしているのですが、その辺でやりたい放題やっているって感じですねー。メモリーリークも、多分、起動したチャイルド・プロセスを上手く殺せないのが原因ではないかと。まあ、詳しく調べたことはありませんが。あっ、XPだとタスクマネージャからさえプロセスを殺せないことが多々ありますねー。タスクを管理できないOSって・・・^^;。
  1. 2008/10/19(日) 12:24:15 |
  2. URL |
  3. くり #mQop/nM.
  4. [ 編集 ]

くりさん、こんにちは。

説明ありがとうございました。
Cygwinだめみたいですね。やはり、VMwareでlinuxインストールします。
それはそうするとして、マニュアルを読んでなかったので、マニュアルや参考書を読もうと思っています。
  1. 2008/10/19(日) 18:59:42 |
  2. URL |
  3. marsee #-
  4. [ 編集 ]

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
https://marsee101.blog.fc2.com/tb.php/913-aac952b4
この記事にトラックバックする(FC2ブログユーザー)