
場違いならすみません。
Visual Studio .NET 2003を使って今卒業研究(C++)をしています。
少し前から気になっていることなのですが例えばビルド時に「error LNK2001: 外部シンボル "~~" は未解決です」と出たとします。
そして修正が「ヘッダファイル」の場合、ビルドすると修正は出来ているのに同じエラーが出ます。
リビルドするとエラーはなくなるのですが…
これは仕様なのでしょうか?
それとも単に私がビルドの仕組みを理解してないだけなのでしょうか。
以前にもプログラムを書いていた時何度修正してビルドしても同じエラーが出るので試しにリビルドするとすんなりうまくいったなんて事もあったのでとても気になっていました。
分かりにくい説明かもしれませんが何か分かる方教えていただけませんか?
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
ビルドでは、ブラウザでいうなればキャッシュがきいている状態のときがあります。
リビルドは、キャッシュを無視して更新状態なので、全て再コンパイルすると。
特にソースファイル自体ではなく、ヘッダファイルのみ更新した場合は、ソースファイルは更新されてねーやってことで、ビルドではビルドしなおしてくれなかったりすることがあります。
アドバイスありがとうございます。
リビルドした時「中間ファイルを削除しています」みたいのが出ますがあれがブラウザでいうキャッシュを削除してるみたいな感じですね。
No.3
- 回答日時:
ヘッダに限るということなら、中間ファイルは
.pch プリコンパイルヘッダ
が原因かな。
私もVC6で似たようなことがあって、その時はpchを作らないように変更してしまいました。
通常問題ないんですが。
コンパイルが遅くなりますが、マシンの速度とか作るプログラムのサイズによりますから。
余程大きなプログラムサイズでないと気にならないでしょう。
そのわずかな時間より不可解な動作の方が余程気になりますし。
原因はわかりません。Microsoftだしと諦めてます(^^;
後はファイルの修正とコンパイルのマシンが違ったり、
なんらかの理由で時間が狂っていたりすると、
修正したファイルの方が古いということになって
コンパイルされないとか、毎回コンパイルされるとかありますね。
アドバイスありがとうございます。
そんなに大きなプログラムでもないのでその方法も一度試してみたいと思います。
少し前は私もVC6を使っていたのですがあの時に比べ細かい事でもコンパイルエラー出るようになったり時々謎な動作がある時あります。(このマシンが古いのもありますが)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows 10 Visual StudioとVisual C++ Build Toolsについて 1 2023/04/16 03:42
- C言語・C++・C# visual studio 2019において、宣言していない変数があるのにエラーなくビルド出来ました 6 2023/03/08 16:32
- C言語・C++・C# PCの性能とビルド時間 4 2022/11/14 19:23
- その他(プログラミング・Web制作) cryptcatのビルド 4 2022/07/21 14:55
- PostgreSQL DBFluteについて質問です。 環境:PostgreSQL java8 前提:webアプリケーショ 1 2022/07/07 00:49
- Excel(エクセル) マクロの付いたExcelが開けません 3 2023/02/01 10:54
- Windows 10 数年前からWindows10 の Update ができないです。なぜですか? 7 2022/11/09 06:03
- Outlook(アウトルック) outlookの送信エラーについて 1 2022/05/13 12:04
- Excel(エクセル) Excelフアイルのセルに入力できない 3 2022/03/26 19:04
- その他(パソコン・周辺機器) デバイスのペアリングのウィンドウサイズがおかしい 1 2023/01/18 18:48
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VisualStudio2022でC言語プログ...
-
逆コンパイルと逆アセンブルの...
-
c言語
-
CPUが16bitでも32bitOSでコンパ...
-
gccを行ってもexeファイルが生...
-
C++でデスクトップGUIアプリ開...
-
大量のデータを読み込んで表示...
-
c言語でイベントフラグを使った...
-
Windows Formアプリからコンソ...
-
visual studio 2022でのC#プロ...
-
c#のTLS1.2での通信について
-
プログラミング言語でアプリや...
-
プログラムの実行時に'<'でリダ...
-
終端記号、非終端記号とは
-
gcc13.2のバグ?
-
写真のプログラムは、1からnま...
-
変数名を引数として渡す、アド...
-
ポインタの宣言方法
-
VisualStudioでC++クラスを追加...
-
C言語の関数のextern宣言
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
visual studio 2022でのC#プロ...
-
Windows Formアプリからコンソ...
-
大量のデータを読み込んで表示...
-
C言語の関数のextern宣言
-
C#でログファイルにファイルパ...
-
【C言語】全角文字の配列を、全...
-
略語の読み方について
-
プログラマー達は何故、プログ...
-
C#でTreeViewのCheckBoxのサイ...
-
gccを行ってもexeファイルが生...
-
c言語でイベントフラグを使った...
-
VisualStudio2022でC言語プログ...
-
Python、プログラミングについ...
-
C言語 列挙型(enum型)変数について
-
VisualStudioでC++クラスを追加...
-
int16_t の _t は何?
-
Notepad++の関数リスト表示の変...
-
コンソールアプリを作成するの...
-
逆コンパイルと逆アセンブルの...
-
MACで動く実行ファイルをWindow...
おすすめ情報