# 07:11:20 |
y_morin |
joins #crosstool-ng |
# 07:49:16 |
kos_tom |
y_morin: I had a quick look at the CodeSourcery shell script |
# 07:49:24 |
kos_tom |
y_morin: they build their own expat library, their own zlib library |
# 07:49:51 |
y_morin |
kos_tom: Ah. crosstool-NG builds its own expat, too, but only for the native gdb on the target. |
# 07:50:16 |
y_morin |
kos_tom: I would like to build as few things as possible. It's a pain to maintain... |
# 07:50:47 |
kos_tom |
their expat is built this way: |
# 07:50:49 |
kos_tom |
/scratch/janisjo/arm-linux-lite/src/expat-mirror/configure --build=i686-pc-linux-gnu --target=arm-none-linux-gnueabi --prefix=/scratch/janisjo/arm-linux-lite/obj/host-libs-2011.03-41-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --disable-shared --host=i686-pc-linux-gnu --disable-nls |
# 07:50:56 |
kos_tom |
well configured this way. |
# 07:51:14 |
y_morin |
kos_tom: Also, zlib is known to have had a bunch of security bugs in the past, and I would not want to rely on anything that uses its own version of zlib, and not the one on the system. |
# 07:51:53 |
kos_tom |
y_morin: well, if you build static anyway, you're not using the one on the ysstem. |
# 07:52:09 |
kos_tom |
y_morin: that may be a stupid question, but how do you build something statically against all libs, except the C library ? |
# 07:52:24 |
kos_tom |
y_morin: I mean, I know you can do gcc -o foo foo.c /usr/lib/libfoobar.a |
# 07:52:38 |
y_morin |
kos_tom: gcc -static |
# 07:52:38 |
kos_tom |
but if the thing is like gdb, behind a complex autoconf/automake build system? |
# 07:52:51 |
kos_tom |
y_morin: this will link statically against the C library as well, no? |
# 07:53:08 |
y_morin |
kos_tom: well, yes. It's an all-or-nothing option. |
# 07:53:19 |
y_morin |
kos_tom: I mean, in crosstool-NG. |
# 07:53:43 |
kos_tom |
yeah, hence my question (not related to ct-ng directly): how do you build statically against some libs, and dynamically against others? |
# 07:54:06 |
y_morin |
kos_tom: but is it really worth the effort to ask for static-link against foo/bar/buz, but still keep shared-link for libc/libm/... |
# 07:54:09 |
kos_tom |
in the codesourcery case, they point the gdb configure to a version of libexpat where the shared version is not available, so obviously, it will build statically against it. |
# 07:54:19 |
y_morin |
kos_tom: Ah. No idea... |
# 07:54:44 |
kos_tom |
y_morin: yes, because glibc provides backward compatibility, so as long as you build your toolchain on a sufficiently old machine, it will work on many other machines. |
# 07:54:52 |
y_morin |
kos_tom: But if you use smthg like: ./configure --with-expat=/some:place/blabla |
# 07:55:00 |
kos_tom |
y_morin: and static linking against the C library makes the binaries really huge. |
# 07:55:05 |
y_morin |
kos_tom: and you have only static stuff there, then you'd use static expat. |
# 07:55:16 |
kos_tom |
y_morin: yes, but if you use the system expat, which is installed both shared *and* static ? |
# 07:56:00 |
y_morin |
kos_tom: Yes, I know the problem, just pointing to how CS did, and how we do in crosstool-NG for the libs we do build. |
# 07:56:18 |
y_morin |
kos_tom: otherwise, there's no sane way to do that via the ./configure-thinggy... |
# 07:58:28 |
smartin |
joins #crosstool-ng |
# 08:00:04 |
kos_tom |
y_morin: yeah, that's what I thought. |
# 14:52:01 |
mnt_real |
joins #crosstool-ng |
# 15:17:30 |
ccct |
y_morin: 1.12.4 completed a build on ubuntu without the loop, thanks. |
# 15:28:39 |
y_morin |
ccct: OK, thanks for the heads up! :-) |
# 15:43:11 |
mnt_real_ |
joins #crosstool-ng |
# 15:43:59 |
mnt_real |
quits : Quit: Leaving |
# 15:46:20 |
y_morin |
quits : Ping timeout: 252 seconds |
# 15:46:59 |
mnt_real |
joins #crosstool-ng |
# 17:34:47 |
smartin |
quits |
# 18:17:06 |
mnt_real_ |
quits : Quit: Ex-Chat |
# 19:23:17 |
al`_ |
joins #crosstool-ng |
# 19:24:59 |
al` |
quits : Ping timeout: 260 seconds |
# 22:22:00 |
y_morin |
joins #crosstool-ng |
# 23:37:37 |
y_morin |
quits : Quit: Nighty Nite... |