アダルト・ヴァイオリン May the force be with you..

2008年11月27日

Made in CHINA?

Filed under: 日記 — タグ: — い~ぐる @ 9:09 PM

R0010259.JPGこのところあまり評判がよろしくない中国製であるが、なんと、我が家にMade in CHINAと書かれた箱が着ている?
なんだろう・・・


めったに物など来ることのない我が家である。箱を外側から調べると、「開梱時にはカッターを使わないでください」などと書いてあるではないか?
もしや、爆弾でも入っているのでは?と恐る恐る箱を開ける。
すると、現れたものは、
R0010260.JPG
なんだこれは?
まるで

パスタマシン

ではないか!

まるでといいながら、写真に「PASTA MAKER 取扱説明書」と書いてあるぞ、なんていう無粋な突っ込みは不要である(笑)。

Visual C++ 2008 Express でのSystemC

Filed under: Weblog — い~ぐる @ 10:53 AM

普通に単純なサンプルプログラムを実行させようとしただけなのに、思ったよりもずっと苦戦してしまった。

教科書によく出ている加算器のモジュールを作り、そのテストベンチをsc_mainに書くという単純なものだが・・・・

  1. なぜか、systemc.hがcmath.hを呼び出し、しかも、usingの解消ができないエラーが発生。モジュールは関係なく、#includeだけにしても起きる。プロジェクトをクリーンできれいにしても現象変わらず。昨日、インストール時に確認した最低限(sc_mainだけ)のプロジェクトは再コンパイルしても正常。
    結論:VCが何かのリソースを残しているらしい。完全に新しいプロジェクトを起こし直して、ソースコードだけこちらに持ってきたらコンパイル完

  2. SC_METHODの指定でワーニング。無視してコンパイルしたら実行時にメモリ参照の例外でダウン。普通に教科書通りなので、言語仕様的には間違っていなさそうで、原因追求に時間がかかる。(その間にLiveCygwinでSystemCをコンパイルしようとしていたりして、メモリ不足からシステムが不安定になるなど、混乱に拍車が掛かる)
    結論:VCのコマンドラインコンパイルオプションに /vmg を追加することでOK。MSDNには、この手のワーニングが発生した時には /vmm を追加しろと書いてあったのでそれを信じて追求に時間が掛かった。

    1. プロジェクトのプロパティ→C/C++→コマンドラインの追加のオプションに /vmg を記述すること。
    2. 同じくプロパティー→コード生成→簡易ビルドを行う を 「いいえ」にする

とりあえず、基本の基本(1つのハードウェアモジュールと、それのテストベンチ)がようやくコンパイルできるようになった。Linux+gccでやれば圧倒的に簡単だろうなぁ・・

Powered by WordPress