Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Fri, 4 Nov 2011 15:04:10 +0400
From: Vasiliy Kulikov <>
Subject: Re: gcc .a's and .so's


On Fri, Nov 04, 2011 at 07:17 +0400, Solar Designer wrote:
> It turns out that your gcc.spec did not package the symlink,
> which resulted in my test OpenMP program builds getting (silently)
> statically-linked against libgomp.a.  This is not how other distros do it.
> I've just added packaging of the .so to the same -devel subpackage that
> had the .a, but I think there are more discrepancies like this.  In some
> cases, they can be missing .so's.  In others, they may be .a's that
> shouldn't be packaged.  Can you please check your gcc.spec vs. Fedora's
> to spot unintentional differences like that?

I did a check via
"rpm -ql gcc" vs

Fedora's spec file:;a=blob;f=gcc.spec;h=5801bce771c190642657c38e8703b207f42d7765;hb=de609bb65f661b7da284a4138b7d1a228c64c978

1) Fedora has 2 files in include/, which we don't have:
1457 mv $FULLPATH/include-fixed/syslimits.h $FULLPATH/include/syslimits.h
1458 mv $FULLPATH/include-fixed/limits.h $FULLPATH/include/limits.h
And Fedora doesn't use include-fixed directory - it is removed after the lines above.

But in Owl limits.h is provided by glibc:

    $ rpm -qf /usr/include/limits.h 

2) Fedora somehow has cc1 in cpp, not gcc (not a big deal):
1876 %files -n cpp -f cpplib.lang
1885 %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/cc1

3) Fedora has custom wrappers for c89 and c99, which we don't have.

4) Fedora has lto stuff in /usr/libexec/gcc/i686-openwall-linux/4.6.2 instead of /usr/lib/gcc/i686-openwall-linux/4.6.2/

I don't known whether (3) and (4) are important, (2) is not important
IMHO.  (1) needs an investigation after we upgrade glibc - maybe new glibc
doesn't provide these files?


Powered by blists - more mailing lists

Your e-mail address:

Powered by Openwall GNU/*/Linux - Powered by OpenVZ