Dear All,

*** Sorry! forget to attach the file in the previous mail ***

I had tried to learn the busybox and to build a execution image for my test 
platform (mips system).
First, I input the following instructions to build the busybox.

make defnoconfig
make CROSS_COMPILE=mips-linux-

The output I got is summarized as below.

-rwxr-xr-x 1 snoopy snoopy 70088 2007-09-30 14:55 busybox
-rw-r--r-- 1 snoopy snoopy 13085 2007-09-30 14:55 busybox_ld.err
-rw-r--r-- 1 snoopy snoopy     0 2007-09-30 14:54 busybox_ld.out
-rwxr-xr-x 1 snoopy snoopy 81413 2007-09-30 14:54 busybox_unstripped
-rw-r--r-- 1 snoopy snoopy 43676 2007-09-30 14:54 busybox_unstripped.map

It seems that I create teh execution file of busybox successfully. But, why is 
there a 'busybox_ld.err'? The size of busybox_ld.out is zero. The content of 
busybox_ld.err is attachd with this email.

On the other hand, when I redo the above procedure to build the busybox on my 
Ubuntu v7.04. The instructions I inputed is summarized as below:

make clean
make defnoconfig
make

The output I got is (1) there's a correct busybox_ld.out; (2) the size of 
busybox_ld.err is zero.

Could everyone help me to answer the purpose of busybox_ld.out and busybox_err? 
And, why I got a busybox.err in the first building? Thanks a lot.

Best Regards,
Jhyda.
GNU ld version 2.16.1 Debian GNU/Linux
  Supported emulations:
   elf32btsmip
   elf32ltsmip
   elf32btsmipn32
   elf64btsmip
   elf32ltsmipn32
   elf64ltsmip
using internal linker script:
==================================================
/* Script for -z combreloc: combine and sort reloc sections */
OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips",
              "elf32-tradlittlemips")
OUTPUT_ARCH(mips)
ENTRY(__start)
SEARCH_DIR("/opt/Arabella/mips-linux/lib");
/* Do we need any of these for elf?
   __DYNAMIC = 0;    */
