make[4]: Entering directory `/home/mjhammel/src/ximba/bb/bld/buildroot-snapshot/output/build/alsa-lib-1.0.24.1/src/ucm' CC utils.lo CC parser.lo CC main.lo parser.c: In function 'uc_mgr_scan_master_configs': parser.c:1138: error: 'versionsort' undeclared (first use in this function) parser.c:1138: error: (Each undeclared identifier is reported only once parser.c:1138: error: for each function it appears in.) I'm on Fedora 13, using an external Crosstool-NG 1.10.0 toolchain. Tomorrow I'll try back-patching to 1.0.23 and see if that works.
Odd, it builds here with an internal uClibc toolchain (default config). What C library are you using? It doesn't even seem like you can disable versionsort support in uClibc: ./host/usr/bin/arm-linux-nm -D staging/lib/libuClibc-0.9.31.so|grep versionsort 0000c4dc T versionsort
I'm using gcc 4.4.5 in this test. I was using gcc 4.4.1 with Crosstool-NG 1.8.2 but that had a different problem that I posted about on the mailing list. Since I wasn't up to latest revs of either Buildroot or Crosstool-NG I decided to try that first and ran into this. Anyway, if you'd like me to try with an earlier version of gcc I can.
Ugh. I'm such a dummy. You asked for C-library, not compiler. I'm using uClibc 0.9.30.2. Sorry 'bout that.
Ahh, that explains it. versionsort() was only added to uClibc back in Feb 2009, and 0.9.30 is from 2008. Why are you using such an ancient uClibc version (together with a quite recent gcc even)? uClibc 0.9.32 is very close to release by now.
I think that may have been the latest available in Crosstool-NG 1.8.2 which was what I was using before testing the latest release (1.10.0). Looks like 1.10.0 only has uClibc 0.9.30.[1-3]. 0.9.31 is marked EXPERIMENTAL. There is also a "latest snapshot" option I can try. I'll give those a try and see if things fare any better.
(In reply to comment #0) > make[4]: Entering directory > `/home/mjhammel/src/ximba/bb/bld/buildroot-snapshot/output/build/alsa-lib-1.0.24.1/src/ucm' > CC utils.lo > CC parser.lo > CC main.lo > parser.c: In function 'uc_mgr_scan_master_configs': > parser.c:1138: error: 'versionsort' undeclared (first use in this function) > parser.c:1138: error: (Each undeclared identifier is reported only once > parser.c:1138: error: for each function it appears in.) > > I'm on Fedora 13, using an external Crosstool-NG 1.10.0 toolchain. > > Tomorrow I'll try back-patching to 1.0.23 and see if that works. The same problem also happened to me. And when I try uClibc 0.9.31 in crosstool-ng 1.10.1, I got this error below: [ALL ] /opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/.build/tools/bin/install -c -m 644 ./libiberty.a /opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/lib/`/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/.build/arm-unknown-linux-uclibcgnueabi/build/build-cc/./gcc/xgcc -B/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/.build/arm-unknown-linux-uclibcgnueabi/build/build-cc/./gcc/ -B/opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/bin/ -B/opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/lib/ -isystem /opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/include -isystem /opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/sys-include -g -Os -print-multi-os-directory`/./libiberty.an [ALL ] ( cd /opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/lib/`/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/.build/arm-unknown-linux-uclibcgnueabi/build/build-cc/./gcc/xgcc -B/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/.build/arm-unknown-linux-uclibcgnueabi/build/build-cc/./gcc/ -B/opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/bin/ -B/opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/lib/ -isystem /opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/include -isystem /opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/sys-include -g -Os -print-multi-os-directory` ; chmod 644 ./libiberty.an; /opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/bin/ranlib ./libiberty.an ) [ALL ] mv -f /opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/lib/`/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/.build/arm-unknown-linux-uclibcgnueabi/build/build-cc/./gcc/xgcc -B/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/.build/arm-unknown-linux-uclibcgnueabi/build/build-cc/./gcc/ -B/opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/bin/ -B/opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/lib/ -isystem /opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/include -isystem /opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/sys-include -g -Os -print-multi-os-directory`/./libiberty.an /opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/lib/`/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/.build/arm-unknown-linux-uclibcgnueabi/build/build-cc/./gcc/xgcc -B/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/.build/arm-unknown-linux-uclibcgnueabi/build/build-cc/./gcc/ -B/opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/bin/ -B/opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/lib/ -isystem /opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/include -isystem /opt/buildroot_real6410/output_fs2410/host/usr/arm-unknown-linux-uclibcgnueabi/sys-include -g -Os -print-multi-os-directory`/./libiberty.a [ALL ] make[7]: Entering directory `/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/.build/arm-unknown-linux-uclibcgnueabi/build/build-cc/arm-unknown-linux-uclibcgnueabi/libiberty/testsuite' [ALL ] make[7]: Nothing to be done for `install'. [ALL ] make[7]: Leaving directory `/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/.build/arm-unknown-linux-uclibcgnueabi/build/build-cc/arm-unknown-linux-uclibcgnueabi/libiberty/testsuite' [ALL ] make[6]: Leaving directory `/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/.build/arm-unknown-linux-uclibcgnueabi/build/build-cc/arm-unknown-linux-uclibcgnueabi/libiberty' [ALL ] make[5]: Leaving directory `/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/.build/arm-unknown-linux-uclibcgnueabi/build/build-cc' [ALL ] make[4]: Leaving directory `/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/.build/arm-unknown-linux-uclibcgnueabi/build/build-cc' [ALL ] ln: creating symbolic link `/opt/buildroot_real6410/output_fs2410/host/usr/bin/arm-unknown-linux-uclibcgnueabi-cc': File exists [ERROR] Build failed in step 'Installing final compiler' [ERROR] Error happened in '/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/scripts/functions' in function 'CT_DoExecLog' (line unknown, sorry) [ERROR] called from '/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/scripts/build/cc/gcc.sh' at line # 534 in function 'do_cc' [ERROR] called from '/opt/buildroot_real6410/output_fs2410/build/crosstool-ng-1.10.1/scripts/crosstool-NG.sh' at line # 606 in function 'main' [ERROR] Look at '/opt/buildroot_real6410/output_fs2410/host/usr/build.log' for more info on this error. [ERROR] (elapsed: 15:38.24) make[3]: *** [build] Error 1 make[2]: *** [build.2] Error 2 make[1]: *** [/opt/buildroot_real6410/output_fs2410/stamps/ct-ng-toolchain-built] Error 2 make: *** [all] Error 2
Created attachment 3950 [details] package/multimedia/alsa-lib/alsa-lib-1.0.24.1-uclibc-missing-versionsort.patch uClibc users ought to upgrade. However, if you're trapped in a parallel space-time, you may place the attached patch file in package/multimedia/alsa-lib/ for a shameful plug.