みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

VISTA64bit,VS2005/C++で対象コンピュータを「x64

VISTA64bit,VS2005/C++で対象コンピュータを「x64」にして簡単なプログラムをビルドすると以下のエラーが出てしまいます。

「1>.\Debug\stdafx.obj : fatal error LNK1112: モジュールのコンピュータの種類 'X86' は対象コンピュータの種類 'x64' と競合しています。」

OS   :VISTA Ultimate64bit
CPU   :Xeon5080(64bit),
開発環境:VS2005 Team Edition for software developers完全インストール

◎OSもCPUも64bit対応なのに何故かモジュールのコンピュータは32bitでビルドしてしまいます。解決方法はありますでしょうか?

追記:気になることは、VS2005が普通の「Program files」のフォルダではなく「Program Files(x86)」に強制的にインストールしてしまうことです。

投稿日時 - 2010-01-20 11:02:00

QNo.5607648

困ってます

質問者が選んだベストアンサー

ちょっと見にくいですが、
http://www.itmedia.co.jp/enterprise/articles/0506/15/news006.html
の「Fig.4 Visual Studio 2005β版セットアップ画面」
にある「x64コンパイラおよびツール」をチェックONにしてインストール
していますか?
(この画面はβ版なので、製品版と若干違うかもしれません。)

例え64ビット環境にインストールしたとしても、
VisualStudio2005は、32ビットアプリケーションです。
なので「Program Files(x86)」にインストールされるのは正常です。
それでも64ビットアプリの開発ができるのは、クロスコンパイル環境になっているからです。
上記のチェックボックスもデフォルトはOFFだったと思います。

投稿日時 - 2010-01-20 21:57:08

お礼

ありがとうございます!x64でデバッグできました!

おっしゃる通りチェックボックスのデフォルトでOFFに
なっていました。「推奨」に惑わされてはダメですね・・。

この後,リモートデバッガx64を再インストールする手間も
ありましたが,問題は全て解決致しました。

これまで導入で支援して頂いたhidebunさんに,そして
解決へと展開して頂いたLchan0211さんに,
深くお礼を申し上げたいと思います。

本当にありがとうございました!皆様の様な
上級技術者になれるように,今後も勉学に励みたいと思いますので,
以後ご指導ご鞭撻の程,よろしくお願い致します。

投稿日時 - 2010-01-21 13:34:13

このQ&Aは役に立ちましたか?

3人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.2

この辺りは見ました?
http://msdn.microsoft.com/ja-jp/library/9yb4317s%28VS.80%29.aspx

投稿日時 - 2010-01-20 14:35:06

お礼

再度早速のご回答ありがとうございます!

 HPを拝見させて頂きました。推測ですが,問題解決の糸口に
なりそうです。

上記の様な曖昧な返答になるのは以下の問題が発生した為です。

 ◎「構成マネージャ」で「64bit対応プラットフォーム」が
  現れない。

 現在インストールされている開発環境VS2005team systemであれば,
64bit対応プラットフォームは当然インストールされていますので,
この様な問題が発生する筈はないのです。実際に,C++ではなく,
C#でプログラムを構築すると「構成マネージャ」で「x64」が現れ,
CPU64bitアーキテクチャを利用することができるのです。
 つまり,問題はVISTAがVS2005のC++に対し,64bitを認識していない
所に在る様です。

 hidebun殿,本当に色々とご対応頂き感謝しております。問題が
完全に解決した訳ではありませんが,今後の方針が明確になりましたので,
ご支援の件,お礼を申し上げます。
 また,何か分かりましたら是非ご回答頂けると幸いです。

投稿日時 - 2010-01-20 16:56:27

ANo.1

これではないかな。
http://kkkon.hp.infoseek.co.jp/tips/VC/Win32VC8_Setting_x64.shtml

投稿日時 - 2010-01-20 11:37:39

お礼

早速のご回答ありがとうございます!
頂いたHPを参考に検討をしました。

そこで,誠に恐縮なのですが,どうやら当方の質問の書き方が不完全であったようで,
検討の結果,問題解決には至りませんでした。

 ◎当方の問題は,"「x64」のPCである筈なのにモジュールのコンピュータが「x86」と
  誤認識してしまい,「x64」のプログラムをビルドできない",ことです。

 頂いたHPは,真逆の内容でした。"「x64」のPCで,モジュールのコンピュータも「x64」と
正常認識し,敢えて「x86」のプログラムをビルドする",というものですね。

 この内容でお困りの方も沢山いらっしゃると思います。非常に有益な情報と理解しております。
是非,今後ともご回答頂けるよう,よろしくお願い致します。

投稿日時 - 2010-01-20 14:05:57

あなたにオススメの質問