On Wednesday 29 July 2009 01:28:08 David Kirkby wrote: > 2009/7/28 jason <ja...@njkfrudils.plus.com>: > > This issue of building mpir on freebsd64 has been fixed in release > > 1.2.2 , which should be on the mpir main site in an hour or two. As > > far as we are aware it should work on Suns , although on T2 , you > > can't use the default linker with c++ and Suns cc , or at least that > > used to be the case . > > Can you be more precise about the Sun issue? I found the mpir version > in Sage would not build on Solaris x86, but would on Solaris SPARC. > > Here are a few facts, which you might find helpful if you are not > familiar with Suns and Solaris. > > 0) Sun build machines based on both their own SPARC and Intel/AMD x86 > processors. SPARC and x86 processors are totally incompatible at the > assembly code level, so if you write assembly code, you need to write > different versions. > > However, well written 'user-land' code writen in a high-level > language should only need to be recompiled to run on x86 or SPARC > hardware. > > 1) Sun provide a linker /opt/ccs/bin/ld which is installed with a full > Solaris install. > > 2) Sun provide an assember /usr/ccs/bin/as which is installed with a > full install of Solaris. > > 3) /opt/SUNWspro/bin/cc is a C compiler, not a C++ compiler. > > 4) /opt/SUNWspro/bin/CC is a C++ compiler. > > 5) Neither /opt/SUNWspro/bin/cc (C compiler) or /opt/SUNWspro/bin/CC > (C++ compiler) are installed by default. You have to install them. > Downloading SunStudio (free) is the way to do that. > > 6) Recent versions of Solaris provide /usr/sfw/bin/gcc (C compiler) > and /usr/sfw/bin/g++ (C++ compiler). These are installed by default. > > 7) gcc on Solaris can be configured to use either the Sun or GNU > linker and assembler. Different people configure GCC different ways, > so you should not assume anything about the linker or assembler unless > you test to see what gcc/g++ is using. > > 8) Sun do provide a GNU versions of a linker, as /usr/sfw/bin/gld > Note the 'g' in front of the normal name for a linker. > > 9) Sun provide a GNU version of an assembler as /usr/sfw/bin/gas - > again note the 'g' > > 10) In Solaris 10 update 7 (as used on 't2'), both /usr/sfw/bin/gcc > and /usr/sfw/.bin/g++ use the Sun linker and assembler and ignore the > GNU ones. But in general, you should not make assumptions about the > linker or assembler. > > 11) Whilst the GNU and Sun compilers, assemblers and linkers share > some options (compilers use -g for debugging), 95% of the options that > can be used on the GNU tools can not be used on the Sun tools, and > visa versa. > > Dave > > We test on T2 , mark , mark2 , gcc54
I know T2 has changed since our last test (which was when we released mpir-1.2) , but our previous problems have been On T2 LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/sparc-solaris-toolchain/lib/sparcv9 LD=/usr/ccs/bin/sparcv9/ld CC=cc CXX=CC ./configure --enable-cxx /home/jasonmoxham/mpir/mpir/trunk/mpirxx.h", line 3080: Error: Ambiguous partial specialization for __gmp_expr<__mpf_struct[1], __gmp_binary_expr<long, __gmp_expr<__mpf_struct[1], __mpf_struct[1]>, __gmp_binary_divides>>, __gmp_expr and __gmp_expr. "/home/jasonmoxham/mpir/mpir/trunk/mpirxx.h", line 3080: Error: Ambiguous partial specialization for __gmp_expr<_ on gcc54 a c++ error ? on mark ? cc: Warning: -xarch=v9 is deprecated, use -m64 to create 64-bit programs ld: warning: file ../../.libs/libmpir.so: linked to /tmp/mark2/.libs/libmpir.so: attempted multiple inclusion of file Now that T2 has been updated I will retest it , I use a script so I will try all possible combinations of linkers/compilers , as long as it takes < 1day If there is too many combinations then I will have to prune them , clearly I will try a "all gnu" toolchain , "all sun" toochain , if there are any other common/usefull combinations then I can just add them to my script , and they will be always be tested from now on. Jason --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---