M3-2012春頒布物
(やっと)M3情報です。
新譜「じゆうなうた」
再掲:
2012年4月30日(月)
東京流通センター(TRC)
第一展示場 L 14b
サークル名 Estuary
ひやかし等、お待ちしております。
(やっと)M3情報です。
新譜「じゆうなうた」
再掲:
2012年4月30日(月)
東京流通センター(TRC)
第一展示場 L 14b
サークル名 Estuary
ひやかし等、お待ちしております。
M3当選しました。
2012年4月30日(月)
東京流通センター(TRC)
第一展示場 L 14b
イベントの詳細はこちらをご覧ください。 http://www.m3net.jp/
頒布物については、後日(3月末~4月上旬頃できるだけ早めに)お知らせします。
NetBSDでmingw-w64を作っていて、クロスのgccもbinutilsも出来上がったのに、それでコンパイルしたバイナリをWindowsに持っていって実行しようとすると“not a valid WIN32 application”(日本語版だと「有効なWIN32アプリケーションではありません」)などと言われる。
結論から書くと、binutilsのldのldscriptsが正しく作れていなかった。
configureでSHELLとして何故か/bin/shではなく/bin/kshが選ばれるが、このシェルだとgenscripts.sh(から呼ばれているscripttempl/pep.scなど)がエラーになる。
エラーなので止まってくれれば良いのだが、実際にはそのまま進んで、make installすると途中で打ち切られた(実質中身のない)ldscriptsがインストールされてしまう。
出来上がったgcc+binutilsを使ってコンパイルしたときに、一見すると正しいPE32(+) executableに見えるモノが出来てしまうので、なかなか原因がわからなかった。しかし、以前にも、違うパターンとはいえ同じ部分でハマったことがあったのだった。http://est.ceres.ne.jp/2008/07/02/post_241/…すぐに気がつくべきだった。
回避方法としては、binutilsのconfigureを実行する際、CONFIG_SHELL=/bin/sh …/configure …
とでもすれば良い。多分。
クロスコンパイラを用意していた時の話。
いまどきの gcc は、gmp, mpfr, mpc といったライブラリが必要で、一緒に作る場合は gcc のソースディレクトリの中に展開して、バージョン番号のない形にリネームしておく、とかいう話はどこにでも書いてあるけれど、mpc のコンパイル前の configure でコケる。
configure: error: libmpfr not found or uses a different ABI.
gccのconfigureの際、gcc のソースがあるのが ${SRCDIR}
、コンパイルするのが ${BUILDDIR}
、とすると、
$ cd ${BUILDDIR}
$ ${SRCDIR}/configure --prefixとかtargetとか指定したいオプション…
--with-mpfr-include=${SRCDIR}/mpfr/src
--with-mpfr-lib=${BUILDDIR}/mpfr/src/.libs
…とすれば回避はできる。(gcc-4.6.2で確認)
こんな指定をさせる仕様ではないと思うのだが。