BUG: Makefile
Posted: Sat 22 Mar 2008 12:46
ATTN: Developers
There is a bug in your makefile at the path Source\Make.bat of your latest sources v6.25.2.14 (and in earlier versions).
When the Delphi IDE is installed under non standard path, any *.dcp file
DOES NOT have its creation path defined.
For Example when the make.bat Line 94 issues the command:
This is because you forgot to sepecify the output path for the *.dcp files !!!
The option -LE does NOT tell the compiler where to put the *.dcp files. See:
http://safari.oreilly.com/1565926595/appa-1-fm2xml
You should add the -LN option which exists exactly for this purpose.
Like this:
I would suggest that you add the -LN. option not only to this line, but anywhere where *.dcp file gets created.
I tried this on Delphi 7 ( of course I corrected the IDE path in Source\Delphi7\Make.bat file)
I am enlosing the full debug output of the orignal Source\Make.bat file.
I enabled the Echo On.
Regards,
Horace
P.S.
Below is an additional BENIGN error in the makefile.
Despite compiling for Delphi7 VCL, the makefile attempts to copy *.hpp files which belong to CBuilder.
This error gives the false impression that something went wrong in the makefile for users that never worked with CBuilder and have no idea about *.hpp files.
There is a bug in your makefile at the path Source\Make.bat of your latest sources v6.25.2.14 (and in earlier versions).
When the Delphi IDE is installed under non standard path, any *.dcp file
DOES NOT have its creation path defined.
For Example when the make.bat Line 94 issues the command:
The following error occurs:"L:\Delphi7\Bin\dcc32.exe" -LE. dacvcl70.dpk
Code: Select all
Fatal: Could not create output file 'e:\default_programs\borland\delphi7\Projects\Bpl\dacvcl70.dcp'The option -LE does NOT tell the compiler where to put the *.dcp files. See:
http://safari.oreilly.com/1565926595/appa-1-fm2xml
You should add the -LN option which exists exactly for this purpose.
Like this:
Code: Select all
"L:\Delphi7\Bin\dcc32.exe" -LE. -LN. dacvcl70.dpkI tried this on Delphi 7 ( of course I corrected the IDE path in Source\Delphi7\Make.bat file)
I am enlosing the full debug output of the orignal Source\Make.bat file.
I enabled the Echo On.
Regards,
Horace
Code: Select all
rem *****************************************
*****************************
rem *
rem * ODAC
rem *
rem * Tasks:
rem * 1) Compile DAC packages;
rem * 2) Compile CRControls package;
rem * 2) Compile ODAC packages;
rem *
rem * Command line:
rem * call ..\_Make.bat IDEName IDEVer CLR
rem *
rem * Parameters:
rem * IDEName = (Delphi, CBuilder)
rem * IDEVer = (5, 6, 7, 8, 9, 10, 11)
rem * CLR = (CLR, WIN32) WIN32 - default
rem *****************************************
*****************************
rem Prepare =================================
=============================
rem =========================================
=============================
set IDEName=Delphi
set IDEVer=7
set CLR=
set PrjName=Odac
set PrjNameL=odac
set PrjNameU=ODAC
pushd
rem Test IDEName
if DelphiA == DelphiA goto IDENameOK
rem Test IDEVer
if 7A == 5A goto IDEVerOK
if 7A == 6A goto IDEVerOK
if 7A == 7A goto IDEVerOK
set PkgVer=70
rem Test CLR
if A == CLRA goto CLROK
set CLR=WIN32
rem Make paths ==============================
=============================
rem Create common paths
mkdir Odac
mkdir Odac\Lib
mkdir Odac\CRGrid
if 7A == 10A mkdir Odac\Include
rem Create CBuilder specific paths
if DelphiA == DelphiA goto SkipCBPaths
rem del /Q/S Odac\*.*
if DelphiA == CBuilderA goto CBuilder
if WIN32A == CLRA goto Delphi8
rem Compile =================================
=============================
rem Compile DAC packages ====================
=============================
"L:\Delphi7\Bin\dcc32.exe" -LE. dac70.dpk
Borland Delphi Version 15.0
Copyright (c) 1983,2002 Borland Software Corporation
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\CLRClasses.pas(1173)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\DAConsts.pas(122)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\MemUtils.pas(1811)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\MTSCall.pas(271)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\CRParser.pas(1056)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\MemData.pas(9159)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\CRConnectionPool.pas(726)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\CRAccess.pas(2129)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\CRXml.pas(1047)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\MemDS.pas(4019)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Win32Timer.pas(165)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\DBMonitorIntf.pas(118)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\DBMonitorClient.pas(140)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\DASQLMonitor.pas(1142)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\DBAccess.pas(11284)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\DALoader.pas(621)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\VirtualTable.pas(2005)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\DacVer.inc(5)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\DAVersionInfo.pas(45)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\DAScript.pas(988)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\DADump.pas(417)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\CRBatchMove.pas(695)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\DATransaction.pas(311)
dac70.dpk(58)
43989 lines, 0.58 seconds, 309856 bytes code, 1005 bytes data.
if 7A == 4A goto SkipDVcl
if 7A == 5A goto SkipDVcl
"L:\Delphi7\Bin\dcc32.exe" -LE. dacvcl70.dpk **** THE PROBLEM IS HERE. The -LN. option is MISSING ***
Borland Delphi Version 15.0
Copyright (c) 1983,2002 Borland Software Corporation
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\Dac.inc(224)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\DacGui.inc(459)
G:\!\DEV\Delphi\Multiversion Components\ODAC\v6.25.2.14\src\Source\DacVcl.pas(17)
dacvcl70.dpk(37)
Fatal: Could not create output file ''e:\default_programs\borland\delphi7\Projects\Bpl\dacvcl70.dcp'
pause
Press any key to continue . . .Below is an additional BENIGN error in the makefile.
Despite compiling for Delphi7 VCL, the makefile attempts to copy *.hpp files which belong to CBuilder.
This error gives the false impression that something went wrong in the makefile for users that never worked with CBuilder and have no idea about *.hpp files.
Code: Select all
copy ..\..\CRGrid\Source\CRControlsReg.hpp Odac\Include
The system cannot find the file specified.
copy ..\..\CRGrid\Source\CRGrid.hpp Odac\Include
The system cannot find the file specified.
if not 7A == 10A goto SkipD10BCCLib
goto end
popd