SECTIONS
{
  /* Read-only sections, merged into text segment: */
  PROVIDE (__executable_start = 0x0400000); . = 0x0400000 + SIZEOF_HEADERS;
  .interp         : { *(.interp) }
  .reginfo        : { *(.reginfo) }
  .dynamic        : { *(.dynamic) }
  .hash           : { *(.hash) }
  .dynsym         : { *(.dynsym) }
  .dynstr         : { *(.dynstr) }
  .gnu.version    : { *(.gnu.version) }
  .gnu.version_d  : { *(.gnu.version_d) }
  .gnu.version_r  : { *(.gnu.version_r) }
  .rel.dyn        :
    {
      *(.rel.init)
      *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*)
      *(.rel.fini)
      *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*)
      *(.rel.data.rel.ro*)
      *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*)
      *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*)
      *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*)
      *(.rel.ctors)
      *(.rel.dtors)
      *(.rel.got)
      *(.rel.sdata .rel.sdata.* .rel.gnu.linkonce.s.*)
      *(.rel.sbss .rel.sbss.* .rel.gnu.linkonce.sb.*)
      *(.rel.sdata2 .rel.sdata2.* .rel.gnu.linkonce.s2.*)
      *(.rel.sbss2 .rel.sbss2.* .rel.gnu.linkonce.sb2.*)
      *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*)
    }
  .rela.dyn       :
    {
      *(.rela.init)
      *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*)
      *(.rela.fini)
      *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*)
      *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*)
      *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*)
      *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*)
      *(.rela.ctors)
      *(.rela.dtors)
      *(.rela.got)
      *(.rela.sdata .rela.sdata.* .rela.gnu.linkonce.s.*)
      *(.rela.sbss .rela.sbss.* .rela.gnu.linkonce.sb.*)
      *(.rela.sdata2 .rela.sdata2.* .rela.gnu.linkonce.s2.*)
      *(.rela.sbss2 .rela.sbss2.* .rela.gnu.linkonce.sb2.*)
      *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*)
    }
  .rel.plt        : { *(.rel.plt) }
  .rela.plt       : { *(.rela.plt) }
  .init           :
  {
    KEEP (*(.init))
  } =0
  .plt            : { *(.plt) }
  .text           :
  {
    _ftext = . ;
    *(.text .stub .text.* .gnu.linkonce.t.*)
    KEEP (*(.text.*personality*))
    /* .gnu.warning sections are handled specially by elf32.em.  */
    *(.gnu.warning)
    *(.mips16.fn.*) *(.mips16.call.*)
  } =0
  .fini           :
  {
    KEEP (*(.fini))
  } =0
  PROVIDE (__etext = .);
  PROVIDE (_etext = .);
  PROVIDE (etext = .);
  .rodata         : { *(.rodata .rodata.* .gnu.linkonce.r.*) }
  .rodata1        : { *(.rodata1) }
  .sdata2         : { *(.sdata2 .sdata2.* .gnu.linkonce.s2.*) }
  .sbss2          : { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) }
  .eh_frame_hdr : { *(.eh_frame_hdr) }
  .eh_frame       : ONLY_IF_RO { KEEP (*(.eh_frame)) }
  .gcc_except_table   : ONLY_IF_RO { KEEP (*(.gcc_except_table)) 
*(.gcc_except_table.*) }
  /* Adjust the address for the data segment.  We want to adjust up to
     the same address within the page on the next page up.  */
  . = 0x10000000;
  /* Exception handling  */
  .eh_frame       : ONLY_IF_RW { KEEP (*(.eh_frame)) }
  .gcc_except_table   : ONLY_IF_RW { KEEP (*(.gcc_except_table)) 
*(.gcc_except_table.*) }
  /* Thread Local Storage sections  */
  .tdata          : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
  .tbss           : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
  /* Ensure the __preinit_array_start label is properly aligned.  We
     could instead move the label definition inside the section, but
     the linker would then create the section even if it turns out to
     be empty, which isn't pretty.  */
  . = ALIGN(32 / 8);
  PROVIDE (__preinit_array_start = .);
  .preinit_array     : { KEEP (*(.preinit_array)) }
  PROVIDE (__preinit_array_end = .);
  PROVIDE (__init_array_start = .);
  .init_array     : { KEEP (*(.init_array)) }
  PROVIDE (__init_array_end = .);
  PROVIDE (__fini_array_start = .);
  .fini_array     : { KEEP (*(.fini_array)) }
  PROVIDE (__fini_array_end = .);
  .ctors          :
  {
    /* gcc uses crtbegin.o to find the start of
       the constructors, so we make sure it is
       first.  Because this is a wildcard, it
       doesn't matter if the user does not
       actually link against crtbegin.o; the
       linker won't look for a file to match a
       wildcard.  The wildcard also means that it
       doesn't matter which directory crtbegin.o
       is in.  */
    KEEP (*crtbegin*.o(.ctors))
    /* We don't want to include the .ctor section from
       from the crtend.o file until after the sorted ctors.
       The .ctor section from the crtend file contains the
       end of ctors marker and it must be last */
    KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors))
    KEEP (*(SORT(.ctors.*)))
    KEEP (*(.ctors))
  }
  .dtors          :
  {
    KEEP (*crtbegin*.o(.dtors))
    KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors))
    KEEP (*(SORT(.dtors.*)))
    KEEP (*(.dtors))
  }
  .jcr            : { KEEP (*(.jcr)) }
  .data.rel.ro : { *(.data.rel.ro.local) *(.data.rel.ro*) }
  .data           :
  {
    _fdata = . ;
    *(.data .data.* .gnu.linkonce.d.*)
    KEEP (*(.gnu.linkonce.d.*personality*))
    SORT(CONSTRUCTORS)
  }
  .data1          : { *(.data1) }
  . = .;
  _gp = ALIGN(16) + 0x7ff0;
  .got            : { *(.got.plt) *(.got) }
  /* We want the small data sections together, so single-instruction offsets
     can access them all, and initialized data all before uninitialized, so
     we can shorten the on-disk segment size.  */
  .sdata          :
  {
    *(.sdata .sdata.* .gnu.linkonce.s.*)
  }
  .lit8           : { *(.lit8) }
  .lit4           : { *(.lit4) }
  _edata = .;
  PROVIDE (edata = .);
  __bss_start = .;
  _fbss = .;
  .sbss           :
  {
    PROVIDE (__sbss_start = .);
    PROVIDE (___sbss_start = .);
    *(.dynsbss)
    *(.sbss .sbss.* .gnu.linkonce.sb.*)
    *(.scommon)
    PROVIDE (__sbss_end = .);
    PROVIDE (___sbss_end = .);
  }
  .bss            :
  {
   *(.dynbss)
   *(.bss .bss.* .gnu.linkonce.b.*)
   *(COMMON)
   /* Align here to ensure that the .bss section occupies space up to
      _end.  Align after .bss to ensure correct alignment even if the
      .bss section disappears because there are no input sections.  */
   . = ALIGN(32 / 8);
  }
  . = ALIGN(32 / 8);
  _end = .;
  PROVIDE (end = .);
  /* Stabs debugging sections.  */
  .stab          0 : { *(.stab) }
  .stabstr       0 : { *(.stabstr) }
  .stab.excl     0 : { *(.stab.excl) }
  .stab.exclstr  0 : { *(.stab.exclstr) }
  .stab.index    0 : { *(.stab.index) }
  .stab.indexstr 0 : { *(.stab.indexstr) }
  .comment       0 : { *(.comment) }
  /* DWARF debug sections.
     Symbols in the DWARF debugging sections are relative to the beginning
     of the section so we begin them at 0.  */
  /* DWARF 1 */
  .debug          0 : { *(.debug) }
  .line           0 : { *(.line) }
  /* GNU DWARF 1 extensions */
  .debug_srcinfo  0 : { *(.debug_srcinfo) }
  .debug_sfnames  0 : { *(.debug_sfnames) }
  /* DWARF 1.1 and DWARF 2 */
  .debug_aranges  0 : { *(.debug_aranges) }
  .debug_pubnames 0 : { *(.debug_pubnames) }
  /* DWARF 2 */
  .debug_info     0 : { *(.debug_info .gnu.linkonce.wi.*) }
  .debug_abbrev   0 : { *(.debug_abbrev) }
  .debug_line     0 : { *(.debug_line) }
  .debug_frame    0 : { *(.debug_frame) }
  .debug_str      0 : { *(.debug_str) }
  .debug_loc      0 : { *(.debug_loc) }
  .debug_macinfo  0 : { *(.debug_macinfo) }
  /* SGI/MIPS DWARF 2 extensions */
  .debug_weaknames 0 : { *(.debug_weaknames) }
  .debug_funcnames 0 : { *(.debug_funcnames) }
  .debug_typenames 0 : { *(.debug_typenames) }
  .debug_varnames  0 : { *(.debug_varnames) }
  .gptab.sdata : { *(.gptab.data) *(.gptab.sdata) }
  .gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) }
  /DISCARD/ : { *(.note.GNU-stack) }
}


