2014年7月2日水曜日

FreeBSD10のmod_pagespeed 未完の泥縄編

前回instaweb_data2cがコアダンプしてしまってmod_pagespeedのmakeがすすまない件

9.2Rまでの慣例にならってUSE_GCC=yesな環境でmakeしていたのだが、出来た中間処理プログラムがcoredumpするに至ってgdbなどで眺めていたのだが、そもそもmainまで飛んでこないので、gccのランタイムと相性悪そうという疑いを持ちはじめた

そこでFreeBSD10なんだからと
CC=             clang
CXX=            clang++
GYP_DEFINES+=   clang=1
としていくと、既知のコンパイルエラーは起きるが #undef major #undef minorを挿入したり、c++のtr1拡張由来の部分を削除したり、wcschrがambitiousといわれて直前に using ::wcschr;を入れたりと手パッチの応酬でなんとかmod_pagespeedtestのリンクフェーズまで来た。

しかし、opencvのライブラリを探しに行ってldが見つけられない模様
どっかの.gypiを修正すればいいんだろうけど、さてはて

あと
clang c++はgcc g++互換なので #ifdef defined(__GNUC__)にもマッチしてしまう
&& !defined(__clang__)を追加して回避

0 件のコメント: