Frank Heckenbach a écrit:
I have uploaded the first public beta version of GP to
http://gnu-pascal.de/contrib/frank/misc/gp-0.54.tar.gz.
I have found a bug with --unit-destination-path
In a scratch directory (c:\lombardi\djgpp\gpc\hello) I put a program
hello.pas
-----------------------------------------------
program hello;
uses U;
begin
writeln(OK);
end.
------------------------------------------------
and a unit
U.pas
------------------------------------------------
unit U;
INTERFACE
const OK = 'OK';
IMPLEMENTATION
end.
-----------------------------------------------
I create a subdirectory ./o to store object files
compiling with
redir -eo gp hello.pas -v --unit-destination-path=o > hello.lst
results in the attached file hello.lst
replacing "gp" by "gpc --automake" gives correct results
Maurice
--
Maurice Lombardi
Laboratoire de Spectrometrie Physique,
Universite Joseph Fourier de Grenoble, BP87
38402 Saint Martin d'Heres Cedex FRANCE
Tel: 33 (0)4 76 51 47 51
Fax: 33 (0)4 76 63 54 95
mailto:Maurice.Lombardi@ujf-grenoble.fr
gpc -dumpmachine
gpc -dumpversion
gpc -print-file-name=units
gpc --print-needed-options -x Preprocessed-Pascal c:\djgpp\tmp\GPdaa14630
gpc -I c:\lombardi\djgpp\gpc\hello\o\ -I c:\lombardi\djgpp\gpc\hello\o\ -I . -I C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/units -I c:\lombardi\djgpp\gpc\hello\ --unit-path=c:\lombardi\djgpp\gpc\hello\ -E -H c:\lombardi\djgpp\gpc\hello\hello.pas
gpc -I c:\lombardi\djgpp\gpc\hello\o\ -I c:\lombardi\djgpp\gpc\hello\o\ -I . -I C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/units -I c:\lombardi\djgpp\gpc\hello\ --unit-path=c:\lombardi\djgpp\gpc\hello\ -E -H c:\lombardi\djgpp\gpc\hello\u.pas
gpc -v -I c:\lombardi\djgpp\gpc\hello\o\ -I c:\lombardi\djgpp\gpc\hello\o\ -I . -I C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/units -I c:\lombardi\djgpp\gpc\hello\ --unit-path=c:\lombardi\djgpp\gpc\hello\ --gpi-destination-path=c:\lombardi\djgpp\gpc\hello\o\ --unit-path=--gpi-destination-path=c:\lombardi\djgpp\gpc\hello\o\ --no-automake -c -o c:\lombardi\djgpp\gpc\hello\o\u.o c:\lombardi\djgpp\gpc\hello\u.pas
Reading specs from C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/specs
Configured with: /djgpp/b/gnu/gcc-3.23/configure i586-pc-msdosdjgpp --prefix=/dev/env/DJDIR --disable-nls --enable-languages=pascal --enable-checking
Thread model: single
gpc version 20040516, based on gcc-3.2.3
C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/gpcpp.exe -D__BITS_LITTLE_ENDIAN__=1 -D__BYTES_LITTLE_ENDIAN__=1 -D__WORDS_LITTLE_ENDIAN__=1 -D__NEED_NO_ALIGNMENT__=1 -v -I c:\lombardi\djgpp\gpc\hello\o\ -I c:\lombardi\djgpp\gpc\hello\o\ -I . -I C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/units -I c:\lombardi\djgpp\gpc\hello\ -iprefix C:\DJGPP\BIN../lib/gcc-lib/djgpp/3.23/ -D__GNUC__=3 -D__GNUC_MINOR__=2 -D__GNUC_PATCHLEVEL__=3 -D__GXX_ABI_VERSION=102 -D__MSDOS__ -D__GO32__ -D__DJGPP__=2 -D__unix__ -D__MSDOS__ -D__GO32__ -D__DJGPP__=2 -D__unix__ -Asystem=msdos -Asystem=unix -D__NO_INLINE__ -D__STDC_HOSTED__=1 -Acpu=i386 -Amachine=i386 -Di386 -D__i386 -D__i386__ -D__tune_i586__ -D__tune_pentium__ -DMSDOS -DGO32 -DDJGPP=2 -Dunix -remap -imacros C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/djgpp.ver c:\lombardi\djgpp\gpc\hello\u.pas -funit-path=c:\lombardi\djgpp\gpc\hello\ -fgpi-destination-path=c:\lombardi\djgpp\gpc\hello\o\ -funit-path=--gpi-destination-path=c:\lombardi\djgpp\gpc\hello\o\ -fno-automake -famtmpfile=c:/djgpp/tmp/ccoR4hqf.gpa c:/djgpp/tmp/ccCyZpGk.i
GNU Pascal Compiler PreProcessor version 20040516, based on gcc-3.2.3 (80386, BSD syntax)
{$include "..."} search starts here:
{$include <...>} search starts here:
c:\lombardi\djgpp\gpc\hello\o\
c:\lombardi\djgpp\gpc\hello\o\
.
C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/units
c:\lombardi\djgpp\gpc\hello\
End of search list.
C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/gpc1.exe c:/djgpp/tmp/ccCyZpGk.i -quiet -dumpbase u.pas -version -funit-path=c:\lombardi\djgpp\gpc\hello\ -fgpi-destination-path=c:\lombardi\djgpp\gpc\hello\o\ -funit-path=--gpi-destination-path=c:\lombardi\djgpp\gpc\hello\o\ -fno-automake -famtmpfile=c:/djgpp/tmp/ccoR4hqf.gpa -o c:/djgpp/tmp/ccQfUxWp.s
GNU Pascal version is actually 20040516, based on gcc-3.2.3
GNU Pascal version 3.2.3 (djgpp)
compiled by GNU C version 3.2.3.
c:/djgpp/bin/as.exe --traditional-format -o c:\lombardi\djgpp\gpc\hello\o\u.o c:/djgpp/tmp/ccQfUxWp.s
gpc -v -I c:\lombardi\djgpp\gpc\hello\o\ -I c:\lombardi\djgpp\gpc\hello\o\ -I . -I C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/units -I c:\lombardi\djgpp\gpc\hello\ --unit-path=c:\lombardi\djgpp\gpc\hello\ --gpi-destination-path=c:\lombardi\djgpp\gpc\hello\o\ --unit-path=--gpi-destination-path=c:\lombardi\djgpp\gpc\hello\o\ --no-automake -c -o c:\lombardi\djgpp\gpc\hello\o\hello.o c:\lombardi\djgpp\gpc\hello\hello.pas
Reading specs from C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/specs
Configured with: /djgpp/b/gnu/gcc-3.23/configure i586-pc-msdosdjgpp --prefix=/dev/env/DJDIR --disable-nls --enable-languages=pascal --enable-checking
Thread model: single
gpc version 20040516, based on gcc-3.2.3
C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/gpcpp.exe -D__BITS_LITTLE_ENDIAN__=1 -D__BYTES_LITTLE_ENDIAN__=1 -D__WORDS_LITTLE_ENDIAN__=1 -D__NEED_NO_ALIGNMENT__=1 -v -I c:\lombardi\djgpp\gpc\hello\o\ -I c:\lombardi\djgpp\gpc\hello\o\ -I . -I C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/units -I c:\lombardi\djgpp\gpc\hello\ -iprefix C:\DJGPP\BIN../lib/gcc-lib/djgpp/3.23/ -D__GNUC__=3 -D__GNUC_MINOR__=2 -D__GNUC_PATCHLEVEL__=3 -D__GXX_ABI_VERSION=102 -D__MSDOS__ -D__GO32__ -D__DJGPP__=2 -D__unix__ -D__MSDOS__ -D__GO32__ -D__DJGPP__=2 -D__unix__ -Asystem=msdos -Asystem=unix -D__NO_INLINE__ -D__STDC_HOSTED__=1 -Acpu=i386 -Amachine=i386 -Di386 -D__i386 -D__i386__ -D__tune_i586__ -D__tune_pentium__ -DMSDOS -DGO32 -DDJGPP=2 -Dunix -remap -imacros C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/djgpp.ver c:\lombardi\djgpp\gpc\hello\hello.pas -funit-path=c:\lombardi\djgpp\gpc\hello\ -fgpi-destination-path=c:\lombardi\djgpp\gpc\hello\o\ -funit-path=--gpi-destination-path=c:\lombardi\djgpp\gpc\hello\o\ -fno-automake -famtmpfile=c:/djgpp/tmp/ccFZtZzr.gpa c:/djgpp/tmp/ccaPNOZI.i
GNU Pascal Compiler PreProcessor version 20040516, based on gcc-3.2.3 (80386, BSD syntax)
{$include "..."} search starts here:
{$include <...>} search starts here:
c:\lombardi\djgpp\gpc\hello\o\
c:\lombardi\djgpp\gpc\hello\o\
.
C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/units
c:\lombardi\djgpp\gpc\hello\
End of search list.
C:/DJGPP/BIN/../lib/gcc-lib/djgpp/3.23/gpc1.exe c:/djgpp/tmp/ccaPNOZI.i -quiet -dumpbase hello.pas -version -funit-path=c:\lombardi\djgpp\gpc\hello\ -fgpi-destination-path=c:\lombardi\djgpp\gpc\hello\o\ -funit-path=--gpi-destination-path=c:\lombardi\djgpp\gpc\hello\o\ -fno-automake -famtmpfile=c:/djgpp/tmp/ccFZtZzr.gpa -o c:/djgpp/tmp/ccFE7Dp0.s
GNU Pascal version is actually 20040516, based on gcc-3.2.3
GNU Pascal version 3.2.3 (djgpp)
compiled by GNU C version 3.2.3.
c:\lombardi\djgpp\gpc\hello\hello.pas:3: module/unit interface `U' could not be imported