問題タブ [boost-system]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1247 参照

winapi - boost::system::error_code::message を英語で取得するには?

UI がローカライズされた Win7 では、error_code::message()英語以外のメッセージが返されます。私の知る限り (Boost 1.54 ではsystem_error_category)、上記の関数は次の WinAPI 呼び出しに要約されます。

FormatMessage上記を取得して英語のメッセージを返すにはどうすればよいですか? std関数との両方でロケールを設定しようとしましたSetThreadLocaleが、役に立ちませんでした。

更新:単なる説明:基本的に、私の質問は、ユーザーのデフォルト言語をプログラムで「オーバーライド」する方法と、ロケールの設定が十分でない理由です。

0 投票する
1 に答える
606 参照

boost - 別のプログラムで使用するために DLL で Boost System を静的にリンクする

現在、別のプログラムで使用する DLL を作成しようとしています。この DLL では、boost::system を必要とする boost::thread にある条件変数を使用しています。ブースト ライブラリを静的にリンクして、プログラムが自分の dll のみを必要とし、ブーストからは何も必要としないようにしたいと考えています。

スレッド ライブラリを静的にリンクできるので、プログラムにブースト スレッド dll を与える必要はありません。しかし、boost::system で動作する静的リンクを取得できません。これまでのところ、動的にリンクした場合にのみ機能します。静的に、プログラムをコンパイルするときに次のコンパイル エラーが発生します。

dllをビルドするときのコンソール出力は次のとおりです

テストプログラムをビルドしたときのコンソール出力は次のとおりです

次のファイルをテスト プログラムにリンクすると、コンパイルされます。

私のエラーに関係する多くのスレッドを見つけましたが、boost::system をプロジェクトにリンクするスレッドのみです。これを避けて、boost::system のみを DLL にリンクしたい

ブーストシステムをテストプログラムにリンクする必要がなく、DLL にのみリンクするように、すべてを正しくリンクするにはどうすればよいですか?? コードブロック、ブースト 1.53、および MinGW 4.4.1 を使用しています

前もって感謝します

0 投票する
1 に答える
408 参照

xcode - Xcode 6 プロジェクトで Boost Thread 1.56 lib を静的にリンクする

boost_thread と boost_system に静的にリンクしようとしている非常に単純な Xcode 6 プロジェクトがあります。ライブラリをビルドしました (libboost_thread.a と libboost_system.a があります)。プロジェクト内の他の静的ライブラリと同様に、適切なヘッダー/ライブラリ検索パス、フラグなどをすべて含めました。プロジェクトは正常にビルドされます。 、それでも実行すると、boost_thread.dylib ライブラリが見つからないというランタイム dlopen エラーが表示されます ?!

任意のブースト ライブラリの dylib バージョンにはリンクせず、これら 2 つの静的バージョンのみにリンクします。ライブラリを動的にロードしようとするのはなぜですか? 誰でもこれが何であるかについてのヒントを教えてもらえますか?

ありがとう

0 投票する
1 に答える
1243 参照

c++ - boost_system とリンクしているにもかかわらず、boost::system::generic_category への未定義の参照

私のコンパイルコマンドは次のとおりです。

g++ -I/home/foo/boost_1_56_0 -L/home/foo/boost_1_56_0/stage/lib -lboost_system -lboost_filesystem -lpthread -lboost_thread -lboost_system -lboost_filesystem -lpthread -lboost_thread main.cpp foo.cpp

boost::system::generic_categoryとリンクしているにもかかわらず、エラーへの未定義の参照が表示されます-lboost_thread

また、次への未定義の参照も取得します。

boost::system::generic_categorypthread_detach

0 投票する
1 に答える
1497 参照

c++ - どの Boost.Asio 呼び出しによってどの Boost エラー コード/状態が返されますか?

私は現在、Boost.Asio を基礎となるソケット API として使用する TCP I/O 機能を作成していますが、Boost.Asio には、個々の操作の結果として特定の Boost エラー コード/条件が発生する可能性があるドキュメントがないように思われることに気付きました(例:関数/メソッド呼び出しまたは非同期操作)。私が見つけることができたのは、エラー コード API といくつかの非公式のエラー コード リストだけで、特定のコードを特定の操作に関連付けるものはありません

考えられる障害モードがわからない場合、堅牢なコードを作成するのは難しいため、この明らかなドキュメントの欠如は苛立たしいものです。ドキュメントが不足しているため、どの操作からどの問題が発生する可能性があるかについても確信が持てないため、例を挙げることさえできません。

それに比べて、POSIX ソケット API は、障害モードの文書化に関してはかなり適切です。特に、各関数呼び出しによって生成される可能性がある errno と戻り値をリストします。

この Boost.Asio のドキュメントはどこかにありますか? それとも、Boost.Asio API のさまざまな部分の障害モードに関する経験的データを推測、リバース エンジニアリング、または収集して、それを使用する堅牢なコードを記述できるようにする必要がありますか?

0 投票する
1 に答える
1414 参照

c++ - タイプ errc::timed_out のブースト システム make_error_code に「不明なエラー」というメッセージが表示される

次のコードで「不明なエラー」が出力されるのはなぜですか? 「操作がタイムアウトしました」またはその他の説明的なエラーなどの他のメッセージが予想されます。

OS: Windows 7 ブースト: 1.57