GCC Dependencies

Chris Jones jonesc at hep.phy.cam.ac.uk
Mon Aug 13 00:14:35 UTC 2018


Hi,

What you are proposing seems to suggest no long making, for instance, libgcc6 depend on the libgcc7 or libgcc. This means if you install only libgcc6 you will not get a complete runtime, only the incomplete part that provides. I am not sure this is a good idea. For one it means all the old gcc versions have to explicitly declare a dependency on all the libgcc versions, which is currently not required, as each, once installed guarantees a complete runtime via its dependencies. For me, this should not be changed.

You also seem to be proposing moving all the gcc port dependencies on libgcc to runtime. Please note the dependencies are not only required at runtime, but are in a number of cases also required whilst building. 

Chris

> On 12 Aug 2018, at 7:47 pm, Marcus Calhoun-Lopez <mcalhoun at macports.org> wrote:
> 
> Currently, the GCC dependencies on the various parts of libgcc seem somewhat inconsistent or at least difficult to follow.
> Before I go to the trouble of creating a pull request, I thought someone might have some insights.
> Here is what I propose:
> 
> gcc43, gcc44, gcc45:
>    Library Dependencies: 
>    Runtime Dependencies: libgcc45, libgcc6, libgcc7, libgcc
> 
> gcc46, gcc47, gcc48, gcc49, gcc5, gcc6:
>    Library Dependencies: 
>    Runtime Dependencies: libgcc6, libgcc7, libgcc
> 
> gcc7:
>    Library Dependencies: 
>    Runtime Dependencies: libgcc7, libgcc
> 
> gcc8:
>    Library Dependencies: 
>    Runtime Dependencies: libgcc
> 
> gcc9:
>    Library Dependencies: 
>    Runtime Dependencies: libgcc-devel
> 
> --------------------------------------------------
> 
> libgcc45:
>    Library Dependencies:
>    Runtime Dependencies:
> 
> libgcc6:
>    Library Dependencies:
>    Runtime Dependencies:
> 
> libgcc7:
>    Library Dependencies: 
>    Runtime Dependencies:
> 
> 
> ==============================================
> This is the current status of things:
> ==============================================
> 
> gcc43, gcc44, gcc45:
>    Library Dependencies: libgcc
>    Runtime Dependencies: libgcc45 libgcc6
> 
> gcc46, gcc47, gcc48, gcc49, gcc5:
>    Library Dependencies: libgcc
>    Runtime Dependencies: libgcc6
> 
> gcc6:
>    Library Dependencies: libgcc libgcc7
>    Runtime Dependencies: libgcc6
> 
> gcc7:
>    Library Dependencies: libgcc
>    Runtime Dependencies: libgcc7
> 
> gcc8:
>    Library Dependencies: libgcc
>    Runtime Dependencies: 
> 
> gcc9:
>    Library Dependencies: libgcc-devel
>    Runtime Dependencies: 
> 
> --------------------------------------------------
> 
> libgcc45:
>    Library Dependencies:
>    Runtime Dependencies: 
> 
> libgcc6:
>    Library Dependencies: llibgcc libgcc7
>    Runtime Dependencies: 
> 
> libgcc7:
>    Library Dependencies: llibgcc
>    Runtime Dependencies: 
> 
> --------------------------------------------------
> 
> Port libgcc45 contains:
>  /opt/local/lib/libgcc/libobjc-gnu.2.dylib
> 
> 
> Port libgcc6 contains:
>  /opt/local/lib/libgcc/libasan.3.dylib
>  /opt/local/lib/libgcc/libgfortran.3.dylib
> 
> 
> Port libgcc7 (for ${os.major}>=10) contains:
>  /opt/local/lib/libgcc/libasan.4.dylib
>  /opt/local/lib/libgcc/libcilkrts.5.dylib
>  /opt/local/lib/libgcc/libgfortran.4.dylib
>  /opt/local/lib/libgcc/libubsan.0.dylib
> 
> 
> libgcc and libgcc-devel conflict
> libgcc depends on
>    libgcc8 if ${os.major}>=10
>    libgcc7 otherwise



More information about the macports-dev mailing list