From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/166 Path: news.gmane.org!not-for-mail From: Isaac Dunham Newsgroups: gmane.linux.lib.musl.general Subject: musl-gcc vs. BusyBox 1.18.5: multiple definitions of '_start' Date: Thu, 14 Jul 2011 13:24:37 -0700 Message-ID: <20110714132437.507176ef@newbook> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1310675104 21224 80.91.229.12 (14 Jul 2011 20:25:04 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 14 Jul 2011 20:25:04 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-250-gllmg-musl=m.gmane.org@lists.openwall.com Thu Jul 14 22:24:57 2011 Return-path: Envelope-to: gllmg-musl@lo.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by lo.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1QhSSv-0004kJ-6m for gllmg-musl@lo.gmane.org; Thu, 14 Jul 2011 22:24:57 +0200 Original-Received: (qmail 11470 invoked by uid 550); 14 Jul 2011 20:24:56 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 11461 invoked from network); 14 Jul 2011 20:24:56 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=lavabit; d=lavabit.com; b=Nv+wHI7a8N4jSvP1pG0LVzj8J949wFdQUc33NBhnyeVI5aEZGC0aosz8Y+ljcY9/ec/v2cGEiYZ690g7ezgDQwa01uENi+WNXzKmFtyE8LwtRDJOwEXVE2loCUeCDWCoZ67N5nf90XgYmHNBdJq9GPwwNdtEgSxntj2bx0+qyl8=; h=Date:From:To:Subject:Message-ID:X-Mailer:Mime-Version:Content-Type:Content-Transfer-Encoding; X-Mailer: Claws Mail 3.7.4 (GTK+ 2.20.1; i486-pc-linux-gnu) Xref: news.gmane.org gmane.linux.lib.musl.general:166 Archived-At: I'm trying to set up a musl-based busybox system, using a version of musl (d3fd192523db544e6005051f224a2d7bafabedd9) that I pulled from git just an hour or so ago (prefix=/opt/musl). My host is Ubuntu 10.04 "Lucid Lynx" with gcc 4.4.3. When I build busybox 1.18.5 with the default cc (gcc using eglibc), it compiles appropriately. But when I use "CC=musl-gcc", compilation fails at the link step (I did a little patching to get that far, BTW): AR util-linux/volume_id/lib.a LINK busybox_unstripped Trying libraries: crypt m Failed: -Wl,--start-group -lcrypt -lm -Wl,--end-group Output of: musl-gcc -Wall -Wshadow -Wwrite-strings -Wundef -Wstrict-prototypes -Wunused -Wunused-parameter -Wunused-function -Wunused-value -Wmissing-prototypes -Wmissing-declarations -Wdeclaration-after-statement -Wold-style-definition -fno-builtin-strlen -finline-limit=0 -fomit-frame-pointer -ffunction-sections -fdata-sections -fno-guess-branch-probability -funsigned-char -static-libgcc -falign-functions=1 -falign-jumps=1 -falign-labels=1 -falign-loops=1 -Os -march=i386 -mpreferred-stack-boundary=2 -static -o busybox_unstripped -Wl,--sort-common -Wl,--sort-section,alignment -Wl,--gc-sections -Wl,--start-group applets/built-in.o archival/lib.a archival/libarchive/lib.a console-tools/lib.a coreutils/lib.a coreutils/libcoreutils/lib.a debianutils/lib.a e2fsprogs/lib.a editors/lib.a findutils/lib.a init/lib.a libbb/lib.a libpwdgrp/lib.a loginutils/lib.a mailutils/lib.a miscutils/lib.a modutils/lib.a networking/lib.a networking/libiproute/lib.a networking/udhcp/lib.a printutils/lib.a procps/lib.a runit/lib.a selinux/lib.a shell/lib.a sysklogd/lib.a util-linux/lib.a util-linux/volume_id/lib.a archival/built-in.o archival/libarchive/built-in.o console-tools/built-in.o coreutils/built-in.o coreutils/libcoreutils/built-in.o debianutils/built-in.o e2fsprogs/built-in.o editors/built-in.o findutils/built-in.o init/built-in.o libbb/built-in.o libpwdgrp/built-in.o loginutils/built-in.o mailutils/built-in.o miscutils/built-in.o modutils/built-in.o networking/built-in.o networking/libiproute/built-in.o networking/udhcp/built-in.o printutils/built-in.o procps/built-in.o runit/built-in.o selinux/built-in.o shell/built-in.o sysklogd/built-in.o util-linux/built-in.o util-linux/volume_id/built-in.o -Wl,--end-group -Wl,--start-group -lcrypt -lm -Wl,--end-group ========== applets/built-in.o: In function `_start': (.text+0x0): multiple definition of `_start' /opt/musl/lib/crt1.o:(.text+0x0): first defined here collect2: ld returned 1 exit status make: *** [busybox_unstripped] Error 1 =======END of error grep + strings tell me that "_start" is found in crt1.o, and in the "start.o" section of libc.a (and libc.so).