Delphi XE2:DCC32.exeを使用して簡単なプログラムをコンパイルする失敗
-
27-10-2019 - |
質問
Delphi XE2をインストールした後、コマンドラインコンパイラDCC32.exeを試して、簡単なプログラムをコンパイルしてみます。
program test;
uses SysUtils;
begin
end.
コマンドラインコンパイラは私にエラーを表示します:
C:> dcc32.exe test.dpr
Win32コンパイラバージョン23.0 Copyright(c)1983,2011 Embarcadero Technologies、Inc。のEmbarcadero Delphi
test.dpr(3)致命的:F1026ファイルが見つかりません: 'sysutils.dcu' '
これはDelphi Xeには起こりません。
解決
コマンドライン(DCC32.cfgなし)を使用するだけの場合、探しているコマンドラインパラメーターは-nsです。
だから、あなたはこのようなものを持っているでしょう:
dcc32.exe -NSsystem;vcl test.dpr
これにより、コンパイラがのユニットを探してもらう必要があります System
と VCL
名前空間(VCLが追加され、複数の名前空間を追加する方法を示す)。
この情報はに見つかりました EmbarCaderoディスカッションフォーラム. 。まだXE2を持っていないので、テストできませんでした。
他のヒント
RTLおよびVCLの新しい名前空間により、コンパイラに追加のコマンドラインパラメーターを指定する必要があります。 "-nssystem; system.win; winapi; vcl; vcl.imaging; data"を試し、必要に応じて他の名前空間を追加してください。
私はそれがあなたの直接の質問に対する答えではないことを知っています(UWEとNATにはそれをカバーしています)が、MSBUILDで構築する方がはるかに良いでしょう。そうすれば、.dprojファイルのすべての設定を選択します。
ビルドコマンドは次のようになります。
msbuild test.dproj /t:Rebuild /p:Config=Release
バッチスクリプトからこれを構築している場合、正しいことを確認できることを確認する必要があります msbuild
. 。このようにしてください:
call "path\to\delphi\installation\bin\rsvars.bat"
msbuild test.dproj /t:Rebuild /p:Config=Release
Hewlett Packard PCまたはラップトップを使用している場合は、おそらく「プラットフォーム」環境設定(Windows)を削除する必要があります。事前に構成された(工場)HP Windows7には(私には不明な理由で)環境変数プラットフォーム= AnyCPUがあります。これはDelphi XE2に影響します。昨夜この議論を見つけました。https://forums.embarcadero.com/thread.jspa?messageid=387525&tstart=0その修正がなければ、私は何もコンパイルすることができませんでした。 VCLとFiremonkeyで窒息するでしょうが、64ビットまたは32ビットをターゲットにしても問題ありませんでした。