[fpc-pascal] fpc and intel vtune (now about gprof)

Jonas Maebe jonas.maebe at elis.ugent.be
Tue Apr 25 14:32:31 CEST 2006

On 25 apr 2006, at 14:13, Пётр Косаревский wrote:

>> No, except that you have to provide its runtime libraries.
> Well (guess), if you mean, that libc.dll is a part of cygwin, it's  
> not a bad idea, but "-lc" thing doesn't look like a rebus or a  
> charade, it's like an enigma:)

-lc means "link the library with the name 'c'", and this library will  
most likely be called either libc.a or libc.dll, and be part of the  
cygwin distribution. But you don't have to install an entire cygwin  
environment and/or use the compiler in it. Just put its libc.a/.dll  
somewhere and make sure the compiler can find it by passing its  
directory via -Fl

> You are probably right!
> But releases and snapshots don't differ much in their size, so I  
> didn't expect that about 3% (as.exe and ld.exe) would be dropped   
> intentionally (because they are needed for functionality). On the  
> other hand, these utilities are not made by FPC folk. It seems to  
> be the reason for me...

The reason is that snapshots are only intended to install over  
releases, and that it doesn't make sense to include those same  
utilities every time.

>> Use -Mdelphi (or {MODE DELPHI}) if you want compatibility to  
>> Delphi. Use
>> of GOTO (and some other constructs supported by Delphi) isn't  
>> considered a
>> good programming practice, so it isn't supported by default in  
>> native FPC
>> modes. If you want to use GOTO in these modes, you need to supply -Sg
>> explicitely.
> Well, IT CHANGED, I didn't need to use this option before, it  
> contradicts at least my expectations of objfpc mode.

The only thing that changed was that -Sg is now on by default in  
Delphi and TP modes. It was previously always off by default in all  
modes, so nothing changed for the other modes. It is however turned  
on by the default fpc.cfg file.

So if somethign changed, it's probably because your fpc.cfg  
configuration files was changed or is not found by your current  
compiler (maybe you installed the snapshot in a separate directory,  
and I don't think there is a global location under Windows where we  
put an fpc.cfg -- releases put the fpc.cfg file in the same directory  
as the compiler under Windows).

>>> Is it normal, that with e.g. "-va" switch I see verbosely what was
>>> processed before "-va" switch?
>> I'm not sure if I understand what you meant here?
> It's nonsense: if it is process in time, there should be no extra  
> (verbose) messages before processing "-va" switch, because compiler  
> is not yet in verbose mode. I believe, some developers do find that  
> remark hackneyed.

The command line options are processed twice, and the first time some  
general/global options which influence the parsing of the rest of the  
options are picked out. -va is one of those.


More information about the fpc-pascal mailing list