-1

VS2010 を使用しており、プロジェクトの「ランタイム ライブラリ」設定を MT から MD に変更しようとしています。以下のような「追加の依存関係」がたくさんあります。

cg.lib;cgGL.lib;cublas.lib;cuda.lib;cudart.lib;cufft.lib;curand.lib;cusparse.lib;glew64.lib;freetype248MT.lib;libpng15.lib;zlib.lib;fbxsdk- 2013.1.lib;ftgl.lib

問題は、これらすべての MT ライブラリを 1 つずつ MD に再コンパイルする必要があるかどうかです。それとも私はする必要はありませんか?どちらの方法でもコンパイルエラーはありません。しかし、ライブラリをMDに変更する方が信頼性が高く/高速かどうかを確認したいと思います。

これは私にとって重要な問題です。助けてください!正確な回答のために、さらに質問を受け付けます。

編集: 私がこれを尋ねる本当の理由は、粒子シミュレーションプロジェクトに買いだめを適用して、より速く動作させることです。でも今はもっと遅い!

4

1 に答える 1

0

ほとんどの場合、一貫したランタイム ライブラリを使用する必要があります。そうしないと、あらゆる種類の恐ろしいことが起こる可能性があります。ライブラリから何を使用しているかによってはうまくいくかもしれませんが、おそらく悪い考えです。
MT はマルチスレッドの静的であり、MD はマルチスレッドの動的です。ドキュメントは言う

「リンカーの特定の呼び出しに渡されるすべてのモジュールは、同じランタイム ライブラリ コンパイラ オプション (/MD、/MT、/LD) でコンパイルされている必要があります。」

于 2013-08-05T09:14:58.450 に答える