Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 Jan 2014 05:31:19 +0000
From:      "Montgomery-Smith, Stephen" <stephen@missouri.edu>
To:        Kostas Oikonomou <k.oikonomou@att.net>, =?iso-8859-1?Q?Jouko_Lumij=E4rvi?= <jlumijar@sun3.oulu.fi>, ajtiM <lumiwa@gmail.com>, Greg Rivers <gcr+freebsd-ports@tharned.org>, "GeorgSWeber@googlemail.com" <GeorgSWeber@googlemail.com>, Daniel Smith <des006@ucsd.edu>, FreeBSD Ports <freebsd-ports@FreeBSD.org>
Subject:   Re: Sage update
Message-ID:  <52E9E3A4.2030204@missouri.edu>
In-Reply-To: <52E9AA34.9060909@missouri.edu>
References:  <52E9A43A.7010006@missouri.edu> <52E9AA34.9060909@missouri.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On 01/29/2014 07:26 PM, Montgomery-Smith, Stephen wrote:
> On 01/29/2014 07:00 PM, Montgomery-Smith, Stephen wrote:
>> I have just updated sage to version 6.0.  I have also made some changes
>> to help it work with FreeBSD-10, using ideas given to me by Daniel
>> Smith.  Since I don't have a fast computer using FreeBSD-10, I would
>> appreciate it if any of you guys could try it out and see if it works.
>=20
> I meant math/sage (for those who don't normally use it.)

So I tried it on my slow i386 computer.  It dies on the subpackage
r-3.0.2.p0.  I would be interested if other people are seeing the same
problem.

I think it is because in the build, it creates libR.so using a command
like this:

cc -std=3Dgnu99 -shared -fopenmp
-L/usr/home/stephen/sage/work/sage-6.0/local/lib/
-Wl,-rpath=3D/usr/home/stephen/sage/work/sage-6.0/local/lib
-Wl,-rpath=3D/usr/local/lib/gcc46 -L/usr/local/lib/gcc46  -o libR.so
CommandLineArgs.o Rdynload.o Renviron.o RNG.o agrep.o apply.o
arithmetic.o array.o attrib.o bind.o builtin.o character.o coerce.o
colors.o complex.o connections.o context.o cum.o dcf.o datetime.o
debug.o deparse.o devices.o dotcode.o dounzip.o dstruct.o duplicate.o
edit.o engine.o envir.o errors.o eval.o format.o gevents.o gram.o
gram-ex.o graphics.o grep.o identical.o inlined.o inspect.o internet.o
iosupport.o lapack.o list.o localecharset.o logic.o main.o mapply.o
match.o memory.o names.o objects.o options.o paste.o platform.o plot.o
plot3d.o plotmath.o print.o printarray.o printvector.o printutils.o
qsort.o random.o raw.o registration.o relop.o rlocale.o saveload.o
scan.o seq.o serialize.o sort.o source.o split.o sprintf.o startup.o
subassign.o subscript.o subset.o summary.o sysutils.o unique.o util.o
version.o vfonts.o xxxpr.o   `ls ../unix/*.o ../appl/*.o ../nmath/*.o`
../extra/zlib/libz.a ../extra/bzip2/libbz2.a ../extra/pcre/libpcre.a
../extra/tre/libtre.a
-L/usr/home/stephen/sage/work/sage-6.0/local/lib -lf77blas -latlas
-lgfortran -lm -lquadmath  -lintl -lreadline  -llzma -lrt -lm -liconv

Now -Wl,-rpath is set, so it should find libreadline in
/usr/home/stephen/sage/work/sage-6.0/local/lib.  But instead it finds
libreadline in /lib.  So later when it does the following compilation to
build R.bin:

gcc -std=3Dgnu99 -export-dynamic -fopenmp
-L/usr/home/stephen/sage/work/sage-6.0/local/lib/
-Wl,-rpath=3D/usr/home/stephen/sage/work/sage-6.0/local/lib
-Wl,-rpath=3D/usr/local/lib/gcc46 -L/usr/local/lib/gcc46 -o R.bin Rmain.o
 -L../../lib -lR

...it comes up with an error saying that rl_sort_completion_matches
isn't found.  And when I do an ldd or "readelf -d" on libR.so, I can see
that it is trying to link to the wrong libreadline, and
rl_sort_completion_matches is only defined in the other libreadline.

I tried googling to find a fix.  And it works fine with FreeBSD-8.  This
has me completely stumped.  One web page suggested I added -Wl,-z,origin
to the list of flags when building libR.so.  But I really don't know
what I am doing.  Anyway, it didn't work.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?52E9E3A4.2030204>