GNU Pascal Homepage - gpc - gpc-announce - gpc-de - gpc-doc
Diese Seite auf deutsch

Mail #14595

Back to main page of archive

Previous mail   Next mail   Unformatted/full headers
Overview  10 days   Subject   Date   Thread   Author  

From: Maurice Lombardi
Subject: Hi everyone - got a question about GPC
Date: 16 Feb 2010, 18:45:51

Rugxulo a écrit :
> 
>>> 2). DJGPP has a habit of making both "blah" and "blah.exe" when you
>>> type "gpc blah.pas -o blah". This also affects your GP program. It's
>>> really only useful with *nix makefiles (so the target and file will be
>>> recognized), but it's pretty useless and annoying otherwise.
>> AFAIR, "blah" is the COFF executable which can be called from other
>> DJGPP programs,
> 
> Honestly, nobody uses plain COFF files anymore. That's a relic from
> when a separate GO32.EXE was needed (DJGPP v1). But DJGPP can "call"
> (run) either plain COFF or .EXEs anyways.
> 
>> and "blah.exe" is prefixed with a DOS loader (which
>> is done by the "stubify" program), so it can be called from plain
>> DOS programs as well. So depending on your needs, either or both may
>> be useful.
>>
>> But it's been long since I've used DJGPP, so in case this was
>> inaccurate or incomplete, Maurice will correct me, I hope.
> 
> You're right in that it used to be that way. But somewhere along the
> line it changed. I'm not sure if it's correct, but I *think* BinUtils
> (e.g. LD) handles it differently now. At least, using DJGPP 2.04, GCC
> 4.4.2, LD 2.19.1, 'gcc -s -O blah.c -o blah" (simple "Hello, World!"
> example) produces "blah" and "blah.exe" that are 100% identical (with
> stub, i.e. both in .EXE format).

Correct, this was not the case for gcc 3.4.4 I use as backend for gpc.

In fact for that reason, in my personal works I always use the option -o 
blah.exe.
This causes no extra typing because I work in an editor able to launch a 
compiler with a single click through a script like

#! /bin/sh
echo $MSYSTEM
gp $(basename "$1" | tr [A-Z] [a-z]) \
	-o $(basename "$1" | sed -e 's/\(.*\)\.[^.]*$/\1\.exe/') \
	$2 -march=prescott \
	--unit-path=. --unit-path=c:/lombardi/$MSYSTEM/gpc/pascal_u \
         --unit-path=c:/$MSYSTEM/units \
         --unit-destination-path=c:/lombardi/$MSYSTEM/o \
	`head -n 1 "$1" | sed -e '/^[^"]*$/d;s/^[^"]*"//;s/"[^"]*$//'` \
	2>&1 | sed ':1;s,/[^/.][^/]*/\.\./,/,;t 1'

MSYSTEM is either DJGPP or MINGW (set when launching the editor)
$2 is --autobuild or nothing
the next to last line recovers extra compilation parameters, program 
dependent, which are putted in the first line between two " " as a 
Pascal comment between {}
the last line (borrowed from mingw HOWTO) takes care of the annoying 
../../ which are interspersed in pathes especially when you use the -v 
option
All this depends on your habits in files organisation, default 
parameters if any etc

As editor I have used in DOS/Windows TextPad, FPE, Context (which gave 
me the idea of the parameters in the first line, in which it is built 
in) and in Linux gedit, SCite (others more common editors are too C and 
makefile oriented: there is really no reason now to use a makefile in 
pascal).
These editors (at least those I use now) generate an error buffer and 
are able to open directly the proper file and put the carret at proper 
place when clicking on an error message.
Very probably there are many others (I never tried OS X for example), 
and many are free.

Maurice

Previous mail   Next mail   Unformatted/full headers
Overview  10 days   Subject   Date   Thread   Author  


Replies

Author Subject Date
Rugxulo Hi everyone - got a question about GPC 16 Feb 2010, 14:09:32
Maurice Lombardi Hi everyone - got a question about GPC 17 Feb 2010, 12:08:48
Frank Heckenbach Hi everyone - got a question about GPC 18 Feb 2010, 07:48:00
Rugxulo Hi everyone - got a question about GPC 18 Feb 2010, 14:24:35

In reply to

Author Subject Date
Martin Liddle Hi everyone - got a question about GPC 13 Feb 2010, 13:32:54
Frank Heckenbach Hi everyone - got a question about GPC 14 Feb 2010, 02:33:37
Rugxulo Hi everyone - got a question about GPC 14 Feb 2010, 18:23:22
Frank Heckenbach Hi everyone - got a question about GPC 15 Feb 2010, 23:11:19
Rugxulo Hi everyone - got a question about GPC 15 Feb 2010, 23:53:09

Back to main page of archive


Note: This page contains information that does not originate from the owner of this web site, but from the authors of the mails archived. The owner of this web site is not responsible for the content of such information. Any use of that infomation requires the consent of the respective author.

Where WWW addresses (URLs) in the mails archived are marked as hyperlinks, this is only for the comfort of the reader. The content of the web pages linked to like this does not necessarily reflect the opinion of the owner of this web site or of the authors of the mails archived. The owner of this web site is not responsible for the content of such web pages. Those pages are explicitly not to be considered as part of the content of this page, but merely as references.


This page was created by Crystal 0.999 (Linux 2.4.27/i686).