Advertisement
march_happy

Untitled

Oct 30th, 2019
269
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 15.14 KB | None | 0 0
  1. (base) [train@localhost build]$ ld -lstdc++ --verbose
  2. GNU ld (GNU Binutils) 2.32
  3.   Supported emulations:
  4.    elf_x86_64
  5.    elf32_x86_64
  6.    elf_i386
  7.    elf_iamcu
  8.    elf_l1om
  9.    elf_k1om
  10. using internal linker script:
  11. ==================================================
  12. /* Script for -z combreloc -z separate-code: combine and sort reloc sections with separate code segment */
  13. /* Copyright (C) 2014-2019 Free Software Foundation, Inc.
  14.    Copying and distribution of this script, with or without modification,
  15.    are permitted in any medium without royalty provided the copyright
  16.    notice and this notice are preserved.  */
  17. OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64",
  18.               "elf64-x86-64")
  19. OUTPUT_ARCH(i386:x86-64)
  20. ENTRY(_start)
  21. SEARCH_DIR("/home/someuser/.local/opt/miniconda3/x86_64-pc-linux-gnu/lib64"); SEARCH_DIR("/home/someuser/.local/opt/miniconda3/lib64"); SEARCH_DIR("/usr/local/lib64"); SEARCH_DIR("/lib64"); SEARCH_DIR("/usr/lib64"); SEARCH_DIR("/home/someuser/.local/opt/miniconda3/x86_64-pc-linux-gnu/lib"); SEARCH_DIR("/home/someuser/.local/opt/miniconda3/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib");
  22. SECTIONS
  23. {
  24.   PROVIDE (__executable_start = SEGMENT_START("text-segment", 0x400000)); . = SEGMENT_START("text-segment", 0x400000) + SIZEOF_HEADERS;
  25.   .interp         : { *(.interp) }
  26.   .note.gnu.build-id  : { *(.note.gnu.build-id) }
  27.   .hash           : { *(.hash) }
  28.   .gnu.hash       : { *(.gnu.hash) }
  29.   .dynsym         : { *(.dynsym) }
  30.   .dynstr         : { *(.dynstr) }
  31.   .gnu.version    : { *(.gnu.version) }
  32.   .gnu.version_d  : { *(.gnu.version_d) }
  33.   .gnu.version_r  : { *(.gnu.version_r) }
  34.   .rela.dyn       :
  35.     {
  36.       *(.rela.init)
  37.       *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*)
  38.       *(.rela.fini)
  39.       *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*)
  40.       *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*)
  41.       *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*)
  42.       *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*)
  43.       *(.rela.ctors)
  44.       *(.rela.dtors)
  45.       *(.rela.got)
  46.       *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*)
  47.       *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*)
  48.       *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*)
  49.       *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*)
  50.       *(.rela.ifunc)
  51.     }
  52.   .rela.plt       :
  53.     {
  54.       *(.rela.plt)
  55.       PROVIDE_HIDDEN (__rela_iplt_start = .);
  56.       *(.rela.iplt)
  57.       PROVIDE_HIDDEN (__rela_iplt_end = .);
  58.     }
  59.   . = ALIGN(CONSTANT (MAXPAGESIZE));
  60.   .init           :
  61.   {
  62.     KEEP (*(SORT_NONE(.init)))
  63.   }
  64.   .plt            : { *(.plt) *(.iplt) }
  65. .plt.got        : { *(.plt.got) }
  66. .plt.sec        : { *(.plt.sec) }
  67.   .text           :
  68.   {
  69.     *(.text.unlikely .text.*_unlikely .text.unlikely.*)
  70.     *(.text.exit .text.exit.*)
  71.     *(.text.startup .text.startup.*)
  72.     *(.text.hot .text.hot.*)
  73.     *(.text .stub .text.* .gnu.linkonce.t.*)
  74.     /* .gnu.warning sections are handled specially by elf32.em.  */
  75.     *(.gnu.warning)
  76.   }
  77.   .fini           :
  78.   {
  79.     KEEP (*(SORT_NONE(.fini)))
  80.   }
  81.   PROVIDE (__etext = .);
  82.   PROVIDE (_etext = .);
  83.   PROVIDE (etext = .);
  84.   . = ALIGN(CONSTANT (MAXPAGESIZE));
  85.   /* Adjust the address for the rodata segment.  We want to adjust up to
  86.      the same address within the page on the next page up.  */
  87.   . = SEGMENT_START("rodata-segment", ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)));
  88.   .rodata         : { *(.rodata .rodata.* .gnu.linkonce.r.*) }
  89.   .rodata1        : { *(.rodata1) }
  90.   .eh_frame_hdr   : { *(.eh_frame_hdr) *(.eh_frame_entry .eh_frame_entry.*) }
  91.   .eh_frame       : ONLY_IF_RO { KEEP (*(.eh_frame)) *(.eh_frame.*) }
  92.   .gcc_except_table   : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) }
  93.   .gnu_extab   : ONLY_IF_RO { *(.gnu_extab*) }
  94.   /* These sections are generated by the Sun/Oracle C++ compiler.  */
  95.   .exception_ranges   : ONLY_IF_RO { *(.exception_ranges*) }
  96.   /* Adjust the address for the data segment.  We want to adjust up to
  97.      the same address within the page on the next page up.  */
  98.   . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE));
  99.   /* Exception handling  */
  100.   .eh_frame       : ONLY_IF_RW { KEEP (*(.eh_frame)) *(.eh_frame.*) }
  101.   .gnu_extab      : ONLY_IF_RW { *(.gnu_extab) }
  102.   .gcc_except_table   : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) }
  103.   .exception_ranges   : ONLY_IF_RW { *(.exception_ranges*) }
  104.   /* Thread Local Storage sections  */
  105.   .tdata          :
  106.    {
  107.      PROVIDE_HIDDEN (__tdata_start = .);
  108.      *(.tdata .tdata.* .gnu.linkonce.td.*)
  109.    }
  110.   .tbss           : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
  111.   .preinit_array    :
  112.   {
  113.     PROVIDE_HIDDEN (__preinit_array_start = .);
  114.     KEEP (*(.preinit_array))
  115.     PROVIDE_HIDDEN (__preinit_array_end = .);
  116.   }
  117.   .init_array    :
  118.   {
  119.     PROVIDE_HIDDEN (__init_array_start = .);
  120.     KEEP (*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*)))
  121.     KEEP (*(.init_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .ctors))
  122.     PROVIDE_HIDDEN (__init_array_end = .);
  123.   }
  124.   .fini_array    :
  125.   {
  126.     PROVIDE_HIDDEN (__fini_array_start = .);
  127.     KEEP (*(SORT_BY_INIT_PRIORITY(.fini_array.*) SORT_BY_INIT_PRIORITY(.dtors.*)))
  128.     KEEP (*(.fini_array EXCLUDE_FILE (*crtbegin.o *crtbegin?.o *crtend.o *crtend?.o ) .dtors))
  129.     PROVIDE_HIDDEN (__fini_array_end = .);
  130.   }
  131.   .ctors          :
  132.   {
  133.     /* gcc uses crtbegin.o to find the start of
  134.        the constructors, so we make sure it is
  135.        first.  Because this is a wildcard, it
  136.        doesn't matter if the user does not
  137.       actually link against crtbegin.o; the
  138.       linker won't look for a file to match a
  139.        wildcard.  The wildcard also means that it
  140.        doesn't matter which directory crtbegin.o
  141.       is in.  */
  142.    KEEP (*crtbegin.o(.ctors))
  143.    KEEP (*crtbegin?.o(.ctors))
  144.    /* We don't want to include the .ctor section from
  145.        the crtend.o file until after the sorted ctors.
  146.        The .ctor section from the crtend file contains the
  147.        end of ctors marker and it must be last */
  148.     KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors))
  149.     KEEP (*(SORT(.ctors.*)))
  150.     KEEP (*(.ctors))
  151.   }
  152.   .dtors          :
  153.   {
  154.     KEEP (*crtbegin.o(.dtors))
  155.     KEEP (*crtbegin?.o(.dtors))
  156.     KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors))
  157.     KEEP (*(SORT(.dtors.*)))
  158.     KEEP (*(.dtors))
  159.   }
  160.   .jcr            : { KEEP (*(.jcr)) }
  161.   .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) }
  162.   .dynamic        : { *(.dynamic) }
  163.   .got            : { *(.got) *(.igot) }
  164.   . = DATA_SEGMENT_RELRO_END (SIZEOF (.got.plt) >= 24 ? 24 : 0, .);
  165.   .got.plt        : { *(.got.plt) *(.igot.plt) }
  166.   .data           :
  167.   {
  168.     *(.data .data.* .gnu.linkonce.d.*)
  169.     SORT(CONSTRUCTORS)
  170.   }
  171.   .data1          : { *(.data1) }
  172.   _edata = .; PROVIDE (edata = .);
  173.   . = .;
  174.   __bss_start = .;
  175.   .bss            :
  176.   {
  177.    *(.dynbss)
  178.    *(.bss .bss.* .gnu.linkonce.b.*)
  179.    *(COMMON)
  180.    /* Align here to ensure that the .bss section occupies space up to
  181.       _end.  Align after .bss to ensure correct alignment even if the
  182.       .bss section disappears because there are no input sections.
  183.       FIXME: Why do we need it? When there is no .bss section, we do not
  184.       pad the .data section.  */
  185.    . = ALIGN(. != 0 ? 64 / 8 : 1);
  186.   }
  187.   .lbss   :
  188.   {
  189.     *(.dynlbss)
  190.     *(.lbss .lbss.* .gnu.linkonce.lb.*)
  191.     *(LARGE_COMMON)
  192.   }
  193.   . = ALIGN(64 / 8);
  194.   . = SEGMENT_START("ldata-segment", .);
  195.   .lrodata   ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) :
  196.   {
  197.     *(.lrodata .lrodata.* .gnu.linkonce.lr.*)
  198.   }
  199.   .ldata   ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) :
  200.   {
  201.     *(.ldata .ldata.* .gnu.linkonce.l.*)
  202.     . = ALIGN(. != 0 ? 64 / 8 : 1);
  203.   }
  204.   . = ALIGN(64 / 8);
  205.   _end = .; PROVIDE (end = .);
  206.   . = DATA_SEGMENT_END (.);
  207.   /* Stabs debugging sections.  */
  208.   .stab          0 : { *(.stab) }
  209.   .stabstr       0 : { *(.stabstr) }
  210.   .stab.excl     0 : { *(.stab.excl) }
  211.   .stab.exclstr  0 : { *(.stab.exclstr) }
  212.   .stab.index    0 : { *(.stab.index) }
  213.   .stab.indexstr 0 : { *(.stab.indexstr) }
  214.   .comment       0 : { *(.comment) }
  215.   .gnu.build.attributes : { *(.gnu.build.attributes .gnu.build.attributes.*) }
  216.   /* DWARF debug sections.
  217.      Symbols in the DWARF debugging sections are relative to the beginning
  218.      of the section so we begin them at 0.  */
  219.   /* DWARF 1 */
  220.   .debug          0 : { *(.debug) }
  221.   .line           0 : { *(.line) }
  222.   /* GNU DWARF 1 extensions */
  223.   .debug_srcinfo  0 : { *(.debug_srcinfo) }
  224.   .debug_sfnames  0 : { *(.debug_sfnames) }
  225.   /* DWARF 1.1 and DWARF 2 */
  226.   .debug_aranges  0 : { *(.debug_aranges) }
  227.   .debug_pubnames 0 : { *(.debug_pubnames) }
  228.   /* DWARF 2 */
  229.   .debug_info     0 : { *(.debug_info .gnu.linkonce.wi.*) }
  230.   .debug_abbrev   0 : { *(.debug_abbrev) }
  231.   .debug_line     0 : { *(.debug_line .debug_line.* .debug_line_end) }
  232.   .debug_frame    0 : { *(.debug_frame) }
  233.   .debug_str      0 : { *(.debug_str) }
  234.   .debug_loc      0 : { *(.debug_loc) }
  235.   .debug_macinfo  0 : { *(.debug_macinfo) }
  236.   /* SGI/MIPS DWARF 2 extensions */
  237.   .debug_weaknames 0 : { *(.debug_weaknames) }
  238.   .debug_funcnames 0 : { *(.debug_funcnames) }
  239.   .debug_typenames 0 : { *(.debug_typenames) }
  240.   .debug_varnames  0 : { *(.debug_varnames) }
  241.   /* DWARF 3 */
  242.   .debug_pubtypes 0 : { *(.debug_pubtypes) }
  243.   .debug_ranges   0 : { *(.debug_ranges) }
  244.   /* DWARF Extension.  */
  245.   .debug_macro    0 : { *(.debug_macro) }
  246.   .debug_addr     0 : { *(.debug_addr) }
  247.   .gnu.attributes 0 : { KEEP (*(.gnu.attributes)) }
  248.   /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) }
  249. }
  250.  
  251.  
  252. ==================================================
  253. ld: mode elf_x86_64
  254. attempt to open /home/someuser/.local/opt/miniconda3/x86_64-pc-linux-gnu/lib64/libstdc++.so failed
  255. attempt to open /home/someuser/.local/opt/miniconda3/x86_64-pc-linux-gnu/lib64/libstdc++.a failed
  256. attempt to open /home/someuser/.local/opt/miniconda3/lib64/libstdc++.so failed
  257. attempt to open /home/someuser/.local/opt/miniconda3/lib64/libstdc++.a failed
  258. attempt to open /usr/local/lib64/libstdc++.so failed
  259. attempt to open /usr/local/lib64/libstdc++.a failed
  260. attempt to open /lib64/libstdc++.so failed
  261. attempt to open /lib64/libstdc++.a failed
  262. attempt to open /usr/lib64/libstdc++.so failed
  263. attempt to open /usr/lib64/libstdc++.a failed
  264. attempt to open /home/someuser/.local/opt/miniconda3/x86_64-pc-linux-gnu/lib/libstdc++.so failed
  265. attempt to open /home/someuser/.local/opt/miniconda3/x86_64-pc-linux-gnu/lib/libstdc++.a failed
  266. attempt to open /home/someuser/.local/opt/miniconda3/lib/libstdc++.so succeeded
  267. /home/someuser/.local/opt/miniconda3/lib/libstdc++.so
  268. libm.so.6 needed by /home/someuser/.local/opt/miniconda3/lib/libstdc++.so
  269. attempt to open libm.so.6 failed
  270. attempt to open /home/someuser/.local/lib64/libm.so.6 failed
  271. attempt to open /home/someuser/.local/opt/miniconda3/lib/libm.so.6 failed
  272. attempt to open /home/nwani/m3/conda-bld/compilers_linux-64_1560109574129/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib/libm.so.6 failed
  273. attempt to open /usr/lib64/dyninst/libm.so.6 failed
  274. attempt to open /usr/lib64/iscsi/libm.so.6 failed
  275. attempt to open /usr/lib64/mysql/libm.so.6 failed
  276. attempt to open /home/someuser/.local/opt/miniconda3/x86_64-pc-linux-gnu/lib64/libm.so.6 failed
  277. attempt to open /home/someuser/.local/opt/miniconda3/lib64/libm.so.6 failed
  278. attempt to open /usr/local/lib64/libm.so.6 failed
  279. found libm.so.6 at /lib64/libm.so.6
  280. libc.so.6 needed by /home/someuser/.local/opt/miniconda3/lib/libstdc++.so
  281. attempt to open libc.so.6 failed
  282. attempt to open /home/someuser/.local/lib64/libc.so.6 failed
  283. attempt to open /home/someuser/.local/opt/miniconda3/lib/libc.so.6 failed
  284. attempt to open /home/nwani/m3/conda-bld/compilers_linux-64_1560109574129/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib/libc.so.6 failed
  285. attempt to open /usr/lib64/dyninst/libc.so.6 failed
  286. attempt to open /usr/lib64/iscsi/libc.so.6 failed
  287. attempt to open /usr/lib64/mysql/libc.so.6 failed
  288. attempt to open /home/someuser/.local/opt/miniconda3/x86_64-pc-linux-gnu/lib64/libc.so.6 failed
  289. attempt to open /home/someuser/.local/opt/miniconda3/lib64/libc.so.6 failed
  290. attempt to open /usr/local/lib64/libc.so.6 failed
  291. attempt to open /home/someuser/.local/opt/miniconda3/x86_64-pc-linux-gnu/lib/libc.so.6 failed
  292. attempt to open /home/someuser/.local/opt/miniconda3/lib/libc.so.6 failed
  293. attempt to open /usr/local/lib/libc.so.6 failed
  294. attempt to open /lib/libc.so.6 failed
  295. attempt to open /usr/lib/libc.so.6 failed
  296. attempt to open libc.so.6 failed
  297. attempt to open /home/someuser/.local/lib64/libc.so.6 failed
  298. attempt to open /home/someuser/.local/opt/miniconda3/lib/libc.so.6 failed
  299. attempt to open /home/nwani/m3/conda-bld/compilers_linux-64_1560109574129/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib/libc.so.6 failed
  300. attempt to open /usr/lib64/dyninst/libc.so.6 failed
  301. attempt to open /usr/lib64/iscsi/libc.so.6 failed
  302. attempt to open /usr/lib64/mysql/libc.so.6 failed
  303. attempt to open /home/someuser/.local/opt/miniconda3/x86_64-pc-linux-gnu/lib64/libc.so.6 failed
  304. attempt to open /home/someuser/.local/opt/miniconda3/lib64/libc.so.6 failed
  305. attempt to open /usr/local/lib64/libc.so.6 failed
  306. found libc.so.6 at /lib64/libc.so.6
  307. ld-linux-x86-64.so.2 needed by /home/someuser/.local/opt/miniconda3/lib/libstdc++.so
  308. attempt to open ld-linux-x86-64.so.2 failed
  309. attempt to open /home/someuser/.local/lib64/ld-linux-x86-64.so.2 failed
  310. attempt to open /home/someuser/.local/opt/miniconda3/lib/ld-linux-x86-64.so.2 failed
  311. attempt to open /home/nwani/m3/conda-bld/compilers_linux-64_1560109574129/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib/ld-linux-x86-64.so.2 failed
  312. attempt to open /usr/lib64/dyninst/ld-linux-x86-64.so.2 failed
  313. attempt to open /usr/lib64/iscsi/ld-linux-x86-64.so.2 failed
  314. attempt to open /usr/lib64/mysql/ld-linux-x86-64.so.2 failed
  315. attempt to open /home/someuser/.local/opt/miniconda3/x86_64-pc-linux-gnu/lib64/ld-linux-x86-64.so.2 failed
  316. attempt to open /home/someuser/.local/opt/miniconda3/lib64/ld-linux-x86-64.so.2 failed
  317. attempt to open /usr/local/lib64/ld-linux-x86-64.so.2 failed
  318. found ld-linux-x86-64.so.2 at /lib64/ld-linux-x86-64.so.2
  319. libgcc_s.so.1 needed by /home/someuser/.local/opt/miniconda3/lib/libstdc++.so
  320. attempt to open libgcc_s.so.1 failed
  321. attempt to open /home/someuser/.local/lib64/libgcc_s.so.1 failed
  322. found libgcc_s.so.1 at /home/someuser/.local/opt/miniconda3/lib/libgcc_s.so.1
  323. ld: warning: cannot find entry symbol _start; not setting start address
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement