0

現在、ここから pthread-win32をビルドしようとしています(バージョン 2.7.0)。プロジェクトをチェックアウトしNMAKE VC-static、VS2015 開発者コマンド プロンプトから実行して結果を表示できます。ビルド時にエラーが発生しました:

エラー C2011: 'timespec': 'struct' 型の再定義

HAVE_STRUCT_TIMESPECプリプロセッサ ディレクティブ( source )を追加することで解決すると思います。

修正の正しい適用を示すために、最初に警告を黙らせることにしました。特に警告:

警告 C4996: '_ftime64': この関数または変数は安全でない可能性があります。代わりに _ftime64_s の使用を検討してください。非推奨を無効にするには、_CRT_SECURE_NO_WARNINGS を使用します。詳細については、オンライン ヘルプを参照してください。

これは、定義するように明示的に指示します_CRT_SECURE_NO_WARNINGSMSによると、コマンドラインで-Dorを使用してプリプロセッサ ディレクティブを定義する必要があります。/D次のようにして、警告を黙らせることに成功しました。

set cl= /D_CRT_SECURE_NO_WARNINGS
nmake VC-static

しかし、エラーを修正するために同じことをすると:

set cl=/DHAVE_STRUCT_TIMESPEC /D_CRT_SECURE_NO_WARNINGS // or just
set cl=/DHAVE_STRUCT_TIMESPEC
//and
nmake VC-static

解決しません。

この修正は、さまざまなライブラリのいくつかのソース、pthread バグ修正レポートの両方に記載されています。ここでは、私の状況でこの修正をどのように適用できますか?

4

0 に答える 0