#16017: Get libs.mwrank to compile on OS X 10.4
-------------------------------------------------+-------------------------
Reporter: kcrisman | Owner:
Type: defect | Status: new
Priority: blocker | Milestone: sage-6.2
Component: packages: standard | Resolution:
Keywords: Darwin 8 linker error | Merged in:
install_name libflint.dylib | Reviewers:
Authors: | Work issues:
Report Upstream: N/A | Commit:
Branch: | Stopgaps:
Dependencies: |
-------------------------------------------------+-------------------------
Description changed by leif:
Old description:
> {{{
> gcc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -DNTL_ALL
> -I/Users/student/Desktop/sage-6.2.beta4/local/include
> -I/Users/student/Desktop/sage-6.2.beta4/local/include/csage
> -I/Users/student/Desktop/sage-6.2.beta4/src
> -I/Users/student/Desktop/sage-6.2.beta4/src/sage/ext
> -I/Users/student/Desktop/sage-6.2.beta4/local/include
> -I/Users/student/Desktop/sage-6.2.beta4/local/include/csage
> -I/Users/student/Desktop/sage-6.2.beta4/src
> -I/Users/student/Desktop/sage-6.2.beta4/src/sage/ext
> -I/Users/student/Desktop/sage-6.2.beta4/local/include/python2.7 -c
> sage/libs/mwrank/mwrank.c -o
> build/temp.macosx-10.4-ppc-2.7/sage/libs/mwrank/mwrank.o -fno-strict-
> aliasing -w
> gcc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -DNTL_ALL
> -I/Users/student/Desktop/sage-6.2.beta4/local/include
> -I/Users/student/Desktop/sage-6.2.beta4/local/include/csage
> -I/Users/student/Desktop/sage-6.2.beta4/src
> -I/Users/student/Desktop/sage-6.2.beta4/src/sage/ext
> -I/Users/student/Desktop/sage-6.2.beta4/local/include
> -I/Users/student/Desktop/sage-6.2.beta4/local/include/csage
> -I/Users/student/Desktop/sage-6.2.beta4/src
> -I/Users/student/Desktop/sage-6.2.beta4/src/sage/ext
> -I/Users/student/Desktop/sage-6.2.beta4/local/include/python2.7 -c
> sage/libs/mwrank/wrap.cc -o
> build/temp.macosx-10.4-ppc-2.7/sage/libs/mwrank/wrap.o -fno-strict-
> aliasing -w
> g++ -bundle -undefined dynamic_lookup
> -L/Users/student/Desktop/sage-6.2.beta4/local/lib
> build/temp.macosx-10.4-ppc-2.7/sage/libs/mwrank/mwrank.o
> build/temp.macosx-10.4-ppc-2.7/sage/libs/mwrank/wrap.o
> -L/Users/student/Desktop/sage-6.2.beta4/local/lib -lcsage -lec -lntl
> -lpari -lgmp -lgmpxx -lstdc++ -lm -lstdc++ -lntl -o
> build/lib.macosx-10.4-ppc-2.7/sage/libs/mwrank/mwrank.so
> /usr/bin/ld: warning can't open dynamic library: libflint.dylib
> referenced from:
> /Users/student/Desktop/sage-6.2.beta4/local/lib/libec.dylib (checking for
> undefined symbols may be affected) (No such file or directory, errno = 2)
> /usr/bin/ld: Undefined symbols:
> _nmod_mat_clear referenced from libec expected to be defined in
> libflint.dylib
> _nmod_mat_init referenced from libec expected to be defined in
> libflint.dylib
> _nmod_mat_rref referenced from libec expected to be defined in
> libflint.dylib
> collect2: error: ld returned 1 exit status
> error: command 'g++' failed with exit status 1
> }}}
> See lots of discussion at [https://groups.google.com/forum/#!topic/sage-
> release/6Vh55hF7UXk this sage-release thread]. Best guesses are either
> [https://github.com/wbhart/flint2/issues/55 this Flint bug] and leif's
> idea that there is a missing linker flag on Darwin (see the sage-release
> thread).
New description:
{{{
gcc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -DNTL_ALL
-I/Users/student/Desktop/sage-6.2.beta4/local/include
-I/Users/student/Desktop/sage-6.2.beta4/local/include/csage
-I/Users/student/Desktop/sage-6.2.beta4/src
-I/Users/student/Desktop/sage-6.2.beta4/src/sage/ext
-I/Users/student/Desktop/sage-6.2.beta4/local/include
-I/Users/student/Desktop/sage-6.2.beta4/local/include/csage
-I/Users/student/Desktop/sage-6.2.beta4/src
-I/Users/student/Desktop/sage-6.2.beta4/src/sage/ext
-I/Users/student/Desktop/sage-6.2.beta4/local/include/python2.7 -c
sage/libs/mwrank/mwrank.c -o
build/temp.macosx-10.4-ppc-2.7/sage/libs/mwrank/mwrank.o -fno-strict-
aliasing -w
gcc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -DNTL_ALL
-I/Users/student/Desktop/sage-6.2.beta4/local/include
-I/Users/student/Desktop/sage-6.2.beta4/local/include/csage
-I/Users/student/Desktop/sage-6.2.beta4/src
-I/Users/student/Desktop/sage-6.2.beta4/src/sage/ext
-I/Users/student/Desktop/sage-6.2.beta4/local/include
-I/Users/student/Desktop/sage-6.2.beta4/local/include/csage
-I/Users/student/Desktop/sage-6.2.beta4/src
-I/Users/student/Desktop/sage-6.2.beta4/src/sage/ext
-I/Users/student/Desktop/sage-6.2.beta4/local/include/python2.7 -c
sage/libs/mwrank/wrap.cc -o
build/temp.macosx-10.4-ppc-2.7/sage/libs/mwrank/wrap.o -fno-strict-
aliasing -w
g++ -bundle -undefined dynamic_lookup
-L/Users/student/Desktop/sage-6.2.beta4/local/lib
build/temp.macosx-10.4-ppc-2.7/sage/libs/mwrank/mwrank.o
build/temp.macosx-10.4-ppc-2.7/sage/libs/mwrank/wrap.o
-L/Users/student/Desktop/sage-6.2.beta4/local/lib -lcsage -lec -lntl
-lpari -lgmp -lgmpxx -lstdc++ -lm -lstdc++ -lntl -o
build/lib.macosx-10.4-ppc-2.7/sage/libs/mwrank/mwrank.so
/usr/bin/ld: warning can't open dynamic library: libflint.dylib referenced
from: /Users/student/Desktop/sage-6.2.beta4/local/lib/libec.dylib
(checking for undefined symbols may be affected) (No such file or
directory, errno = 2)
/usr/bin/ld: Undefined symbols:
_nmod_mat_clear referenced from libec expected to be defined in
libflint.dylib
_nmod_mat_init referenced from libec expected to be defined in
libflint.dylib
_nmod_mat_rref referenced from libec expected to be defined in
libflint.dylib
collect2: error: ld returned 1 exit status
error: command 'g++' failed with exit status 1
}}}
See lots of discussion at [https://groups.google.com/forum/#!topic/sage-
release/6Vh55hF7UXk this sage-release thread]. Best guesses are either
[https://github.com/wbhart/flint2/issues/55 this Flint bug] and leif's
idea that there is a missing linker flag on Darwin (see the sage-release
thread).
----
This is not eclib's fault, but due to incomplete / wrong "`install_name`s"
(meant to be ''absolute'' paths) in libflint.dylib (and also libpari-
gmp.dylib).
On Darwin 10 (MacOS X 10.6) and later, apparently the linker is smarter
(or more tolerant), and does find the indirectly used libraries in
`$SAGE_LOCAL/lib/`, despite their wrong `install_name`s.
--
--
Ticket URL: <http://trac.sagemath.org/ticket/16017#comment:35>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.