[ adding gcc@ back to CC ]

Christian Joensson wrote:

> > for k in 4 8 10 16; do
> >   echo "  real (kind=$k) :: x" > tmp$$.f90
> >   echo "  end" >> tmp$$.f90
> >   /usr/local/src/branch/objdir/./gcc/gfortran \
> >    -B/usr/local/src/branch/objdir/./gcc/ \
> >    -B/usr/local/i686-pc-cygwin/bin/ \
> >    -B/usr/local/i686-pc-cygwin/lib/ \
> >    -isystem /usr/local/i686-pc-cygwin/include \
> >    -isystem /usr/local/i686-pc-cygwin/sys-include \
> >    -I . -Wall -fno-repack-arrays -fno-underscoring -c tmp$$.f90 || \
> >    echo "exit status: $?"
> > done
> 
> exit status: 1
> exit status: 1
> exit status: 1
> exit status: 1

Well that is weird.  Exit status 1, yet no output on either stdout or
stderr?  Sounds broken.

> > If that says 128 then that means missing DLL; make sure you have
> > libgmp3, libmpfr0, and libmpfr1 packages installed.
> 
> well, running a cygcheck -s -v -r > cygcheck.out and then grepping for
> gmp and mpfr gives me this:
> 
> [EMAIL PROTECTED] /usr/local/src/branch/objdir
> $ grep gmp cygcheck.out
>   183k 2006/11/30 C:\cygwin\bin\cygmpfr-1.dll - os=4.0 img=1.0 sys=4.0
>                   "cygmpfr-1.dll" v0.0 ts=2006/11/30 13:21
> gmp                     4.2.1-1
> libgmp-devel            4.2.1-1
> libgmp3                 4.2.1-1
> 
> [EMAIL PROTECTED] /usr/local/src/branch/objdir
> $ grep mpfr cygcheck.out
>   183k 2006/11/30 C:\cygwin\bin\cygmpfr-1.dll - os=4.0 img=1.0 sys=4.0
>                   "cygmpfr-1.dll" v0.0 ts=2006/11/30 13:21
> libmpfr-devel           2.2.1-1
> libmpfr1                2.2.1-1
> mpfr                    2.2.1-1
> 
> which seems right to, don't you agree? the libmpfr0 is not installed,
> what is it and why is it needed, you mean?

The lib<foo><n> packages contain the actual DLL files (i.e. the part
needed at runtime.)  When a library has multiple ABIs / multiple
versions to support there will be one for each ABI version of the
library.  I would think that gfortran would be linked against libmpfr1
and that libmpfr0 would not be needed, but who knows.  It would be good
to install it anyway.

And also, run cygcheck on the binaries to see what they're linked to:

cd /usr/local/src/branch/objdir/gcc && \
 for F in cc1 collect2 f951 gfortran xgcc; do cygcheck ./$F.exe; done

In my build dir this shows that only cyggmp-3.dll and cygmpfr-1.dll are
used, with no reference to cygmpfr-0.dll.

Brian

Reply via email to