Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 3 Apr 2002 11:03:26 +0200 (CEST)
From:      Alexander Leidinger <Alexander@Leidinger.net>
To:        winter@jurai.net
Cc:        freebsd-current@FreeBSD.org, "David O'Brien" <obrien@FreeBSD.org>
Subject:   Re: cvs commit: ports/lang Makefile ports/lang/icc Makefile distinfo pkg-comment pkg-descr pkg-plist ports/lang/icc/files patch-include
Message-ID:  <200204030903.g3393R07000631@Magelan.Leidinger.net>
In-Reply-To: <20020402181209.B45452-100000@sasami.jurai.net>

next in thread | previous in thread | raw e-mail | index | archive | help
--0-1804289383-1017824615=:630
Content-Type: TEXT/plain; charset=us-ascii

On  2 Apr, Matthew N. Dodd wrote:

>> Oh that is easy to fix.  We can do it in one of two ways.
>> Show me the exact link line from icc (I want the equivalent to gcc -v).

I don't know how to produce something like with icc, but...

> We can also tell 'icc' to use our 'ld'.
> 
> -Qlocation,ld,/usr/bin
> 
> That didn't seem to work to well though as it still tries to use their
> 'crti.o' object.

... I used our ld with icc and let icc invoke it with --verbose. Output
attached.

Bye,
Alexander.

-- 
            0 and 1. Now what could be so hard about that?

http://www.Leidinger.net                       Alexander @ Leidinger.net
  GPG fingerprint = C518 BC70 E67F 143F BE91  3365 79E2 9C60 B006 3FE7

--0-1804289383-1017824615=:630
Content-Type: TEXT/plain; name="verbose.txt"
Content-Disposition: attachment; filename="verbose.txt"

test.c:
/usr/libexec/elf/ld: warning: libc.so.6, needed by /usr/local/intel/compiler50/ia32/lib/libcxa.so.1, not found (try using -rpath or -rpath-link)
/usr/local/intel/compiler50/ia32/lib/crtxi.o: In function `__record_needed_destruction':
/usr/local/intel/compiler50/ia32/lib/crtxi.o(.text+0x113): undefined reference to `__cxa_atexit'
/usr/local/intel/compiler50/ia32/lib/crtxi.o(.data+0x58): undefined reference to `__cxa_finalize'
/usr/local/intel/compiler50/ia32/lib/crtxn.o: In function `__icrt_terminate(void)':
/usr/local/intel/compiler50/ia32/lib/crtxn.o(.text+0xbf): undefined reference to `__cxa_finalize'
/usr/local/intel/compiler50/ia32/lib/libcxa.so.1: undefined reference to `free@GLIBC_2.0'
/usr/local/intel/compiler50/ia32/lib/libcxa.so.1: undefined reference to `calloc@GLIBC_2.0'
/usr/local/intel/compiler50/ia32/lib/libcxa.so.1: undefined reference to `fputs@GLIBC_2.0'
/usr/local/intel/compiler50/ia32/lib/libcxa.so.1: undefined reference to `malloc@GLIBC_2.0'
/usr/local/intel/compiler50/ia32/lib/libcxa.so.1: undefined reference to `__cxa_finalize@GLIBC_2.1.3'
/usr/local/intel/compiler50/ia32/lib/libcxa.so.1: undefined reference to `fprintf@GLIBC_2.0'
/usr/local/intel/compiler50/ia32/lib/libcxa.so.1: undefined reference to `__cxa_atexit@GLIBC_2.1.3'
/usr/local/intel/compiler50/ia32/lib/libcxa.so.1: undefined reference to `stderr@GLIBC_2.0'
/usr/local/intel/compiler50/ia32/lib/libcxa.so.1: undefined reference to `abort@GLIBC_2.0'
GNU ld version 2.12.0 [FreeBSD] 2002-03-20
  Supported emulations:
   elf_i386
using internal linker script:
==================================================
/* Default linker script, for normal executables */
OUTPUT_FORMAT("elf32-i386", "elf32-i386",
	      "elf32-i386")
OUTPUT_ARCH(i386)
ENTRY(_start)
SEARCH_DIR("/usr/lib");
/* Do we need any of these for elf?
   __DYNAMIC = 0;    */
