Can you post sage/local/include/gmp.h here. I can't see how it is getting the wrong symbol name, under any circumstances.
On Thursday, 5 February 2015 22:04:55 UTC+1, Bill Hart wrote: > > Actually, we call mpn_com_n in flint. In flint.h this becomes mpn_com. > > In gmp.h in MPIR this becomes __MPN(com_n) which must be ___gmpn_com_n on > your machine. > > If headers are included in the reverse order, mpn_com_n becomes directly > ___gmpn_com_n in gmp.h. > > This is indeed the name of the symbol we export. I can't see why it should > be looking for the symbol ___gmpn_com, which certainly doesn't exist. > > I don't see why this is happening. > > On Thursday, 5 February 2015 21:50:59 UTC+1, Bill Hart wrote: >> >> I can't shed much light on this. >> >> We do indeed call mpn_com_n from those flint functions. In flint.h >> mpn_com_n is #defined to mpn_com for compatibility with various versions of >> MPIR. >> >> The latter becomes xxxmpn_com where xxx can be g, _g, __g or ___g >> depending on the global symbol prefix on your platform. >> >> On lines 23 and 24 of mpn/generic/com_n.c in MPIR we have >> >> #undef mpn_com_n >> #define mpn_com_n __MPN(com_n) >> >> Who knows what the effect of this is. >> >> But on a core i5, this should all be irrelevant, since for all core2 and >> later Intel processors, mpn/x86_64/core2/com_n.as should be compiled and >> should use the standard symbol prefix for your system regardless. >> >> I'd be inclined to look at the MPIR build log and see if it detected your >> processor correctly, or whether it thought it was just a generic x86_64. >> >> Unless your OS kernel is 32 bits somehow. But even in that case, >> mpn/x86/core2/com_n.asm should take care of it for you. >> >> Bill. >> >> On Tuesday, 3 February 2015 13:33:18 UTC+1, Xander Faber wrote: >>> >>> I was building Sage 6.4 on a Mac Pro 2.6 GHz Intel Core i5. >>> >>> Tail end of the flint log file: >>> >>> >>> >>> >>> CC ../build/fq_zech_poly_factor/../fq_zech_poly_factor.lo >>> >>> CXX build/interfaces/NTL-interface.lo >>> >>> Undefined symbols for architecture x86_64: >>> >>> "___gmpn_com", referenced from: >>> >>> _fmpz_bit_pack in fmpz.lo >>> >>> _fmpz_bit_unpack in fmpz.lo >>> >>> ld: symbol(s) not found for architecture x86_64 >>> >>> collect2: error: ld returned 1 exit status >>> >>> make[4]: *** [libflint.dylib] Error 1 >>> >>> make[3]: *** [library] Error 2 >>> >>> Error: Failed to build FLINT shared library. >>> >>> >>> >>> >>> real 3m30.826s >>> >>> user 2m32.253s >>> >>> sys 0m51.078s >>> >>> ************************************************************************ >>> >>> Error installing package flint-2.4.4 >>> >>> ************************************************************************ >>> >>> Please email sage-devel (http://groups.google.com/group/sage-devel) >>> >>> explaining the problem and including the relevant part of the log file >>> >>> /Users/xander/sage/logs/pkgs/flint-2.4.4.log >>> >>> Describe your computer, operating system, etc. >>> >>> If you want to try to fix the problem yourself, *don't* just cd to >>> >>> /Users/xander/sage/local/var/tmp/sage/build/flint-2.4.4 and type 'make' >>> or whatever is appropriate. >>> >>> Instead, the following commands setup all environment variables >>> >>> correctly and load a subshell for you to debug the error: >>> >>> (cd '/Users/xander/sage/local/var/tmp/sage/build/flint-2.4.4' && '/ >>> Users/xander/sage/sage' --sh) >>> >>> When you are done debugging, you can type "exit" to leave the subshell. >>> >>> ************************************************************************ >>> >>> Any thoughts on what's going on? >>> >>> -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.