|
From: | Thomas Treichl |
Subject: | Re: CVS build error with new sort |
Date: | Mon, 04 Feb 2008 20:47:01 +0100 |
User-agent: | Thunderbird 2.0.0.9 (Macintosh/20071031) |
John Swensen schrieb:
The symbol demangles to octave_sort<int>::set_compare(bool (*)(int, int)) John Swensen On Feb 4, 2008, at 2:55 AM, John W. Eaton wrote:On 3-Feb-2008, John Swensen wrote: | I am trying to build the most recent CVS (as of 2008/02/03 about 8PM) | and am having a linker error involving the new sort stuff for sparse | matrices. When trying to link liboctave.dylib, I get the following | error: | ld: duplicate symbol __ZN11octave_sortIiE11set_compareEPFbiiE in pic/ | Array-i.o and pic/sparse-sort.o I don't know why this is happening. I don't see this problem, but I'm not using OS X. Demangling the above symbol name doesn't work for me. What is the result of echo __ZN11octave_sortIiE11set_compareEPFbiiE | c++filt on your system? jwe
I got through the compilation process with the latest CVS sources by adding "-Xlinker -m" to my LDFLAGS -- without these flags it still fails, so it seems to me that the compiler is out of 'sort'-names?!
I may borrow the necessary description from the 'ld' manpage: <somewhere in the manpage> When creating an output file with the static link editor when -twolevel_namespace is in effect (now the default) all undefined refer- ences must be satisfied at static link time. <somewhere else in the manpage> -m (32-bit only) Don't treat multiply defined symbols from the linked objects as a hard error; instead, simply print a warning. The first linked object defining such a symbol is used for linking; its value is used for the symbol in the symbol table. The code and data for all such symbols are copied into the output. The duplicate sym- bols other than the first symbol may still end up being used in the resulting output file through local references. This can still produce a resulting output file that is in error. This flag's use is strongly discouraged! After that 'make check' tells me PASS 3989 FAIL 0 so I hope tests are already included for the new 'sort'-modifications?I don't know if this is the right way for fixing this problem and if there are other flags available instead. I found other projects at the Internet that tell us about similar 'multiply defined whatever' problems on Mac and I need to have a look how they solved that problem and then will be back to this thread in a few days hopefully with a better solution.
ThomasPS. John if you are faster than me finding better flags on your Mac then please let me know.
[Prev in Thread] | Current Thread | [Next in Thread] |