2012-03-02 4 views
1

CUDAコードを含むアプリケーションをコンパイルしようとしています。私はWindows 7を実行している64ビットマシンを持っており、Visual C++ 2008 Express(無料版)を持っています。 cudaコンパイラを使用できるように私はhereの手順に従った。 Cudaファイル(* .cu拡張子付き)は現在正常にコンパイルされますが、他の通常のC++ファイルは32ビットを使用しています。これはIDEの上部(構成マネージャー)のドロップボックスにWin32と書かれています。 IDEで、私はきちんとMachineX64(プロパティ - >構成プロパティ - >リンカー - >詳細設定>ターゲットマシン)にリンカのためのターゲットマシンを設定すること構成マネージャーとコマンドライン

fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'x64' 

は注意してください。しかし、コマンドラインを見ると、このようなものです。

/OUT:"C:\Users\jan\Desktop\gpu\Release\gpu.exe" /INCREMENTAL:NO /NOLOGO /LIBPATH:"C:\CUDA\lib64" /LIBPATH:"../../common/lib" /MANIFEST /MANIFESTFILE:"Release\gpu.exe.intermediate.manifest" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"C:\Users\jan\Desktop\gpu\Release\gpu.pdb" /SUBSYSTEM:CONSOLE /OPT:REF /OPT:ICF /LTCG /DYNAMICBASE /NXCOMPAT /MACHINE:X64 /ERRORREPORT:PROMPT cudart.lib C:\CUDA\lib64\cudart.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib 

ランタイムライブラリの32ビットバージョンがコマンドラインに渡されていることに注意してください。どのように私は64ビットを使用するようにフリーキングコンパイラに頼むことができます。これは構成マネージャーに関連していますか?人々はconfiguration managerにアクセスし、active solution platformドロップダウンリストでnewを選択し、そこからx64を選択するように指示されました。ただし、type or select new platformのプルダウンは空白です。私を助けてください。私はこれ以上ナットしていません。そして、完全なWindows SDKをインストールしたので、コンピュータに64ビットのコンパイルツールがすべてあることに注意してください。

+0

これは興味深いです、http://maliciousattacker.blogspot.com/2008/10/creating-64-bit-applications-with.html – MetallicPriest

答えて