9

Delphi XE2をインストールした後、コマンドラインコンパイラdcc32.exeを試して、簡単なプログラムをコンパイルします。

program test;

uses SysUtils;

begin
end.

コマンドラインコンパイラはエラーを表示します:

c:> dcc32.exe test.dpr
Embarcadero Delphi for Win32コンパイラバージョン23.0Copyright(c)1983,2011 Embarcadero Technologies、Inc.
test.dpr(3)致命的:F1026ファイルが見つかりません:'SysUtils.dcu'

これはDelphiXEでは発生しません。

4

4 に答える 4

29

コマンドライン(dcc32.cfgなし)を使用するだけの場合、探しているコマンドラインパラメーターは-NSで、検索する名前空間を指定します...

したがって、次のようなものになります。

dcc32.exe -NSsystem;vcl test.dpr

これにより、コンパイラは名前空間SystemVCL名前空間のユニットを検索するようになります(複数の名前空間を追加する方法を示すためにVCLが追加されました)。

この情報は、エンバカデロディスカッションフォーラムで見つかりました。XE2をまだ持っていないので、テストできませんでした。

于 2011-09-07T08:16:43.283 に答える
13

RTLおよびVCLの新しい名前空間のため、コンパイラーに追加のコマンドラインパラメーターを指定する必要があります。「-NSSystem;System.Win;WinAPI; Vcl; Vcl.Imaging; Data」を試して、必要に応じて他の名前空間を追加してください。

于 2011-09-07T08:10:17.390 に答える
9

それがあなたの直接の質問に対する答えではないことは知っていますが(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
于 2011-09-07T08:05:19.617 に答える
-1

Hewlett Packard PCまたはラップトップを使用している場合は、おそらく「プラットフォーム」環境設定を削除する必要があります(Windowsの場合)。事前構成された(工場出荷時の)HP windows7には、(理由は不明ですが)環境変数Platform=AnyCPUがあります。これはDelphiXE2に影響します。私は昨夜この議論を見つけました、それは私を助けました: https ://forums.embarcadero.com/thread.jspa?messageID=387525&tstart=0 その修正なしでは、私は何もコンパイルすることができませんでした。VCLとFireMonkeyでチョークしますが、64ビットと32ビットのどちらをターゲットにしても問題ありませんでした。

于 2011-09-07T12:20:38.563 に答える