Concerning Clang 3.3 and the massive trail of GCC add-ons

Sylvestre Ledru sylvestre at
Wed Apr 17 05:53:32 UTC 2013

On 17/04/2013 02:10, Marc Driftmeyer wrote:
> Firstly,
> Thanks for packaging this. It saves time in my life and I truly
> appreciate the effort, though I must confess to having a localized
> /usr/local copy of compiler-rt, clang, llvm, libcxxabi, libc++,
> test-suite, clang extra built nightly on my dev system.
> My question concerns the GCC baggage:
> $ sudo apt-get -t experimental install clang-3.3
> The following packages will be REMOVED:
>   compiler-rt
> The following NEW packages will be installed:
>   clang-3.3 cpp-4.8 gcc-4.8 gcc-4.8-base libasan0 libatomic1
> libcloog-ppl1 libgcc-4.7-dev libgcc-4.8-dev
>   libgfortran-4.7-dev libobjc-4.7-dev libtsan0 llvm-3.3 llvm-3.3-dev
> llvm-3.3-runtime
> The following packages will be upgraded:
>   cpp-4.7 fixincludes g++-4.7 gcc-4.7 gcc-4.7-base gcc-4.7-plugin-dev
> gfortran-4.7 gobjc++-4.7 gobjc-4.7
>   libgcc1 libgfortran3 libgomp1 libitm1 libmudflap0 libmudflap0-4.7-dev
> libobjc4 libquadmath0 libstdc++6
>   libstdc++6-4.7-dev
> 19 upgraded, 15 newly installed, 1 to remove and 174 not upgraded.
> Need to get 87.7 MB of archives.
> After this operation, 130 MB of additional disk space will be used.
> Do you want to continue [Y/n]? n
> I understand and expect when a latest compiler-rt against trunk you
> choose to build against arrives that removal will not exist.
> I don't grasp the need for all the gcc-4.8 and gcc-4.7 baggage seeing as
> the only need for gcc is to build a first copy of llvm/clang and from
> there it self-hosts.
> What is the point of all this extra that I have zero use for from
> Experimental? I've got gcc-4.7.2 from Sid installed and that's all one
> needs.
Yes and no ;)

gcc in experimental has some interesting changes implemented.
It introduces libobjc-X.Y-dev, libobjc-4.7-dev, etc
They have been designed, in part, for clang.
Once we release wheezy and the packages are uploaded in unstable, it
will enables us to install clang with only some -dev packages from the
gcc suite (instead of installing that much stuff).
About the 4.8 installed, I believe it is related to the complicated
relationship between unstable & experimental.


More information about the Pkg-llvm-team mailing list