bug-gmp
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Follow-up: Check errors in gmp-3.1.1 under djgpp 2.04


From: laszlo . hars
Subject: Follow-up: Check errors in gmp-3.1.1 under djgpp 2.04
Date: Thu, 24 May 2001 16:22:16 -0500

Some more info about the problem:

Redirecting the output of the make the following warning message becomes 
apparent

$/gmp-3.1.1»make > makelog.lh
libtool: link: warning: undefined symbols not allowed in pentium3-pc-cygwin 
shared libraries
$/gmp-3.1.1»

The following command executed by make is 1405 char long. I assume it upsets a 
few shells.
c:/djgpp/bin/sh.exe ../libtool --mode=link gcc  -g -O -fomit-frame-pointer 
-mcpu=pentiumpro   -o libmpz.la   abs.lo ...

./configure thinks djgpp is cygwin. Is this the closest match? Can it cause the 
undefined references to
 _alloca and _impure_ptr ?

Laszlo
------------------------------
The result of "./configure --enable-fft > ./config.lh"

loading site script c:/djgpp/share/config.site
loading cache ./config.cache
checking host system type... (cached) pentium3-pc-cygwin
checking target system type... (cached) pentium3-pc-cygwin
checking build system type... (cached) pentium3-pc-cygwin
checking for a BSD compatible install... /dev/env/DJDIR/bin/ginstall -c
checking whether build environment is sane... yes
checking for mawk... (cached) gawk
checking whether make sets ${MAKE}... (cached) yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for BSD-compatible nm... (cached) /usr/bin/nm -B
checking for gcc... gcc
checking if the C compiler (gcc) works with flags -g -O -fomit-frame-pointer... 
yes
checking whether gcc accepts -mcpu=pentiumpro... yes
checking whether the C compiler (gcc -g -O -fomit-frame-pointer 
-mcpu=pentiumpro  ) works... yes
checking whether the C compiler (gcc -g -O -fomit-frame-pointer 
-mcpu=pentiumpro  ) is a cross-compiler... no
checking whether we are using GNU C... (cached) yes
(cached) checking how to run the C preprocessor... (cached) gcc -E
checking for a BSD compatible install... /dev/env/DJDIR/bin/ginstall -c
checking whether ln -s works... (cached) no
checking for suitable m4... (cached) m4
checking for ar... (cached) ar
checking how to switch to text section... (cached) .text
checking how to switch to data section... (cached) .data
checking how to export a symbol... (cached) .globl
checking what assembly label suffix to use... (cached) :
checking how the .type assembly directive should be used... (cached) dnl
checking if the .size assembly directive works... (cached) dnl
checking what prefix to use for a local label... (cached) L
checking how to define a 32-bit word... (cached) .long
checking if symbols are prefixed by underscore... (cached) yes
checking if .align assembly directive is logarithmic... (cached) no
checking if the assembler takes cl with shldl... (cached) yes
checking if the .align directive accepts an 0x90 fill in .text... (cached) yes
checking if the assembler knows about MMX instructions... (cached) yes
checking for Cygwin environment... (cached) yes
checking for mingw32 environment... (cached) no
checking for EMX OS/2 environment... (cached) no
checking for executable suffix... (cached) .exe
checking for object suffix... (cached) o
checking build system type... (cached) pentium3-pc-cygwin
checking for ld used by GCC... (cached) /usr/i686-pc-cygwin/bin/ld.exe
checking if the linker (/usr/i686-pc-cygwin/bin/ld.exe) is GNU ld... (cached) 
yes
checking for /usr/i686-pc-cygwin/bin/ld.exe option to reload object files... 
(cached) -r
checking how to recognise dependant libraries... (cached) file_magic file 
format pei*-i386(.*architecture: i386)?
checking for ranlib... (cached) ranlib
checking for strip... (cached) strip
loading cache ./config.cache within ltconfig
checking for objdir... .libs
checking for gcc option to produce PIC... (cached)  -DDLL_EXPORT
checking if gcc PIC flag  -DDLL_EXPORT works... (cached) yes
checking if gcc static flag -static works... (cached) yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.lo... yes
checking if gcc supports -fno-rtti -fno-exceptions ... yes
checking whether the linker (/usr/i686-pc-cygwin/bin/ld.exe) supports shared 
libraries... yes
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking dynamic linker characteristics... Win32 ld.exe
checking command to parse /usr/bin/nm -B output... ok
checking if libtool supports shared libraries... yes
checking if package supports dlls... no
checking whether to build shared libraries... no
checking whether to build static libraries... yes
creating libtool
loading cache ./config.cache
checking whether optarg is declared... (cached) no
checking for ANSI C header files... (cached) yes
checking for getopt.h... (cached) yes
checking for unistd.h... (cached) yes
checking for sys/sysctl.h... (cached) no
checking for sys/time.h... (cached) yes
checking for void... (cached) yes
checking for preprocessor stringizing operator... (cached) yes
checking for getopt_long... (cached) yes
checking for getpagesize... (cached) yes
checking for popen... (cached) yes
checking for processor_info... (cached) no
checking for strtoul... (cached) yes
checking for sysconf... (cached) yes
checking for sysctlbyname... (cached) no
checking if ansi2knr should be used... (cached) no
creating config.m4
creating ./config.status
creating Makefile
creating mpf/Makefile
creating mpz/Makefile
creating mpn/Makefile
creating mpq/Makefile
creating mpf/tests/Makefile
creating mpz/tests/Makefile
creating mpq/tests/Makefile
creating mpn/tests/Makefile
creating tests/Makefile
creating tests/rand/Makefile
creating demos/Makefile
creating tune/Makefile
creating mpbsd/Makefile
creating mpbsd/tests/Makefile
creating mpfr/Makefile
creating mpfr/tests/Makefile
creating config.h
linking ./mpn/x86/udiv.asm to mpn/udiv.asm
linking ./mpn/x86/umul.asm to mpn/umul.asm
linking ./mpn/generic/inlines.c to mpn/inlines.c
linking ./mpn/x86/aors_n.asm to mpn/add_n.asm
linking ./mpn/x86/aors_n.asm to mpn/sub_n.asm
linking ./mpn/x86/mul_1.asm to mpn/mul_1.asm
linking ./mpn/x86/p6/aorsmul_1.asm to mpn/addmul_1.asm
linking ./mpn/x86/p6/aorsmul_1.asm to mpn/submul_1.asm
linking ./mpn/x86/pentium/mmx/lshift.asm to mpn/lshift.asm
linking ./mpn/x86/pentium/mmx/rshift.asm to mpn/rshift.asm
linking ./mpn/x86/p6/diveby3.asm to mpn/diveby3.asm
linking ./mpn/generic/divrem.c to mpn/divrem.c
linking ./mpn/x86/p6/mmx/divrem_1.asm to mpn/divrem_1.asm
linking ./mpn/generic/divrem_2.c to mpn/divrem_2.c
linking ./mpn/x86/p6/mmx/mod_1.asm to mpn/mod_1.asm
linking ./mpn/generic/mod_1_rs.c to mpn/mod_1_rs.c
linking ./mpn/generic/pre_mod_1.c to mpn/pre_mod_1.c
linking ./mpn/generic/dump.c to mpn/dump.c
linking ./mpn/generic/mul.c to mpn/mul.c
linking ./mpn/generic/mul_fft.c to mpn/mul_fft.c
linking ./mpn/generic/mul_n.c to mpn/mul_n.c
linking ./mpn/x86/mul_basecase.asm to mpn/mul_basecase.asm
linking ./mpn/x86/p6/sqr_basecase.asm to mpn/sqr_basecase.asm
linking ./mpn/generic/random.c to mpn/random.c
linking ./mpn/generic/random2.c to mpn/random2.c
linking ./mpn/generic/sqrtrem.c to mpn/sqrtrem.c
linking ./mpn/generic/get_str.c to mpn/get_str.c
linking ./mpn/generic/set_str.c to mpn/set_str.c
linking ./mpn/generic/scan0.c to mpn/scan0.c
linking ./mpn/generic/scan1.c to mpn/scan1.c
linking ./mpn/x86/p6/p3mmx/popham.asm to mpn/popcount.asm
linking ./mpn/x86/p6/p3mmx/popham.asm to mpn/hamdist.asm
linking ./mpn/generic/cmp.c to mpn/cmp.c
linking ./mpn/generic/perfsqr.c to mpn/perfsqr.c
linking ./mpn/generic/bdivmod.c to mpn/bdivmod.c
linking ./mpn/generic/gcd_1.c to mpn/gcd_1.c
linking ./mpn/generic/gcd.c to mpn/gcd.c
linking ./mpn/generic/gcdext.c to mpn/gcdext.c
linking ./mpn/generic/tdiv_qr.c to mpn/tdiv_qr.c
linking ./mpn/generic/bz_divrem_n.c to mpn/bz_divrem_n.c
linking ./mpn/generic/sb_divrem_mn.c to mpn/sb_divrem_mn.c
linking ./mpn/generic/jacbase.c to mpn/jacbase.c
linking ./mpn/x86/copyi.asm to mpn/copyi.asm
linking ./mpn/x86/copyd.asm to mpn/copyd.asm
linking ./mpn/x86/pentium/mmx/gmp-mparam.h to gmp-mparam.h