==================================================
attempt to open 
/opt/Arabella/lib/gcc/mips-linux/4.0.2/../../../../mips-linux/lib/crt1.o 
succeeded
/opt/Arabella/lib/gcc/mips-linux/4.0.2/../../../../mips-linux/lib/crt1.o
attempt to open 
/opt/Arabella/lib/gcc/mips-linux/4.0.2/../../../../mips-linux/lib/crti.o 
succeeded
/opt/Arabella/lib/gcc/mips-linux/4.0.2/../../../../mips-linux/lib/crti.o
attempt to open /opt/Arabella/lib/gcc/mips-linux/4.0.2/crtbegin.o succeeded
/opt/Arabella/lib/gcc/mips-linux/4.0.2/crtbegin.o
attempt to open applets/built-in.o succeeded
applets/built-in.o
attempt to open archival/lib.a succeeded
attempt to open archival/libunarchive/lib.a succeeded
attempt to open console-tools/lib.a succeeded
attempt to open coreutils/lib.a succeeded
attempt to open coreutils/libcoreutils/lib.a succeeded
attempt to open debianutils/lib.a succeeded
attempt to open e2fsprogs/lib.a succeeded
attempt to open editors/lib.a succeeded
attempt to open findutils/lib.a succeeded
attempt to open init/lib.a succeeded
attempt to open ipsvd/lib.a succeeded
attempt to open libbb/lib.a succeeded
(libbb/lib.a)bb_basename.o
(libbb/lib.a)default_error_retval.o
(libbb/lib.a)error_msg_and_die.o
(libbb/lib.a)messages.o
(libbb/lib.a)verror_msg.o
(libbb/lib.a)xfuncs.o
(libbb/lib.a)copyfd.o
(libbb/lib.a)error_msg.o
(libbb/lib.a)full_write.o
(libbb/lib.a)perror_msg.o
(libbb/lib.a)perror_msg_and_die.o
(libbb/lib.a)read.o
(libbb/lib.a)safe_write.o
attempt to open libpwdgrp/lib.a succeeded
attempt to open loginutils/lib.a succeeded
attempt to open miscutils/lib.a succeeded
attempt to open modutils/lib.a succeeded
attempt to open networking/lib.a succeeded
attempt to open networking/libiproute/lib.a succeeded
attempt to open networking/udhcp/lib.a succeeded
attempt to open procps/lib.a succeeded
attempt to open runit/lib.a succeeded
attempt to open selinux/lib.a succeeded
attempt to open shell/lib.a succeeded
attempt to open sysklogd/lib.a succeeded
attempt to open util-linux/lib.a succeeded
attempt to open archival/built-in.o succeeded
attempt to open archival/libunarchive/built-in.o succeeded
attempt to open console-tools/built-in.o succeeded
attempt to open coreutils/built-in.o succeeded
attempt to open coreutils/libcoreutils/built-in.o succeeded
attempt to open debianutils/built-in.o succeeded
attempt to open e2fsprogs/built-in.o succeeded
attempt to open editors/built-in.o succeeded
attempt to open findutils/built-in.o succeeded
attempt to open init/built-in.o succeeded
attempt to open ipsvd/built-in.o succeeded
attempt to open libbb/built-in.o succeeded
attempt to open libpwdgrp/built-in.o succeeded
attempt to open loginutils/built-in.o succeeded
attempt to open miscutils/built-in.o succeeded
attempt to open modutils/built-in.o succeeded
attempt to open networking/built-in.o succeeded
attempt to open networking/libiproute/built-in.o succeeded
attempt to open networking/udhcp/built-in.o succeeded
attempt to open procps/built-in.o succeeded
attempt to open runit/built-in.o succeeded
attempt to open selinux/built-in.o succeeded
attempt to open shell/built-in.o succeeded
attempt to open sysklogd/built-in.o succeeded
attempt to open util-linux/built-in.o succeeded
attempt to open /opt/Arabella/lib/gcc/mips-linux/4.0.2/libgcc.so failed
attempt to open /opt/Arabella/lib/gcc/mips-linux/4.0.2/libgcc.a succeeded
attempt to open /opt/Arabella/lib/gcc/mips-linux/4.0.2/libgcc_s.so succeeded
-lgcc_s (/opt/Arabella/lib/gcc/mips-linux/4.0.2/libgcc_s.so)
attempt to open /opt/Arabella/lib/gcc/mips-linux/4.0.2/libc.so failed
attempt to open /opt/Arabella/lib/gcc/mips-linux/4.0.2/libc.a failed
attempt to open 
/opt/Arabella/lib/gcc/mips-linux/4.0.2/../../../../mips-linux/lib/libc.so 
succeeded
opened script file 
/opt/Arabella/lib/gcc/mips-linux/4.0.2/../../../../mips-linux/lib/libc.so
opened script file 
/opt/Arabella/lib/gcc/mips-linux/4.0.2/../../../../mips-linux/lib/libc.so
attempt to open /opt/Arabella/mips-linux/lib/libc.so.6 succeeded
/opt/Arabella/mips-linux/lib/libc.so.6
attempt to open /opt/Arabella/mips-linux/lib/libc_nonshared.a succeeded
(/opt/Arabella/mips-linux/lib/libc_nonshared.a)elf-init.oS
attempt to open /opt/Arabella/lib/gcc/mips-linux/4.0.2/libgcc.so failed
attempt to open /opt/Arabella/lib/gcc/mips-linux/4.0.2/libgcc.a succeeded
attempt to open /opt/Arabella/lib/gcc/mips-linux/4.0.2/libgcc_s.so succeeded
-lgcc_s (/opt/Arabella/lib/gcc/mips-linux/4.0.2/libgcc_s.so)
attempt to open /opt/Arabella/lib/gcc/mips-linux/4.0.2/crtend.o succeeded
/opt/Arabella/lib/gcc/mips-linux/4.0.2/crtend.o
attempt to open 
/opt/Arabella/lib/gcc/mips-linux/4.0.2/../../../../mips-linux/lib/crtn.o 
succeeded
/opt/Arabella/lib/gcc/mips-linux/4.0.2/../../../../mips-linux/lib/crtn.o
ld.so.1 needed by /opt/Arabella/mips-linux/lib/libc.so.6
found ld.so.1 at /opt/Arabella/mips-linux/lib/ld.so.1
_______________________________________________
busybox mailing list
[email protected]
http://busybox.net/cgi-bin/mailman/listinfo/busybox

Reply via email to