Вы здесь

gcc в stage3 не работает

Распаковал stage3 для armv5tel на свежекупленный ix2 (пришлось добывать небизибоксовский bzip2 как всегда) и обнаружил, что сабж всегда пытается линковать всё статически. Как результат - первый пакет, который я попытался собрать (ppp) не линкуется:

armv5tel-softfloat-linux-gnueabi-gcc -o pppd main.o magic.o fsm.o lcp.o ipcp.o upap.o chap-new.o md5.o ccp.o ecp.o auth.o options.o demand.o utils.o sys-linux.o ipxcp.o tty.o eap.o chap-md5.o session.o mplscp.o md4.o chap_ms.o sha1.o pppcrypt.o multilink.o tdb.o spinlock.o ipv6cp.o eui64.o cbcp.o  -lcrypt -lutil -lpam -ldl -ldl
options.o: In function `loadplugin':
options.c:(.text+0xb18): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/gcc/armv5tel-softfloat-linux-gnueabi/4.8.3/../../../libdl.a(dlopen.o): In function `dlopen':
(.text+0xc): undefined reference to `__dlopen'
/usr/lib/gcc/armv5tel-softfloat-linux-gnueabi/4.8.3/../../../libdl.a(dlclose.o): In function `dlclose':
(.text+0x0): undefined reference to `__dlclose'
/usr/lib/gcc/armv5tel-softfloat-linux-gnueabi/4.8.3/../../../libdl.a(dlsym.o): In function `dlsym':
(.text+0xc): undefined reference to `__dlsym'
/usr/lib/gcc/armv5tel-softfloat-linux-gnueabi/4.8.3/../../../libdl.a(dlerror.o): In function `dlerror':
(.text+0x0): undefined reference to `__dlerror'
collect2: error: ld returned 1 exit status

Причём, если вместо -l указывать /lib/libc.so и т.д, всё работает.
Что не менее странно,

int main()
{
printf("Hello!!!");
return 0;
}

с gcc hello.c -o hello
компилируется в

hello: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, BuildID[sha1]=7bc49bdb23cb9dad6be22b09afa7e200b0c02398, not stripped

Даже не знаю, куда копать.

В первом случае используется armv5tel-softfloat-linux-gnueabi-gcc во втором просто gcc. Тупой вопрос, а это точно один и тот же компилятор?

Чем больше юзерфрендли, тем сложнее юзать.

Только один. Как выяснилось, на других пакетах он работает. Ума не приложу, почему на ppp он захотел static.

Локальный оверлей растёт