0

32 ビットと 64 ビットのランタイム ライブラリが別の場所にインストールされています。ライブラリ ファイルの名前は同じです。32ビットアプリケーションを作成するには、32ビットライブラリパスと64ビット用の同様のものを指定する必要があります。のようなことをする方法はありますか

  #ifdef defined (_WIN64)
    include 64bit library path
  #else
    include 32bit library path
  #endif

Windowsプラットフォーム用の「#ifdef定義(_WIN64)」になりました(経験的に確認しました)。そして、簡単な調査から、ターゲット アプリケーションが 64 ビットか 32 ビットかを判断するには、これが最善の方法ではない可能性があることがわかりましたが、問題はここにあるわけではありません。ライブラリパスを適切に含めるために、同様の条件ステートメントを使用する方法があるかどうかを知りたいです。C++ Visual Studio 2010 を使用して Windows で開発しています。よろしくお願いします。

4

1 に答える 1

0

ライブラリ名を変更するというコメントに同意しますが、質問に答えるために:を使用#pragma commentして指定します/LIBPATH

#pragma comment(linker, "/LIBPATH:c:\\test\\")

ライブラリ名を変更した場合は、代わりに次のように変更できることに注意してください。

#ifdef _WIN64
#pragma comment(lib, "mylib64.lib")
#else
#pragma comment(lib, "mylib32.lib")
#endif
于 2013-02-22T15:02:13.673 に答える