[BusyBox] errors compiling mke2fs.c in Busybox 0.60.

Doug Edwards dedwards at synergymicro.com
Wed Jun 26 09:09:03 UTC 2002


Vodz -

Thanks for the lengthy instructions.  I'll try them out as soon as possible.

Thanks again.

Doug


>
>Date sent:     	Wed, 26 Jun 2002 12:15:55 +0400
>From:          	"Vladimir N. Oleynik" <dzo at simtreas.ru>
>Organization:  	Ulyanovsk Treasury
>To:            	Doug Edwards <dedwards at synergymicro.com>
>Copies to:     	busybox at busybox.net, Brendan J Simon 
><brendan.simon at ctam.com.au>
>Subject:       	Re: [BusyBox] errors compiling mke2fs.c in 
>Busybox 0.60.3
>
>Doug,
>
>>  I'm trying to compile mke2fs.c into BusyBox 0.60.3 with uClibc
>>  (snapshot dated June 6) on ppc running the 2.4.12 kernel. When I run
>>  "make" I get a whole bunch of errors.  If I take the applet out, it
>>  compiles fine.  There are too many errors to list them all (about 5
>>  pages of printout), but here's the first few:
>>
>>  Has anyone has anyone had success using this applet?  I found it at:
>>
>>  ftp://ftp.simtreas.ru/pub/my/bb/spec/mke2fs.c.gz
>>
>>  If anyone has an idea why I'm getting these errors, I'd be grateful.
>
>I do not recommend to use this /spec/ directory as final integration with
>busybox. Only for demonstrate and VERY ADVANCED users.
>Full integrated applets placed into /ports/ directory only.
>
>
>Brendan,
>
>>  I'm currently using busybox-0.60.2.  I think I'm about to upgrade to
>>  0.60.3 but I would really like some basic ext2 support (mainly fsck and
>>  mkfs).  Does 0.60.3 support ext2 ?  What about snapshots or CVS ?
>
>Not.
>
>The simple way of integration consists of the following points:
>
>HOWTO:
>
>1) Get e2fsprogs-last-version source.
>2) Configure and compile.
>3) Find functions main() in e2fsprogs sources and replace to applet_main
>(example: mke2fs_main for mke2fs applet)
>4) Run make again. This exited with error:
>
>$ make
>cc  -o mke2fs mke2fs.o ../lib/libext2fs.a ../lib/libcom_err.a ../lib/libuuid.a
>/usr/lib/crt1.o(.text+0x18): undefined reference to `main'
>make: *** [mke2fs] Error 1         
>
>5) Writing in promt
>
>$ ldd -r
>
>and copy and paste all arguments for cc without "cc". Result:
>
>$ ldd -r -o mke2fs mke2fs.o ../lib/libext2fs.a ../lib/libcom_err.a
>../lib/libuuid.a
>
>6) Move mke2fs to busybox soutrce tree with name mke2fs_.o
>
>$ mv mke2fs ../../busybox-0.60.3/mke2fs_.o
>
>7) (For VERY ADVANCED users): do:
>
>$ objcopy --strip-unneeded -K mke2fs_main mke2fs_.o
>
>8) Place into busybox source tree "empty" mke2fs.c file:
>
>~/busybox-0.60.3$ cat > mke2fs.c
>
>/*
>  * mke2fs.c - Make a ext2fs filesystem.
>  * Precompiled as binary module mke2fs_.o
>  *
>*/
><Ctrl>-D
>~/busybox-0.60.3$
>
>9) Open in editor Config.h file and find line: // End of Applications List
>10) Add before up line:
>#define BB_MKE2FS
>
>11) Open applets.h and find place with alphabetical metod for insert
>applet declaration. For mke2fs example add 3 lines after
>
>#ifdef BB_MKDIR
>         APPLET(mkdir, mkdir_main, _BB_DIR_BIN)
>#endif
>
>#ifdef BB_MKE2FS
>         APPLET_NOUSAGE(mke2fs, mke2fs_main, _BB_DIR_SBIN)
>#endif
>
>12) Open in editor Makefile and find
>#LIBRARIES =
>
>Change to
>
>LIBRARIES = mke2fs_.o
>
>13) make busybox.
>
>
>End. Uhh.
>
>
>--w
>vodz
>
>------- End of forwarded message -------
>
>Content-type: Application/Octet-stream; name="-"; type=Plain text
>Content-disposition: attachment; filename="-"
>




More information about the busybox mailing list