---------------------- Forwarded by Laszlo Hars/BRQ/RESEARCH/PHILIPS on 
05/24/2001 04:49 PM ---------------------------
To:     address@hidden@SMTP
cc:      
Subject:        Check errors in gmp-3.1.1 under djgpp 2.03
Classification: Unclassified


I could not get help for cygwin, so after struggling with it for a week I gave
it up and tried the latestrelease of  djgpp. It is somewhat more work to set up
but it worked about 100 times faster than cygwin and without crashes.

So I have now the libraries but
"make check" gave the following error messages.
Could you give me a clue what went wrong and what can I do about it?

I tried compiling gmp on an old Sun workstation with 3 years old gnu compiler.
The check gave very similar error messages.

Thanks
Laszlo
"...
Making check in tests
make.exe[2]: Entering directory `c:/gmp-3.1.1/mpz/tests'
c:/djgpp/bin/make.exe  t-mul.exe t-tdiv.exe t-tdiv_ui.exe t-fdiv.exe t-fdiv_ui.e
xe t-gcd.exe dive.exe t-sqrtrem.exe convert.exe io.exe logic.exe bit.exe t-powm.
exe t-powm_ui.exe t-pow_ui.exe t-2exp.exe reuse.exe t-root.exe t-jac.exe t-bin.e
xe t-misc.exe
make.exe[3]: Entering directory `c:/gmp-3.1.1/mpz/tests'
c:/djgpp/bin/sh.exe ../../libtool --mode=link gcc  -g -O -fomit-frame-pointer -m
cpu=pentiumpro   -o t-mul.exe  t-mul.o ../../libgmp.la
mkdir .libs
gcc -g -O -fomit-frame-pointer -mcpu=pentiumpro -o t-mul.exe t-mul.o  ../../.lib
s/libgmp.a
t-mul.o: In function `mpz_refmul':
/gmp/gmp-3.1.1/mpz/tests/t-mul.c:149: undefined reference to `_alloca'
/gmp/gmp-3.1.1/mpz/tests/t-mul.c:159: undefined reference to `_alloca'
t-mul.o: In function `dump_abort':
/gmp/gmp-3.1.1/mpz/tests/t-mul.c:265: undefined reference to `_impure_ptr'
/gmp/gmp-3.1.1/mpz/tests/t-mul.c:266: undefined reference to `_impure_ptr'
/gmp/gmp-3.1.1/mpz/tests/t-mul.c:267: undefined reference to `_impure_ptr'
/gmp/gmp-3.1.1/mpz/tests/t-mul.c:268: undefined reference to `_impure_ptr'
/gmp/gmp-3.1.1/mpz/tests/t-mul.c:269: undefined reference to `_impure_ptr'
t-mul.o:/gmp/gmp-3.1.1/mpz/tests/t-mul.c:277: more undefined references to `_imp
ure_ptr' follow
../../.libs/libgmp.a(fdiv_qr.o): In function `_gmpz_fdiv_qr':
/gmp/gmp-3.1.1/mpz/fdiv_qr.c:49: undefined reference to `_alloca'
../../.libs/libgmp.a(mul.o): In function `_gmpn_sqr_n':
/gmp/gmp-3.1.1/mpn/mul.c:66: undefined reference to `_alloca'
/gmp/gmp-3.1.1/mpn/mul.c:79: undefined reference to `_alloca'
../../.libs/libgmp.a(mul.o): In function `_gmpn_mul':
/gmp/gmp-3.1.1/mpn/mul.c:139: undefined reference to `_alloca'
../../.libs/libgmp.a(tdiv_qr.o): In function `_gmpn_tdiv_qr':
/gmp/gmp-3.1.1/mpn/tdiv_qr.c:89: undefined reference to `_alloca'
../../.libs/libgmp.a(tdiv_qr.o):/gmp/gmp-3.1.1/mpn/tdiv_qr.c:91: more undefined
references to `_alloca' follow
collect2: ld returned 1 exit status
make.exe[3]: *** [t-mul.exe] Error 1
make.exe[3]: Leaving directory `c:/gmp-3.1.1/mpz/tests'
make.exe[2]: *** [check-am] Error 2
make.exe[2]: Leaving directory `c:/gmp-3.1.1/mpz/tests'
make.exe[1]: *** [check-recursive] Error 1
make.exe[1]: Leaving directory `c:/gmp-3.1.1/mpz'
make.exe: *** [check-recursive] Error 1
sh-2.04$ "

-------------------------------------------------------------------------

Unfortunately config.log does not contain the results of the tests it
performed. They do appear on the screen, but fly by so fast, that I cannot
record them:

"This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by configure version 2.14a, executed with
 > ./configure  --enable-fft

configure:636: checking host system type
configure:672: checking target system type
configure:707: checking build system type
configure:778: checking for a BSD compatible install
configure:835: checking whether build environment is sane
configure:906: checking for mawk
configure:939: checking whether make sets ${MAKE}
configure:1029: checking whether to enable maintainer-specific portions of 
Makefiles
configure:1352: checking for BSD-compatible nm
configure:1418: checking for gcc
..."
etc.

------------------------------
To:     address@hidden@SMTP
cc:      
Subject:        Re: Setup errors in gmp-3.1.1 under cygwin-1.3.1-1  
Classification: Unclassified


Torbjörn,

You are right, it seems to be a cygwin problem. Some more info about it, with 
the hope that somebody comes up with a solution (the cygwin people did not):
- if I close and restart cygwin it fails at the same point.
- if I reboot the PC and start cygwin again the make goes further. A couple of 
hours later it runs out of the resources again with similar error messages.
- at the end of the make the gcc linker is called. The command is about 8 lines 
long. This crashes not only cygwin, but Windows 98, too. So badly that I have 
to switch the PC off, wait 5 minutes before I can restart it.

I guess that from some Windows resources cygwin doe not allocate enough or they 
are not freed correctly after their usage.

Thanks
Laszlo


Sent by:        address@hidden
To:     Laszlo Hars/BRQ/RESEARCH/address@hidden
cc:     address@hidden@SMTP 
Subject:        Re: Setup errors in gmp-3.1.1 under cygwin-1.3.1-1
Classification: 


address@hidden writes:

  On my Windows 98 PC (500 MHz PIII, 512 MB RAM, 20 GB free on a FAT32 hard 
disk) I had error messages while installing GMP. The config script and the make 
 worked several hours, blocking the PC from doing any useful work, but at the 
end there came the
  error messages. Are they CYGWIN problems? Thanks for your help in advance

  ../libtool: Cannot fork: Resource temporarily unavailable

This indicates that something is wrong with your machine or with cygwin.
Have you tried rebooting it?

(At any rate, this is not a GMP issue.)

--
Torbjörn




reply via email to

[Prev in Thread] Current Thread [Next in Thread]