SECTIONS
{
  /* Read-only sections, merged into text segment: */
  . = 0x08048000 + SIZEOF_HEADERS;
  .interp         : { *(.interp) }
  .hash           : { *(.hash) }
  .dynsym         : { *(.dynsym) }
  .dynstr         : { *(.dynstr) }
  .gnu.version    : { *(.gnu.version) }
  .gnu.version_d  : { *(.gnu.version_d) }
  .gnu.version_r  : { *(.gnu.version_r) }
  .rel.init       : { *(.rel.init) }
  .rela.init      : { *(.rela.init) }
  .rel.text       : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) }
  .rela.text      : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) }
  .rel.fini       : { *(.rel.fini) }
  .rela.fini      : { *(.rela.fini) }
  .rel.rodata     : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) }
  .rela.rodata    : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) }
  .rel.data       : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) }
  .rela.data      : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) }
  .rel.ctors      : { *(.rel.ctors) }
  .rela.ctors     : { *(.rela.ctors) }
  .rel.dtors      : { *(.rel.dtors) }
  .rela.dtors     : { *(.rela.dtors) }
  .rel.got        : { *(.rel.got) }
  .rela.got       : { *(.rela.got) }
  .rel.bss        : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) }
  .rela.bss       : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) }
  .rel.plt        : { *(.rel.plt) }
  .rela.plt       : { *(.rela.plt) }
  .init           :
  {
    KEEP (*(.init))
  } =0x90909090
  .plt            : { *(.plt) }
  .text           :
  {
    *(.text .stub .text.* .gnu.linkonce.t.*)
    /* .gnu.warning sections are handled specially by elf32.em.  */
    *(.gnu.warning)
  } =0x90909090
  .fini           :
  {
    KEEP (*(.fini))
  } =0x90909090
  PROVIDE (__etext = .);
  PROVIDE (_etext = .);
  PROVIDE (etext = .);
  .rodata         : { *(.rodata .rodata.* .gnu.linkonce.r.*) }
  .rodata1        : { *(.rodata1) }
  .eh_frame_hdr : { *(.eh_frame_hdr) }
  /* Adjust the address for the data segment.  We want to adjust up to
     the same address within the page on the next page up.  */
  . = ALIGN(0x1000) + (. & (0x1000 - 1));
  .data           :
  {
    *(.data .data.* .gnu.linkonce.d.*)
    SORT(CONSTRUCTORS)
  }
  .data1          : { *(.data1) }
  .eh_frame       : { KEEP (*(.eh_frame)) }
  .gcc_except_table   : { *(.gcc_except_table) }
  .dynamic        : { *(.dynamic) }
  .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)) }
  .got            : { *(.got.plt) *(.got) }
  _edata = .;
  PROVIDE (edata = .);
  __bss_start = .;
  .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) }
}


==================================================
attempt to open /usr/lib/crt1.o succeeded
/usr/lib/crt1.o
attempt to open /usr/lib/crti.o succeeded
/usr/lib/crti.o
attempt to open /usr/local/intel/compiler50/ia32/lib/crtxi.o succeeded
/usr/local/intel/compiler50/ia32/lib/crtxi.o
attempt to open test.o succeeded
test.o
attempt to open /usr/local/intel/compiler50/ia32/lib/icrt.link succeeded
opened script file /usr/local/intel/compiler50/ia32/lib/icrt.link
attempt to open /usr/local/intel/compiler50/ia32/lib/libimf.a succeeded
attempt to open /usr/local/intel/compiler50/ia32/lib/libm.so failed
attempt to open /usr/local/intel/compiler50/ia32/lib/libm.a failed
attempt to open /usr/lib/libm.so succeeded
-lm (/usr/lib/libm.so)
attempt to open /usr/local/intel/compiler50/ia32/lib/libirc.a succeeded
attempt to open /usr/local/intel/compiler50/ia32/lib/libcxa.so succeeded
opened script file /usr/local/intel/compiler50/ia32/lib/libcxa.so
attempt to open libcxa.so.1 failed
attempt to open /usr/local/intel/compiler50/ia32/lib/libcxa.so.1 succeeded
libcxa.so.1 (/usr/local/intel/compiler50/ia32/lib/libcxa.so.1)
attempt to open /usr/local/intel/compiler50/ia32/lib/libcprts.a succeeded
attempt to open /usr/local/intel/compiler50/ia32/lib/libcxa.so succeeded
opened script file /usr/local/intel/compiler50/ia32/lib/libcxa.so
attempt to open libcxa.so.1 failed
attempt to open /usr/local/intel/compiler50/ia32/lib/libcxa.so.1 succeeded
libcxa.so.1 (/usr/local/intel/compiler50/ia32/lib/libcxa.so.1)
attempt to open /usr/local/intel/compiler50/ia32/lib/libc.so failed
attempt to open /usr/local/intel/compiler50/ia32/lib/libc.a failed
attempt to open /usr/lib/libc.so succeeded
-lc (/usr/lib/libc.so)
attempt to open /usr/local/intel/compiler50/ia32/lib/crtxn.o succeeded
/usr/local/intel/compiler50/ia32/lib/crtxn.o
attempt to open /usr/lib/crtn.o succeeded
/usr/lib/crtn.o
libc.so.6 needed by /usr/local/intel/compiler50/ia32/lib/libcxa.so.1

--0-1804289383-1017824615=:630--

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200204030903.g3393R07000631>