正統納豆天国ブログ

GPGPUメインのプログラミングエンジニアの備忘録

全体表示

[ リスト ]

いまさら Visual Studio 2012 とか言われても、と思われるだろうが、肝心の Visual Studio 2013 が現行の CUDA 5.5 未対応であるので、まだネタの賞味期限は切れていないと思い、記事を記すこととする。とりあえず Microsoft の Download Center で 2012 のインストーラを現在もダウンロードできるので、そちらを使って確かめていただきたい。

Visual Studio Express 2012: 待ちに待った 64 ビット対応

Visual Studio 2010 まで、無償版である Express エディションでは 64 ビット C++ プログラムの開発は行えなかった。同じく無償配布の Windows SDK に含まれている 64 ビットコンパイラを使って…、などという抜け道も無かったわけではないのだけれど、ともかく有償版のプレミアム機能という位置付けであった。

ところが 2012 では待望の 64 ビット開発環境が付く(ただし IDE で使うソリューション構成は未設定なため、ユーザ側で 64 ビットコンパイラを使うようなソリューション構成を設定する必要が在る)こととなった。

CUDA Toolkit と Visual Studio の関係

CUDA コンパイラ NVCC は、Windows 版では Visual C++ をバックエンドとして使う。Visual Studio の各エディションに準じた機能制限は有ったものの、64 ビット開発を行わない限りは Express エディションでも大きな不自由は無かった。

そして、Visual Studio Express 2012 の 64 ビット対応を受けて、有償版 Visual Studio を抜きに NVCC で 64 ビットコンパイルできるのでは、という期待が高まり、それは見事に裏切られていた。

nvcc : fatal error : Microsoft Visual Studio configuration file 'vcvars64.bat' could not be found for installation at 'C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\BIN\x86_amd64/../../..'

というエラーメッセージの前に、無情にも 64 ビットコンパイルは拒絶される。

64 ビットコンパイルまでの手順

以下、Visual Studio のインストールは C:\Program Files (x86)\Microsoft Visual Studio 11.0 にされているものと仮定するが、読者の環境に合わせて適宜読み替えていただきたい。

1. C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\BIN\x86_amd64C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\BIN\amd64(最後の x86_amd64amd64 になっている)にコピーする。
2. C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\BIN\amd64\vcvarsx86_amd64.batvcvars64.bat にリネームする。
3. コマンドプロンプトで C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\BIN\amd64\vcvars64.bat を実行して整えた環境で、nvcc コマンドを実行する。

これで、Visual Studio Express 2012 を使った 64 ビットコンパイルが可能となる。

この記事に

閉じる コメント(0)

コメント投稿

顔アイコン

顔アイコン・表示画像の選択

名前パスワードブログ
絵文字
×
  • オリジナル
  • SoftBank1
  • SoftBank2
  • SoftBank3
  • SoftBank4
  • docomo1
  • docomo2
  • au1
  • au2
  • au3
  • au4
投稿

.


みんなの更新記事