Sam Steingold on Mon, 11 Jul 2005 22:18:32 +0200


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

run-time problems with cygwin: some symbols are not found at run time


gcc (GCC) 3.4.4 (cygming special) (gdc 0.12, using dmd 0.125)
pari - cvs head
compiled and installed without problems in /usr/include:
$ grep binomial /usr/local/include/pari/*.h
/usr/local/include/pari/paridecl.h:GEN     binomial(GEN x, long k);
/usr/local/include/pari/pariold.h:#define lbinome (long)binomial
/usr/local/include/pari/pariold.h:#define binome binomial
$ nm /usr/local/lib/libpari-2.2.dll | grep binomial
100c12a0 T _binomial
$

------------- p.c -------------------
#include <stdio.h>
#include <pari/pari.h>
int main (int argc, char* argv[]) {
  printf("binomial: 0x%x\n",(unsigned int)&binomial);
  return 0;
}
------------- p.c -------------------
I can link without any problems:
$ gcc -Wall -I/usr/local/inlclude p.c -L/usr/local/lib -lpari
but not run:
$ ./a.exe
pop-up: The procedure entry point binomial could not be located in the
dynamic link library libpari-2.2.dll.

some other functions work:
rnfhermitebasis: 0x402d80
suppl: 0x402ea0
eigen: 0x402490
hess: 0x402700
carhess: 0x402390
gauss: 0x4025c0
det: 0x402450
caradj: 0x402370
adj: 0x4022e0
caradj0: 0x402380
gtrace: 0x4026e0
gnorm: 0x4026a0
gnorml2: 0x4026b0
gconj: 0x402610
conjvec: 0x402410
idmat: 0x4028a0
concat: 0x402400
extract: 0x4024f0
matextract: 0x402a20
gtomat: 0x4026d0
sqred: 0x402e70
signat: 0x402de0
jacobi: 0x402930
matrixqz: 0x402a30
matrixqz2: 0x402a40
matrixqz3: 0x402a50
indexrank: 0x4028b0
kerint: 0x402940
kerint1: 0x402950
intersect: 0x402910
deplin: 0x402440
detint: 0x402460
rank: 0x402ce0
perf: 0x402ba0
lisseq: 0x402cf0
racine: 0x402cd0
mpfact: 0x402a70
mpfactr: 0x402a80
gcf: 0x4025f0
gcf2: 0x402600
pnqn: 0x402bd0
gboundcf: 0x4025d0
bestappr: 0x402330
addprimes: 0x4022d0
chinois: 0x4023b0
fibo: 0x402540
nextprime: 0x402aa0
prime: 0x402c50
primes: 0x402c80
phi: 0x402bc0
smallfact: 0x402e10
boundfact: 0x402360
sumdiv: 0x402e80
sumdivk: 0x402e90
numbdiv: 0x402b40
binaire: 0x402350

some other functions behave just like binomial:
ellglobalred
elllocalred
elltaniyama
factorff
gequal
padicappr

also, gp.exe fails with
The procedure entry point allocatemem0 could not be located in the
dynamic link library libpari-2.2.dll.

-- 
Sam Steingold (http://www.podval.org/~sds) running w2k
<http://ffii.org/> <http://www.jihadwatch.org/>
<http://www.camera.org> <http://pmw.org.il/> <http://www.mideasttruth.com/>
Computers are like air conditioners: they don't work with open windows!