I tried to build sage-3.2.2 using gcc/g++ 4.3.2 on an Archlinux 2.6.27
x86_64.

The build fails then it tries to link libpari.a, which had not been
compiled with the -fPIC flag. The relevant part of the rror message:

g++ -fPIC --shared  libjcntl.a interface_n.o arith_n.o marith_n.o
gpslave_n.o conic_n.o legendre_n.o unimod_n.o quadratic_n.o cubic_n.o
illl_n.o hilbert_n.o parifact_n.o p2points_n.o compproc_n.o
kbessel_n.o vector_n.o matrix_n.o subspace_n.o mvector_n.o mmatrix_n.o
msubspace_n.o xsplit2_n.o  timer_n.o svector_n.o smatrix_n.o
smatrix_elim_n.o polys_n.o realroots_n.o gf_n.o   -o libjcntl.so -L/
home/katana/builds/sage-3.2.2/local/lib -lntl -lgmp -lpari  -lpari -L/
home/katana/builds/sage-3.2.2/local/lib -L/home/katana/builds/
sage-3.2.2/local/lib -lntl -lgmp -lpari -
lm
/usr/bin/ld: /home/katana/builds/sage-3.2.2/local/lib/libpari.a
(arith1.o): relocation R_X86_64_32 against `a local symbol' can not be
used when making a shared object; recompile with -
fPIC
/home/katana/builds/sage-3.2.2/local/lib/libpari.a: could not read
symbols: Badvalue
collect2: ld returned 1 exit status
make[3]: *** [libjcntl.so] Error 1
make[3]: Leaving directory `/home/katana/builds/sage-3.2.2/spkg/build/
eclib-20080310.p7/src/procs'
make[2]: *** [so] Error 2
make[2]: Leaving directory `/home/katana/builds/sage-3.2.2/spkg/build/
eclib-20080310.p7/src'
Error building cremona shared libraries

real    3m1.115s
user    2m17.618s
sys     0m6.906s
sage: An error occurred while installing eclib-20080310.p7
Please email sage-devel http://groups.google.com/group/sage-devel
explaining the problem and send the relevant part of
of /home/katana/builds/sage-3.2.2/install.log.  Describe your
computer, operating system, etc.
If you want to try to fix the problem, yourself *don't* just cd to
/home/katana/builds/sage-3.2.2/spkg/build/eclib-20080310.p7 and type
'make'.
Instead type "/home/katana/builds/sage-3.2.2/sage -sh"
in order to set all environment variables correctly, then cd to
/home/katana/builds/sage-3.2.2/spkg/build/eclib-20080310.p7
(When you are done debugging, you can type "exit" to leave the
subshell.)
make[1]: *** [installed/eclib-20080310.p7] Error 1
make[1]: Leaving directory `/home/katana/builds/sage-3.2.2/spkg'


This error had been reported in Jan 2008, but the person who reported
the issue never followed up...

Should I clean everything and rebuilt after setting CFLAGS and
CXXFLAGS = -fPIC?

Most libraries that have been built all seem to have been built using
the -fPIC flag. Is it safe to set this flag globally?


Another issue that I've been having is that I would like to build each
package separately. (So I wouldn't have to rebuild the whole thing
when an error like this occurs...) Is there a way of doing this? I
wanted to use Intel compilers, but they seemed to fail with some of
the packages (e.g. gmp-fake*, NTL, perhaps more?), so I would like
compile whatever I can with Intel, and compile the rest with GNU
compilers.

Thanks

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to