Kazuhiko
kazuh****@fdiar*****
2014年 10月 31日 (金) 18:32:00 JST
こんにちは。 On 31/10/2014 09:55, yoku ts. wrote: > MariaDB v10.0.3とMroonga v4.0.5インストール時にmakeでERRORになった話 - kazukiyunoue-tech > http://kazukiyunoue-tech.hatenablog.com/entry/2014/09/12/122232 > > pcre/pcre.hが見つからなくてという話ですが、これはcmakeした時にpcre/pcre.h.inから作られるファイルです。 > そのため、Mroongaのmake前にMariaDBのcmakeが必要になります。 > > https://gist.github.com/yoku0825/c632cf06ae81655e6054 > > …というのが、 http://mroonga.org/ja/docs/install/others.html#build-from-source > に書いてあるといいかなとか思いました! 私も、MariaDBのインストール後に make clean したあとで、Mroongaをインス トールしようとして、同じことが起きました。 pcre.h.inとpcre.hの違いって、 @@ -41,10 +41,10 @@ /* The current PCRE version information. */ -#define PCRE_MAJOR @PCRE_MAJOR@ -#define PCRE_MINOR @PCRE_MINOR@ -#define PCRE_PRERELEASE @PCRE_PRERELEASE@ -#define PCRE_DATE @PCRE_DATE@ +#define PCRE_MAJOR 8 +#define PCRE_MINOR 36 +#define PCRE_PRERELEASE +#define PCRE_DATE 2014-09-26 /* When an application links to a PCRE DLL in Windows, the symbols that are imported have to be identified as such. When building PCRE, the appropriate だけなので、たったこれだけのためにMariaDBのソースだけではMroongaをビルド できない、というのも何だかもったいない話な気はします。 MariaDBが、make install時に、include/mysql/に pcre.hもコピーしてくれたら 一番いいのかな。実際、ソースだけでなく、 (install_dir)/include/mysql/private/item_cmpfunc.h:#include "pcre.h" というのもあるのだし、システムにpcreがないなどでMariaDB同梱のpcreをビル ドしているケースのことを考えると、pcre.hもインストールされてしかるべきな 気はします。 (私は、自前のpcreを使うように指定してMariaDBをビルドしているので、 Mroongaのビルド時に再び自前のpcreのヘッダのディレクトリをCPPFLAGSで指定 してMroongaをビルドしました) Mroongaでできるワークアラウンドとしては、mroongaのconfigureがMariaDBの場 合はpcre.hの有無を調べて、無かったらpcre.h.inを試すようにするとか? ビルドする人にできるワークアラウンドとしては、システムにpcre-devみたいな パッケージを入れてもいいけれど、それだとバージョンのミスマッチがありえそ うで嫌な感じですよね。 かずひこ