#12369: Add a gcc package
------------------------+---------------------------------------------------
Reporter: jdemeyer | Owner: tbd
Type: task | Status: new
Priority: major | Milestone: sage-5.0
Component: packages | Keywords:
Work_issues: | Upstream: N/A
Reviewer: | Author: Jeroen Demeyer
Merged: | Dependencies: #11073, #10492, #12366, #12367,
#12368, #12405, #12416, #12422, #12423, #12425
------------------------+---------------------------------------------------
Comment(by jdemeyer):
Replying to [comment:17 rohana]:
> I haven't looked at the spkg yet (which is probably old anyway), but
looking at the root patch that you wrote, I have a few of requests:
>
> 1. I agree with Karl. Do not install gcc if gcc is new enough (>=4.0.1),
this will cause every mac developer to have to build gcc upon building
sage (significantly increasing the build time). I'm not a mac user, but I
know that if I had to do this on my system, I would be annoyed.
Well, we ''do'' need to build Fortran on a Mac (I'm assuming that the
fortran spkg will go away). And Sage seems to require that the gcc and
gfortran versions are the same. It is true that the build time of gcc is
significant:
{{{
real 21m4.603s
user 15m56.183s
sys 4m26.492s
Successfully installed gcc-4.4.6
}}}
(on bsd.math, single-threaded), but it's not that bad. I think the
"plus" of having a working Sage compiled with optimizations (as opposed to
using XCode 4 with many packages compiled with -O0) outweighs the "minus"
of 25 minutes longer build time.
> 2. Assume the user knows what they are doing it CC is set (like you do
for CXX and SAGE_FORTRAN). While not a very common use case, it would be
helpful to not have to go hack the installation file if you were trying to
port sage to another compiler (like I am right now).
Well, I was thinking anyway of adding an environment variable (or future
`./configure` option) to either force installation of gcc, or disable
installation of gcc. Don't forget that GCC has a few dependencies, and
one might set `CC` to build those dependencies, but still want GCC to be
installed. Anyway, I don't care much about this.
> 3. (You might be doing this already) If fortran is the only language
that needs to be built (such as on macs), please do not build gcc and g++.
I thought gcc and gfortran needed to be the same versions?
> And a couple comments:
>
> 1. You assume that CC supports -dumpversion when determining if you
should upgrade gcc. I'm fairly certain this is not an option supported by
all compilers. Also, the value you would get would be meaningless anyway,
since it wouldn't be a gcc version anyway (well, unless it is clang).
Agreed.
> 2. For OBJC and OBJCXX, I would point to /usr/bin/cc and /usr/bin/cpp
instead. If/when apple stops distributing gcc/g++, then these will
continue to point to valid compilers.
Agreed (modulo the fact that you mean `c++` instead of the preprocessor
`cpp`).
> In response to Karl about a replacement for Xcode (or tools on any
platform). This does not provide one, even in binary distributions of sage
since we need binutils and make, neither of which this would provide (and
neither of which are on OSX without Xcode).
True...
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12369#comment:22>
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.