【发布时间】:2012-09-03 07:32:00
【问题描述】:
我正在尝试让 Hudson 与我的 Delphi 项目一起工作。我正在使用以下批处理文件来构建我的项目(如blog post 中所建议的那样):
call "C:\Program Files\Embarcadero\RAD Studio\8.0\bin\rsvars.bat"
msbuild /p:Win32LibraryPath="$(BDS)\lib;$(BDS)\lib\win32\release;$(BDS)\lib\win32\debug;$(BDSUSERDIR)\Imports;$(BDS)\Imports;$(BDSCOMMONDIR)\Dcp;$(BDS)\include;" /t:build /p:config=Debug /verbosity:detailed "MyProject\src\MyProject.dproj"
if errorlevel 1 exit 1
我总是以错误告终
Embarcadero Delphi for Win32 compiler version 22.0
Copyright (c) 1983,2010 Embarcadero Technologies, Inc.
Fatal: E2202 Required package 'rtl' not found
我不明白这一点,因为 rtl.dcp 在库路径上的“$(BDS)\lib\win32\release”中。顺便说一句,我正在使用运行时包。
任何提示我可以做些什么来解决这个问题?
编辑似乎路径并没有在命令行中结束,看起来像(在删除项目特定路径之后):
C:\Program Files\Embarcadero\RAD Studio\8.0\bin\dcc32.exe -$O- -$W+ --inline:off -$A4 -$R+ -$Q+ --doc --no-config -B -LUrtl;vcl;ReportingR;ComponentsR -Q -AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE -DDEBUG;CONSTRAINT_CHECKING;_VER6;EUREKALOG_VER6;EurekaLog -V -VN -GD --drc -W-SYMBOL_DEPRECATED -W-SYMBOL_PLATFORM -W-UNIT_PLATFORM -W-UNIT_DEPRECATED Myproject.dpr
【问题讨论】:
-
尝试 sysinternals 进程监视器以获取尝试的路径和位置。这些变量是否被扩展以及扩展至哪些值。
-
@Arioch'关于我如何做到这一点的任何更具体的提示?我应该看哪个过程?究竟要注意什么?
-
为什么要设置
Win32LibraryPath? rsvars.bat 不这样做吗? -
@David: rsvars.bat 设置 $BSD、$BSDCOMMONDIR、$PATH 和一些 .NET 框架的东西
-
所有参与构建过程的过程。当你从 IDE 和你的 bat 中调用它们时比较命令行和配置文件
标签: delphi continuous-integration hudson delphi-xe