#12515: Upgrade mpc and make it a standard package
----------------------------------+-----------------------------------------
       Reporter:  jdemeyer        |         Owner:  tbd              
           Type:  enhancement     |        Status:  needs_review     
       Priority:  major           |     Milestone:  sage-pending     
      Component:  packages        |    Resolution:                   
       Keywords:                  |   Work issues:                   
Report Upstream:  N/A             |     Reviewers:  Jean-Pierre Flori
        Authors:  Jeroen Demeyer  |     Merged in:                   
   Dependencies:  #10492, #12223  |      Stopgaps:                   
----------------------------------+-----------------------------------------
Changes (by jdemeyer):

  * status:  needs_work => needs_review


Old description:

> Since `gcc-4.6.2` has `mpc` as dependency and since `mpc` could be useful
> for the rest of Sage, it would be good to include mpc as standard
> package.  There already is an optional `mpc` package.  I also upgraded
> `mpc` to the latest svn version (the latest stable version has various
> bugs in `./configure` causing for example failures on Solaris).
>
> '''spkg''':
> [http://boxen.math.washington.edu/home/jdemeyer/spkg/mpc-1.0.0dev1126.spkg]
>
> '''apply''' [attachment:12515_mpc_sage_root.patch] to the `SAGE_ROOT`
> repository.
>
> '''apply''' [attachment:12515_mpc_standard.patch] and
> [attachment:12515_norm.patch] to the Sage library.

New description:

 Since `gcc-4.6.2` has `mpc` as dependency and since `mpc` could be useful
 for the rest of Sage, it would be good to include mpc as standard package.
 There already is an optional `mpc` package.  I also upgraded `mpc` to the
 latest svn version (the latest stable version has various bugs in
 `./configure` causing for example failures on Solaris).

 '''spkg''':
 [http://boxen.math.washington.edu/home/jdemeyer/spkg/mpc-1.0.0dev1126.p0.spkg]

 '''apply''' [attachment:12515_mpc_sage_root.patch] to the `SAGE_ROOT`
 repository.

 '''apply''' [attachment:12515_mpc_standard.patch] and
 [attachment:12515_norm.patch] to the Sage library.

--

Comment:

 New spkg removes the -std=c99 -pedantic compiler flags.  I really cannot
 explain why it solves the problem though, especially since it seems to be
 a link issue:
 {{{
 /bin/sh ../libtool --tag=CC   --mode=link gcc  -O2 -D_FORTIFY_SOURCE=2 -g
 -std=c99 -pedantic -Wno-long-long -Wall -Wextra -Wdeclaration-af
 ter-statement -Wundef -Wshadow -Wstrict-prototypes -Wmissing-prototypes
 -Wno-unused-value  -version-info 2:0:0 -L/home/buildbot/build/sage
 /cleo-1/cleo_full/build/sage-5.0.beta8-gcc/local/lib
 -L/home/buildbot/build/sage/cleo-1/cleo_full/build/sage-5.0.beta8-gcc/local/lib
 -o l
 ibmpc.la -rpath
 /home/buildbot/build/sage/cleo-1/cleo_full/build/sage-5.0.beta8-gcc/local/lib
 abs.lo acos.lo acosh.lo add.lo add_fr.lo add
 _si.lo add_ui.lo arg.lo asin.lo asinh.lo atan.lo atanh.lo clear.lo cmp.lo
 cmp_si_si.lo conj.lo cos.lo cosh.lo div_2exp.lo div.lo div_fr.lo
  div_ui.lo exp.lo fma.lo fr_div.lo fr_sub.lo get_prec2.lo get_prec.lo
 get_version.lo get_x.lo imag.lo init2.lo init3.lo inp_str.lo log.lo
 mem.lo mul_2exp.lo mul.lo mul_fr.lo mul_i.lo mul_si.lo mul_ui.lo neg.lo
 norm.lo out_str.lo pow.lo pow_fr.lo pow_ld.lo pow_d.lo pow_si.lo p
 ow_ui.lo pow_z.lo proj.lo real.lo urandom.lo set.lo set_prec.lo set_str.lo
 set_x.lo set_x_x.lo sin.lo sin_cos.lo sinh.lo sqr.lo sqrt.lo st
 rtoc.lo sub.lo sub_fr.lo sub_ui.lo swap.lo tan.lo tanh.lo uceil_log2.lo
 ui_div.lo ui_ui_sub.lo  -lmpfr -lgmp -lm
 libtool: link: gcc -shared  -fPIC -DPIC  .libs/abs.o .libs/acos.o
 .libs/acosh.o .libs/add.o .libs/add_fr.o .libs/add_si.o .libs/add_ui.o .
 libs/arg.o .libs/asin.o .libs/asinh.o .libs/atan.o .libs/atanh.o
 .libs/clear.o .libs/cmp.o .libs/cmp_si_si.o .libs/conj.o .libs/cos.o .lib
 s/cosh.o .libs/div_2exp.o .libs/div.o .libs/div_fr.o .libs/div_ui.o
 .libs/exp.o .libs/fma.o .libs/fr_div.o .libs/fr_sub.o .libs/get_prec2.
 o .libs/get_prec.o .libs/get_version.o .libs/get_x.o .libs/imag.o
 .libs/init2.o .libs/init3.o .libs/inp_str.o .libs/log.o .libs/mem.o .lib
 s/mul_2exp.o .libs/mul.o .libs/mul_fr.o .libs/mul_i.o .libs/mul_si.o
 .libs/mul_ui.o .libs/neg.o .libs/norm.o .libs/out_str.o .libs/pow.o .
 libs/pow_fr.o .libs/pow_ld.o .libs/pow_d.o .libs/pow_si.o .libs/pow_ui.o
 .libs/pow_z.o .libs/proj.o .libs/real.o .libs/urandom.o .libs/set
 .o .libs/set_prec.o .libs/set_str.o .libs/set_x.o .libs/set_x_x.o
 .libs/sin.o .libs/sin_cos.o .libs/sinh.o .libs/sqr.o .libs/sqrt.o .libs/
 strtoc.o .libs/sub.o .libs/sub_fr.o .libs/sub_ui.o .libs/swap.o
 .libs/tan.o .libs/tanh.o .libs/uceil_log2.o .libs/ui_div.o .libs/ui_ui_sub
 .o   -Wl,-rpath
 
-Wl,/home/buildbot/build/sage/cleo-1/cleo_full/build/sage-5.0.beta8-gcc/local/lib
 -Wl,-rpath -Wl,/home/buildbot/build/sage
 /cleo-1/cleo_full/build/sage-5.0.beta8-gcc/local/lib
 -L/home/buildbot/build/sage/cleo-1/cleo_full/build/sage-5.0.beta8-gcc/local/lib
 /home
 
/buildbot/build/sage/cleo-1/cleo_full/build/sage-5.0.beta8-gcc/local/lib/libmpfr.so
 /home/buildbot/build/sage/cleo-1/cleo_full/build/sage-
 5.0.beta8-gcc/local/lib/libgmp.so -lm  -O2   -Wl,-soname -Wl,libmpc.so.2
 -o .libs/libmpc.so.2.0.0
 .libs/acos.o: In function `realpath':
 /usr/include/bits/stdlib.h:33: multiple definition of `realpath'
 .libs/abs.o:/usr/include/bits/stdlib.h:33: first defined here
 .libs/acos.o: In function `ptsname_r':
 /usr/include/bits/stdlib.h:49: multiple definition of `ptsname_r'
 .libs/abs.o:/usr/include/bits/stdlib.h:49: first defined here
 .libs/acos.o: In function `wctomb':
 /usr/include/bits/stdlib.h:64: multiple definition of `wctomb'
 .libs/abs.o:/usr/include/bits/stdlib.h:64: first defined here
 .libs/acos.o: In function `mbstowcs':
 /usr/include/bits/stdlib.h:89: multiple definition of `mbstowcs'
 .libs/abs.o:/usr/include/bits/stdlib.h:89: first defined here
 .libs/acos.o: In function `wcstombs':
 /usr/include/bits/stdlib.h:110: multiple definition of `wcstombs'
 .libs/abs.o:/usr/include/bits/stdlib.h:110: first defined here
 [...]
 }}}
 Why does C99 code get linked differently from C89 code?

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12515#comment:28>
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to