Testing __float128 [Cygwin]

Angelo Graziosi angelo.graziosi@alice.it
Mon Sep 6 00:32:00 GMT 2010


I have tried to build libquad,

$ CC='gcc-4.6' CXX='g++-4.6' CPP='cpp-4.6' ./configure --prefix=/tmp/foo 
&& make && make install

with current GCC-4.6 snapshot (no patches needed this time, obviously):

$ gcc-4.6 -v
Using built-in specs.
COLLECT_GCC=gcc-4.6
COLLECT_LTO_WRAPPER=/usr/local/gfortran/libexec/gcc/i686-pc-cygwin/4.6.0/lto-wrpper.exe
Target: i686-pc-cygwin
Configured with: /tmp/gcc-4.6-20100904/configure 
--prefix=/usr/local/gfortran -program-suffix=-4.6 
--enable-languages=c,c++,fortran --enable-checking=release 
-enable-threads=posix --enable-libgomp --disable-bootstrap 
--disable-libmudflap--disable-shared
Thread model: posix
gcc version 4.6.0 20100904 (experimental) (GCC)

but same failure :(

So, I am just curious to know what I am missing...

Thanks,
Angelo.


Il 01/09/2010 17.49, Angelo Graziosi ha scritto:
> Il 01/09/2010 16.23, Tobias Burnus ha scritto:
>> On 09/01/2010 04:09 PM, Angelo Graziosi wrote:
>>> So, what does Cygwin people need to have QP with gfortran?
>>
>> I am not sure whether it cures the problem, but you might want to try
>> the patch at http://gcc.gnu.org/ml/gcc-patches/2010-09/msg00040.html
>> (for GCC 4.6) before building libquad. If it works, you can try to build
>> libgfortran with libquad support.
>>
>
> I have rebuilt gcc-20100828 snapshot with those patches (which apply
> cleanly),
>
> $ gcc-4.6 -v
> [...]
>
> Then I have tried to build libquad. Now float128 is supported,
>
> [...]
> checking whether __float128 is supported... yes
> [...]
>
> but it fails in linking,
>
> [...]
> /bin/sh ../libtool --tag=CC --mode=link gcc-4.6 -g -O2 -no-undefined
> -version-info 0:0:0 -o libquad.la -rpath /tmp/foo/lib dmisc.lo gdtoa.lo
> hd_init.lo smisc.lo sum.lo g_Qfmt.lo gethex.lo hexnan.lo strtodg.lo
> ulp.lo g__fmt.lo gmisc.lo misc.lo strtopQ.lo libgfortran_io.lo acoshq.lo
> fmodq.lo acosq.lo frexpq.lo rem_pio2q.lo asinhq.lo hypotq.lo
> remainderq.lo asinq.lo rintq.lo atan2q.lo isinfq.lo roundq.lo atanhq.lo
> isnanq.lo scalblnq.lo atanq.lo j0q.lo scalbnq.lo cbrtq.lo j1q.lo
> signbitq.lo ceilq.lo jnq.lo sincos_table.lo complex.lo ldexpq.lo
> sincosq.lo copysignq.lo lgammaq.lo sincosq_kernel.lo coshq.lo
> llroundq.lo sinhq.lo cosq.lo log10q.lo sinq.lo cosq_kernel.lo log1pq.lo
> sinq_kernel.lo erfq.lo logq.lo sqrtq.lo expm1q.lo lroundq.lo tanhq.lo
> expq.lo modfq.lo tanq.lo fabsq.lo nanq.lo tgammaq.lo finiteq.lo
> nextafterq.lo truncq.lo floorq.lo powq.lo -lm
> libtool: link: gcc-4.6 -shared .libs/dmisc.o .libs/gdtoa.o
> .libs/hd_init.o .libs/smisc.o .libs/sum.o .libs/g_Qfmt.o .libs/gethex.o
> .libs/hexnan.o .libs/strtodg.o .libs/ulp.o .libs/g__fmt.o .libs/gmisc.o
> .libs/misc.o .libs/strtopQ.o .libs/libgfortran_io.o .libs/acoshq.o
> .libs/fmodq.o .libs/acosq.o .libs/frexpq.o .libs/rem_pio2q.o
> .libs/asinhq.o .libs/hypotq.o .libs/remainderq.o .libs/asinq.o
> .libs/rintq.o .libs/atan2q.o .libs/isinfq.o .libs/roundq.o
> .libs/atanhq.o .libs/isnanq.o .libs/scalblnq.o .libs/atanq.o .libs/j0q.o
> .libs/scalbnq.o .libs/cbrtq.o .libs/j1q.o .libs/signbitq.o .libs/ceilq.o
> .libs/jnq.o .libs/sincos_table.o .libs/complex.o .libs/ldexpq.o
> .libs/sincosq.o .libs/copysignq.o .libs/lgammaq.o .libs/sincosq_kernel.o
> .libs/coshq.o .libs/llroundq.o .libs/sinhq.o .libs/cosq.o .libs/log10q.o
> .libs/sinq.o .libs/cosq_kernel.o .libs/log1pq.o .libs/sinq_kernel.o
> .libs/erfq.o .libs/logq.o .libs/sqrtq.o .libs/expm1q.o .libs/lroundq.o
> .libs/tanhq.o .libs/expq.o .libs/modfq.o .libs/tanq.o .libs/fabsq.o
> .libs/nanq.o .libs/tgammaq.o .libs/finiteq.o .libs/nextafterq.o
> .libs/truncq.o .libs/floorq.o .libs/powq.o -o .libs/cygquad-0.dll
> -Wl,--enable-auto-image-base -Xlinker --out-implib -Xlinker
> .libs/libquad.dll.a
> Creating library file: .libs/libquad.dll.a
> .libs/cbrtq.o: In function `cbrtq':
> /tmp/libquad/src/math/cbrtq.c:26: undefined reference to `_cbrtl'
> .libs/sqrtq.o: In function `sqrtq':
> /tmp/libquad/src/math/sqrtq.c:26: undefined reference to `_sqrtl'
> collect2: ld returned 1 exit status
> make[2]: *** [libquad.la] Error 1
> make[2]: Leaving directory `/tmp/libquad/src'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/tmp/libquad'
> make: *** [all] Error 2



More information about the Fortran mailing list