2012-08-24 50 views
9

WindowsのQt CreatorでC++でboostを使いたいです。 私からの指示に従っ:だから私は、私はあなたのPATH環境変数にC:\Boost\binを添加し、その後./b2 install --prefix=C:\Boost.\bootstrap.batを走ったWindows上でBoostを使用するようにQt Creatorを設定する

http://www.boost.org/doc/libs/1_51_0/doc/html/bbv2/installation.html

私はQt Creatorを "見る"ようにしたいと思っており、ウェブ上のリソースを見つけることができませんでした。誰かが私にヒントをお願いできますか?

+0

C++ライブラリ "? –

+0

私は申し訳ありませんが、私はスターターであり、前にブーストを使用していませんでした。私はそれがC++ライブラリであることを知っています。私が望むのは、C++コードでライブラリを使用することです。 Boost BuildとBoost C++ Libraryは異なるものだと思いますが、その違いは何ですか? コメントありがとうございました –

+0

これまでに何が向上しているのかを知っていても、それを正しく構築することは保証されていません。半夜間、ビルドやIDEへの統合が邪魔になります。だから注意してください:) – mlvljr

答えて

11

私は最終的に、Windows 7でQt Creator 2.7.1、Qt 4.8.4、およびBoost 1.54を使用して、Boost Filesystem tutorialにあるBoost Filesystemサンプルをコンパイルすることに成功しました。ここに私のqmakeプロジェクトファイルがあります。

TEMPLATE = app 
CONFIG += console 
CONFIG -= app_bundle 
CONFIG -= qt 

SOURCES += main.cpp 

win32 { 
    INCLUDEPATH += C:/boost/include/boost-1_54 
    LIBS += -LC:/boost/lib \ 
      -lboost_serialization-mgw46-mt-d-1_54 \ 
      -lboost_filesystem-mgw46-mt-d-1_54 \ 
      -lboost_system-mgw46-mt-d-1_54 
} 

「\」ではなく「/」の使用に注意してください。

マイブーストライブラリは、MinGWを使用して "c:\ boost"ディレクトリにコンパイルされました。

+0

win32の{ インクルードパス+ = C:/ユーザー/ユーザー/ダウンロードは/ dev/boost_1_61_0 LIBS + = "-LC:は/ dev /ブースト/ libに/" \ \t「-Llibboost_filesystem-mgw53-MT-D-1_61。 「-Libboost_system-mgw53-mt-d-1_61.a」、「-Libboost_serialization-mgw53-mt-d-1_61.a」-LLIBBS } – thistleknot

0

あなたは少し混乱していると思います。

あなたが言及したリンクは、Boostビルドシステム用であり、Boostライブラリ用ではありません。ライブラリファイルにはThere's a full installer on www.boostpro.comがありますが、それはあなたを起動させて少し速く実行しますが、正しく動作しない場合は、自分で構築するためのガイドhereがあります。

あなたが作成した後の次のステップは、Qtにそれらを認識させることです。一般的には、Qt Creatorを使用して設定を調整するか、プロジェクトの.proファイルを直接編集して、プロジェクト単位で行います。私は.proを編集するのが好きです。あなたがそのルートを下っていくと、ヘッダファイルのためにINCLUDEPATHとライブラリのためのLIBSパスを知らせる必要があります。 Boostの多くはヘッダーファイルなので、あなたが使用する部品に応じて、LIBSの部分が必要な場合としない場合があります。

1

私はこの他の回答に基づいてこの質問に答えます。

まず、QtCreator(通常はmingw)が使用するのと同じコンパイラでコンパイルされたboostライブラリを使用する必要があります。事前ビルドされたブーストライブラリ(通常はmsvcを使用してコンパイル)を使用すると、ライブラリはリンクしますが、未定義の参照エラーが発生します。

したがって、自分でブーストライブラリをコンパイルする必要があります。これを行うには、次の手順を実行します。

  1. PINGにmingwバイナリを追加します。 Control panel > System > Advanced settings > Environmet variablesに移動し、path変数を設定します。私の場合、値はc:\Qt\Tools\mingw\binでした。

  2. 端末を開き、ブーストが解凍されたディレクトリに移動します。これを実行します。bootstrap.bat gcc

  3. を今すぐ実行し、この:b2 link=shared toolset=gccあなたは、私はブーストを使用する」または「私はブーストビルドを使いたい」という意味です、「私はブーストを使用したい」と言う

関連する問題