
Win7 64bit
VC++ 2010 Express
で、
fatal error LNK1112: モジュールのコンピューターの種類 'x64' は対象コンピューターの種類 'X86' と競合しています。
というエラーが出てコンパイルが最後まで行きません。
もちろんライブラリはすべて 64ビット版 を指定したつもりです。
エラーメッセージから見ると、対象コンピュータが32ビットとリンカーに誤認識されているようなのですが、誤解が解ければ解決する気がしています。
が、その修正のやり方がわかりません。
No.2ベストアンサー
- 回答日時:
環境があるわけではないので適当に検索かけた結果だけ張っておきます
後はご自分で確認してください(以下は2008の場合らしいですが多分同じでしょう)
1.ツール→オプションで出てくるウィンドウ左下の「すべての設定を表示(A)」をチェック
2.同オプション画面のプロジェクトおよびソリューション→全般にある「ビルド構成の詳細を表示(I)」にチェック!
3.ソリューションのプロパティに「構成プロパティ」「構成マネージャ」が出てくる
更なる回答ありがとうございます。
>1.ツール→オプションで出てくるウィンドウ左下の「すべての設定を表示(A)」をチェック
ここでつまずきました。
で、http://d.hatena.ne.jp/torutk/20100927/p1 に以下の記述を発見しました。
ーーーーーーーーーーー
Visual C++ 2010 Expressは32bitコンパイルのみ提供されていますが、別途Windows SDKを追加することで、64bitコンパイルができるようになります。
ーーーーーーーーーーー
ということで、Windows SDKを追加し、
新規プロジェクト(Win32コンソール)を作成
「構成マネージャ」の[アクティブソリューションプラットフォーム]欄をドロップダウン
[Win32]を[x64]に変更
でうまくいきました。
ありがとうございました。
No.3
- 回答日時:
「VC++ 2010 Express 64Bit」で検索すると…いくつか見つかりますね。
回答ありがとうございます。
この検索結果は見ましたが、記載された記事と同じに設定できなくて、質問しました。
そんな中、先ほど、http://d.hatena.ne.jp/torutk/20100927/p1 に
ーーーー
Visual C++ 2010 Expressは32bitコンパイルのみ提供されていますが、別途Windows SDKを追加することで、64bitコンパイルができるようになります。
ーーーーー
の記載を発見し、早速 Windows SDKを追加したところ、記事に記載された操作
新規プロジェクト(Win32コンソール)を作成
「構成マネージャ」の[アクティブソリューションプラットフォーム]欄をドロップダウン
[Win32]を[x64]に変更
ができるようになりました。
ありがとうございました。
No.1
- 回答日時:
>ライブラリはすべて 64ビット版 を指定
これはいいと思いますが コンパイルオプションもターケッドを64ビットにしてますよね?
コンパイルするPCが64ビットだから64ビットになるわけではありませんので念のため
コマンドラインオプションとしては /MACHINE:X64 になっていなければいけません
どこかに32ビット指定のものが混ざっているのは間違いないと思います
回答ありがとうございます。
>コンパイルするPCが64ビットだから64ビットになるわけではありませんので念のため
なるほど。自動的に64ビットと認識されるのではなく、どこかで64ビットだと設定しなければいけないのですね。
回答を読んで、設定方法を探したのですが、探し方が悪いのだと思いますが、見つかりません。
すいませんが、VC++ 2010 Express のどのメニューのどのボタンで設定するのか今一度教えていただきたいです。
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ILSpyで、デコンパイルできない。
-
エクセルVBAではRound...
-
相互に参照する構造体について
-
OpenCVを Borland C++ Builder...
-
C言語をコンパイル後の膨大なフ...
-
C言語でMIDIを鳴らしたいです。
-
DirectX9SDKが入ってるPCでDi...
-
VBAを何回も作り直して、容量が...
-
外部シンボル "_main"は未解決です
-
漢字のコメントをはずすとコン...
-
windowsでLinuxで作成したソー...
-
戻り値について
-
python エラー
-
エクセルのエラーメッセージ「4...
-
<unistd.h>をVisualStudioでつ...
-
Arduinoに関する質問
-
リリースモードとデバッグモー...
-
C++でデスクトップGUIアプリ開...
-
組込みC開発
-
c言語です コンパイルした時に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
” OS ビルド ” の意味が分か...
-
VBAを何回も作り直して、容量が...
-
エクセルVBAではRound...
-
Makefile作成時の拡張子.oとは?
-
「fatal error C1189」を回避す...
-
C言語でヘッダファイルにグロー...
-
ILSpyで、デコンパイルできない。
-
<math.h>があるのにsqrtが・...
-
外部シンボル "_main"は未解決です
-
マクロ コンパイルがグレーバック
-
セミコロンについて
-
コンパイルエラー:ユーザ定義...
-
【VC++6.0(MFC)】警告「LINK : ...
-
1 つ以上の複数回定義されてい...
-
VB6とInputManソフトの関係
-
C言語でmからnまでの合計を求め...
-
ExcelVBAで『ByRef 引数の型が...
-
コンパイルに失敗しました、と...
-
漢字のコメントをはずすとコン...
-
C言語のコンパイルができません
おすすめ情報