[fpc-pascal] fpc in symlinked directory
Mattias Gaertner
nc-gaertnma at netcologne.de
Wed Mar 26 11:52:38 CET 2014
On Wed, 26 Mar 2014 11:25:19 +0100 (CET)
Michael Van Canneyt <michael at freepascal.org> wrote:
>[...]
> > AFAIK the PWD is the official thing and used by other console tools as
> > well. For example when I compile a file with gcc in a symlinked
> > directory it creates debugging info with the unresolved file name.
>
>
> This is not correct.
> You seem to think bash-specific behaviour is the correct way to do things.
> It is not, it is specific to bash.
>
> I use tcsh:
>
> cadwal: >cd /tmp
> cadwal: >ls -ld src1 link
> lrwxrwxrwx 1 michael michael 4 Mar 26 11:09 link -> src1/
> drwxrwxr-x 2 michael michael 4096 Mar 26 11:12 src1/
> cadwal: >cd link
> cadwal: >pwd
> /tmp/src1
>
> As you see, it has "resolved" the link.
You seem to think tcsh-specific behaviour is the correct way to do
things. ;)
tcsh uses -P as default, while bash uses -L as default:
pwd -L
/tmp/link
And using gcc in tcsh uses /tmp/link for debugging info as well.
>[...]
> >>> compiler uses its current directory.
> >>
> >> What does that mean ? Can you give a command-line example ?
> >
> > I used this one:
> > cd /tmp/link
> > /usr/bin/fpc -g -gl -vb -Fi/tmp/link -Fu/tmp/link/
> > -FU/tmp/link/ /tmp/link/project1.lpr
>
> cadwal: >fpc -g -gl -vb -Fi/tmp/link -Fu/tmp/link -FU/tmp/link /tmp/link/p.pp
> /usr/bin/ld: warning: link.res contains output sections; did you forget -T?
>
> So your example works fine here.
It compiles, but it creates wrong debugging info.
What shows "objdump -g unit1.o | grep tmp" for you?
/tmp/link/ or /tmp/orig/?
>[...]
Mattias
More information about the fpc-pascal
mailing list