Opened 9 years ago

Closed 9 years ago

#48613 closed defect (invalid)

About root6 dependencies

Reported by: graziosi.angelo@… Owned by: cjones051073 (Chris Jones)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: mojca (Mojca Miklavec), cjones051073 (Chris Jones), seanfarley (Sean Farley)
Port: root6

Description

In my previous MacPorts installation (Yosemite 10.0.4), I installed root6 with:

sudo port install root6 +avahi +fftw3 +fitsio +gcc5 +ldap +mysql56 +odbc +postgresql92 +pythia +python34 +sqlite3 +vc +xrootd

and only gcc5 compiler was installed

port installed | grep gcc
gcc5 @5.2.0_0 (active)
  gcc47 @4.7.4_5 (active)
  gcc_select @0.1_8 (active)
  gsl @1.16_3+gcc5 (active)
  libgcc @5.2.0_0 (active)
  pdftk @2.02_0+gcc47 (active)
  py27-numpy @1.9.2_2+gcc5 (active)
  root6 @6.04.02.99_0+avahi+cocoa+fftw3+fitsio+gcc5+graphviz+gsl+http+ldap+minuit2+mysql56+odbc+opengl+postgresql92+pythia+python34+roofit+soversion+sqlite3+ssl+tmva+vc+xml+xrootd (active)

Now, I did a new Yosemite 10.10.5 installation (from scratch) and reinstalled MacPorts. This time, I saw that root6 has gcc5 variant by default so I installed root6 with:

sudo port install root6 +avahi +cxx14 +fftw3 +fitsio +ldap +mysql56 +odbc +postgresql92 +pythia +python34 +sqlite3 +vc +xrootd

adding the cxx14 variant and removing the explicit call "+gcc5". Now it has installed also gcc49:

[...]
--->  Computing dependencies for root6
--->  Dependencies to be installed: avahi dbus-python27 dbus-glib gtk3 at-spi2-atk at-spi2-core xorg-libXi xorg-inputproto xorg-libXfixes xorg-fixesproto xorg-libXtst xorg-recordproto atk hicolor-icon-theme libepoxy mesa xorg-dri2proto xorg-glproto xorg-libXdamage xorg-damageproto xorg-libXmu xorg-libXcomposite xorg-compositeproto xorg-libXcursor xorg-libXinerama xorg-xineramaproto xorg-libXrandr xorg-randrproto libdaemon libglade2 gtk2 py27-gdbm py27-pygtk py27-cairo py27-gobject py27-numpy gcc49 cctools llvm-3.5 libcxx llvm_select cloog isl gcc_select ld64 ld64-latest libgcc libmpc mpfr py27-cython cython_select py27-nose nosetests_select cfitsio cmake curl libarchive lzo2 py34-sphinx py34-alabaster python34 python3_select py34-babel py34-setuptools py34-tz py34-docutils py34-roman py34-jinja2 py34-markupsafe py34-pygments py34-six py34-snowballstemmer py34-sphinx_rtd_theme sphinx_select gcc5 giflib graphviz gd2 xpm gts libnetpbm libLASi xorg-libXaw gsl libiodbc libpqxx postgresql92 ossp-uuid postgresql_select readline lzma mysql56 mysql_select tcp_wrappers openldap cyrus-sasl2 kerberos5 libcomerr db46 icu pythia boost root_select xrootd libevent swig
[...]
port installed | grep gcc
  gcc49 @4.9.3_0 (active)
  gcc_select @0.1_8 (active)
  [...]

It seems that adding cxx14 variant has triggered this.. Is really so? What's happening?

I wonder if there is a better way to handle this.

For example, I notice that in my previous installation I had:

port installed | grep num
  py27-numpy @1.9.2_2+gcc5 (active)

Instead now,

port installed | grep num
  py27-numpy @1.9.2_2+gfortran (active)

Which gfortran?

Thanks,

Angelo.

Change History (4)

