7

ソースからqtをコンパイルするのにn回目ですが、今回はconfigure -release -platform-win32オプションを使用していますが、エラーが発生します:
ここに画像の説明を入力

誰でもそれを修正する方法を知っていますか?
ありがとう。

4

5 に答える 5

7

C++11 標準を有効にして C++ プログラムをコンパイルするデフォルトの MinGW コンパイラ (おそらく任意の gcc コンパイラ) を使用して Qt をコンパイルすると、この問題が発生する可能性があります。

サードパーティのライブラリ JavaScriptCore は、「正規化」するいくつかのラッパーhas_trivial_constructorと関連するテンプレートを定義しようとしていますが、完成した C++11 標準を組み込むための GCC の更新に対処するために、まだ更新されていないようです。

修正は、デフォルトで C++11 機能を有効にしない MinGW コンパイラを使用するか、編集して C++ ビルドにオプションをmkspecs\win32-g++\qmake.conf追加して無効にすることです。-std=gnu++98

QMAKE_CXXFLAGS = $$QMAKE_CFLAGS -std=gnu++98
#                               ^^^^^^^^^^^^
于 2013-06-23T19:06:07.773 に答える
3

gcc 4.7 を使用している場合は、C++11 でコンパイルすればほとんどの C++11 にアクセスできます。また、名前空間でサポートされている機能をここ-std=c++11で確認することもできます。sub 名前空間は、現在標準になっているドラフト用でした。-std=gnu++11stdtr1

于 2012-04-27T16:33:05.047 に答える
1

std::tr1::has_trivial_constructor暫定版を C++11 標準化済み に置き換えることができますstd::is_trivially_constructiblehttp://www.cplusplus.com/reference/type_traits/is_trivially_constructibleを参照してください。

于 2016-07-29T09:39:16.330 に答える
0

TypeTraits.h#include <type_traits>を追加 してみてください (マクロでラップされています)。#include <tr1/memory>

于 2014-05-01T10:23:23.253 に答える