web-dev-qa-db-ja.com

コードブロックにコンパイラフラグを追加する方法

マルチスレッドの方法を学ぶために、オンラインで見つけた単純なマルチスレッドのコードをコンパイルしようとしています。
このコードを実行するには、コンパイラフラグを使用する必要があります:-pthreadおよび-std=c++0x
しかし、フラグを追加しようとすると、ビルドログにフラグが使用されていることが表示されません。

これらを機能させるためにオンラインでいくつかの一般的なヒントを試しましたが、どれも機能しませんでした。誰かが助けることができますか?

オンラインでコンパイラフラグをコードブロックに追加するための他のアドバイスを試しましたが、それを実行してビルドログを確認すると、いずれも表示されません。

6
user3201708

この質問 は重複としてマークされていたので、それとは関係がなくても、リンカーフラグについてあり、ここにコンパイラフラグについてあるので、ここに私の答えを投稿します。

Settings->Compiler...に移動する必要があります。次に、リンカー設定タブをクリックする必要があります。

右側にその他のリンカーオプションが表示されます。そこで、-lpthreadと入力して、[OK]を押す必要があります。

その後、rebuildをクリックする必要があるかもしれません。

6
Michi

プロジェクトを開き、[プロジェクト]> [ビルドオプション]> [コンパイラフラグ]に移動します。

[コンパイラフラグ]タブでチェックボックスをオンにしたり、[その他のオプション]タブで他のオプションを記述したりできます。

どちらか一方を実行します。例: 「-std = c ++ 98」ボックスにチェックマークを付けず、「-std = c ++ 11」をその他のオプションに入力します。これにより、両方のオプションがコンパイラに渡されることになります。

3
M.M

「その他のオプション」を使用する代わりの別のオプションは、カスタムコンパイラフラグを作成することです。したがって、コンパイラフラグに加えて、リンカフラグを指定できます。 -pthread(私も問題を抱えていました)の場合、Michiが述べたように、リンカーフラグも必要であるように見えました 右クリックして新しいオプションを選択すると、新しいコンパイラフラグを作成できます

0
user12748333

オプションの追加:メニュー->プロジェクト->プロパティ->ビルドターゲットタブ->ビルドオプションボタン

0
Gerard Wensink