comment:1 Changed 9 years ago by mf2k (Frank Schima)

Cc: mojca@… added; onesc@… removed
Keywords: root6 gcc removed
Owner: changed from macports-tickets@… to jonesc@…

comment:2 in reply to:  description ; Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: jonesc@… sean@… added

Replying to graziosi.angelo@…:

In my previous MacPorts installation (Yosemite 10.0.4), I installed root6 with:

sudo port install root6 +avahi +fftw3 +fitsio +gcc5 +ldap +mysql56 +odbc +postgresql92 +pythia +python34 +sqlite3 +vc +xrootd

and only gcc5 compiler was installed

By specifying "+gcc5" here, you're requesting that gcc5 be used both for root6 and for all the dependencies of root6 that have a gcc5 variant that were not already installed.

Now, I did a new Yosemite 10.10.5 installation (from scratch) and reinstalled MacPorts. This time, I saw that root6 has gcc5 variant by default so I installed root6 with:

sudo port install root6 +avahi +cxx14 +fftw3 +fitsio +ldap +mysql56 +odbc +postgresql92 +pythia +python34 +sqlite3 +vc +xrootd

adding the cxx14 variant and removing the explicit call "+gcc5". Now it has installed also gcc49:

It seems that adding cxx14 variant has triggered this.. Is really so? What's happening?

Adding the cxx14 variant has not triggered this; rather, not requesting the gcc5 variant has triggered this. Although the root6 port defaults to gcc5 now, I guess some of its dependencies don't default to gcc5 yet. Since you did not request a specific gcc variant, each port used its default. Any port that offers gcc variants should ideally be enhanced to have a gcc5 variant and make it the default. (For most ports, this should be possible, but for some, like pdftk, which I see you have installed, it is not possible right now.)

I wonder if there is a better way to handle this.

For example, I notice that in my previous installation I had:

port installed | grep num
  py27-numpy @1.9.2_2+gcc5 (active)

Instead now,

port installed | grep num
  py27-numpy @1.9.2_2+gfortran (active)

Which gfortran?

I really can't tell you. I've tried to read the compilers 1.0 portgroup to see what it does in this case, but it is too complicated for me to figure out.

comment:3 in reply to:  2 Changed 9 years ago by graziosi.angelo@…

Replying to ryandesign@…:

Replying to graziosi.angelo@…:

In my previous MacPorts installation (Yosemite 10.0.4), I installed root6 with:

sudo port install root6 +avahi +fftw3 +fitsio +gcc5 +ldap +mysql56 +odbc +postgresql92 +pythia +python34 +sqlite3 +vc +xrootd

and only gcc5 compiler was installed

By specifying "+gcc5" here, you're requesting that gcc5 be used both for root6 and for all the dependencies of root6 that have a gcc5 variant that were not already installed.

Ugh!! This was my mistake! Thanks for clarification..

For example, I notice that in my previous installation I had:

port installed | grep num
  py27-numpy @1.9.2_2+gcc5 (active)

Instead now,

port installed | grep num
  py27-numpy @1.9.2_2+gfortran (active)

Which gfortran?

I really can't tell you. I've tried to read the compilers 1.0 portgroup to see what it does in this case, but it is too complicated for me to figure out.

I can image.. I hope some MacPorts guru can explain this.

Thanks a lot,

Angelo.

comment:4 Changed 9 years ago by mojca (Mojca Miklavec)

Resolution: invalid
Status: newclosed
Version: 2.3.3

From what I understand one half of the mystery has been solved, while asking for clarification about numpy here might not be the best place to get attention from other knowledgable maintainers.

Angelo, please ask on the macports-dev mailing list or on IRC if you are still curious. I'm closing this ticket because I don't think there is anything we can do within the root6 port to change the described behaviour in any way. If any issues are left, those probably belong to the base. If I am wrong, please open a new ticket or reopen this one.

Note: See TracTickets for help on using tickets.