C++Builder 5でBoost.Regexを使う方法はあるのでしょうか。いくつかググって調べてみたのですが、どうしてもコンパイルが通りません。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:aki73ix No.1

回答回数5224ベストアンサー獲得回数27

ポイント25pt

C++ Builder 5でBoost.Regexを使用する注意点として

・Boost.RegexのZIPを解凍する時はディレクトリ構造を維持しなくてはいけない

・コンソール(MS-DOSプロンプト)のカレントを<boost>¥libs¥regex¥build にすること(<boost>はBoostのフォルダ)

・bcb5.makを使用する

・makeが複数インストールされている可能性があるのではC++Builder5のmakeのパスを渡す(例<BCB>¥bin¥make)

つまり、C:¥Program files¥Borland¥CBuilder5¥ ニインストールされているならば


C:¥Program files¥Borland¥CBuilder5¥bin¥make -fbcb5.mak [パラメータ] を指定する

・ライブラリを開発システムにインストールするために <BCB>¥make -fbcb5.mak install を最初に実行する

・<boost>をC++Builder5のプロジェクトのインクルードディレクトリの一覧に加えること

・非VCLアプリケーションを作るのであれば _NO_VCL を定義しないといけない


とかかれています

プロセスをどこかで間違っていませんか?

また、コンパイルエラーの内容はなんでしょうか?

id:tecra

私は

http://www.kmonos.net/alang/boost/build.html

を参考にbjamというツールを使っていました。

とりあえず、最新版のboost(1.33)にはbcb5.makは含まれていないようですので, bcb6.makを使って上記の方法でコンパイルしてみました。以下エラーメッセージです。

エラー E2272 ../../../boost/regex/v4/cpp_regex_traits.hpp 401: 識別子が必要(関数

cpp_regex_traits_char_layer<char>::init() )

エラー E2293 ../../../boost/regex/v4/cpp_regex_traits.hpp 401: ) が必要(関数 cpp

_regex_traits_char_layer<char>::init() )

エラー E2268 ../src/cpp_regex_traits.cpp 44: 未定義の関数 ’get_catalog_name’ を

呼び出した(関数 cpp_regex_traits_char_layer<char>::init() )

エラー E2379 ../src/cpp_regex_traits.cpp 44: ステートメントにセミコロン(;)が

ない(関数 cpp_regex_traits_char_layer<char>::init() )

どのバージョンであればbcb5.makが含まれているのでしょうか。

2006/01/20 13:25:55
id:studiokingyo No.2

回答回数47ベストアンサー獲得回数2

ポイント25pt

>どのバージョンであればbcb5.makが含まれているのでしょうか。


上記のURLはC++ Builderでのコンパイル方法らしきものです。

私はC++Builder5はもっていないのでコンパイルは確認できないですが、

bcb5.makは私の手元にあるboostには1.30.2のregexのbuild内に入っていました。

また、この時のregexのバージョンはv3でした。

最新のboostを調べてみたのですがbcb5.makが見当たりませんね?

boost1.32.0でも見当たりませんでした。

詳しく調べていないので憶測ですがregexのv4はbcb5に対応していないのかもしれません。

v4のregexは使用をあきらめてboost1.30.2のv3のregexを使うというのはどうでしょうか?

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません