1

Boostライブラリをインストールし、libとincludeディレクトリの両方をソリューションにリンクしました。また、プリコンパイル済みヘッダーを使用しないように設定します。しかし、提供されている単純な例をテストすると、ビルド時にリンクエラーが発生します。

#include <boost/regex.hpp>
#include <iostream>
#include <string>

int main()
{
    std::string line;
    boost::regex pat( "^Subject: (Re: |Aw: )*(.*)" );

    while (std::cin)
    {
        std::getline(std::cin, line);
        boost::smatch matches;
        if (boost::regex_match(line, matches, pat))
            std::cout << matches[2] << std::endl;
    }
}

エラー1エラーLNK1104:ファイルを開くことができません'libboost_regex-vc110-mt-gd-1_51.lib'

libフォルダーを検索しましたが、このlibファイルが存在しません。ダウンロードして再度インストールしましたが、ありません。このバージョンのブーストで放出されたようです。

ところで、私は正規表現のすべてのバリエーションをインストールし、VS12を使用しています。

更新:他の誰かが同じ問題を抱えている場合は、ブーストインストーラーを使用せずに自分でビルドしてみてください

4

1 に答える 1

2

Boostライブラリのいくつかを構築する必要があります-

個別にビルドする必要がある唯一のBoostライブラリは次のとおりです。...Boost.Regex

ヘッダーのみのライブラリから)

簡単な(ただし推奨されない)方法は、インターネットから必要なバイナリをダウンロードすることです。例-boostlib-リビジョン9:/ trunk / stage/lib。次に、 リンカー->一般->追加のライブラリディレクトリに追加します

于 2013-02-06T16:00:55.537 に答える