2つのパソコンでビルドしたモジュールのサイズが
異なっているので質問です。
VC++6.0、Windows2000、プラットフォームSDK、
という同じ環境で同じソース、同じライブラリ
同じDLLを使用して作ったモジュールの
サイズ(exeのサイズ)が20KByteも違います。
原因がわからずに困っています。
どなたかご意見ください。
・ソース、ライブラリ、DLLはすべて同じです。
・VCのバージョン、サービスパックなど外部の
環境のバージョンは同じものを使っています。
・VCの[プロジェクト]-[設定]は、すべて同じです。
・OSは、Windows2000を使っているというところまでは、
同じで、それ以上のことは、不明です。
・異なるメーカーのパソコンを使っています。
・そのため、CPUやパソコンの性能も異なります。
・サービスパックが違っている
>・OSは、Windows2000を使っているというところまでは、
> 同じで、それ以上のことは、不明です。
・この不明なところが違っている
インクリメンタルリンクを行っているとか。
リビルドしても同じにならないのでしょうか?
>・VCの[プロジェクト]-[設定]は、すべて同じです。
設定は同じでも、DebugとReleaseの違いだったりとか?
皆さんありがとうございます。
不良PGさん、いつもありがとうございます。
サービスパックは、違ってました。(Windowsの)
ついでにIEも違ってました。
違っているからといってプログラムのサイズが
変わるとは思えませんが・・・
dairygoodsさん、ありがとうございます。
リビルドしても同じでした。何度もしてます。
ひろさん、ありがとうございます。
前述のように設定はまったく一緒で、
リリースならリリースどうしのサイズが違います。
デバッグも同様にサイズが違います。
ある人に聞いたのですが、リンクしているファイルを
吐き出してくれるメイクファイル?を比較すればわかると
聞いたのですが、、、
VCで作ってみたのですがどう扱っていいものやら、
大きく違ったものが出来上がってしまいました。
他に心当たりがある方、また、メイクファイルについて
ご存知な方ご一報下さい。
よろしくお願いします。
>メイクファイル
の共通していない部分、簡単に列挙してみてください
割と広範囲のものなので?
woodさんありがとうございます。
メイクファイルですが、.makのことでいいのですよね。
.makファイルの中身は、同じでした。ごめんなさい。
僕の勘違いです。しかし、.depファイルが大きく異なっていました。
これは、何ですか?
.depファイルの違いですが、
実行モジュールA・・・サイズがでっかいほう
実行モジュールB・・・サイズが小さいほう
として列挙します。
○パス名の前に{$(INCLUDE)}という文字が必ずついている
例1)
・実行モジュールA
{$(INCLUDE)}..\Headers\DlgA.h\
・実行モジュールB
..\Headers\DlgA.h\
例2)
・実行モジュールA
{$(INCLUDE)}Sub\Modjle1.h\
・実行モジュールB
.\Sub\Module1.h\
○プラットフォームSDKのファイルパスがきられていない
・実行モジュールA
パスがきられていない
・実行モジュールB
c:\program files\microsoft platform sdk\include\basetsd.h\
※ちなみにフォルダの構成は、
-+-[Headers]-DlgA.h
|
+-[dswなどのファイル]-+-[Sub]-Module1.h
|
+-
解決しました。
フォルダ構成が違っていたためです。
カレントとなるフォルダまでのディレクトリ構成が
違っていたからです。つまり、
.dswファイルがあるフォルダまでのディレクトリ
構成が違ってたからです。
お騒がせしました。
どこかで絶対パスをもっているため?に
実行モジュールのサイズが違っていたようです。
皆さんありがとうございました。