On Tue, 07 Aug 2012 18:14:36 +0200, Konstantin Staver
<[email protected]> wrote:
Hi.
I'm trying to port phobos2 and druntime2 to OpenBSD 5.1. I found next
problems:
Are you compiling HEAD?
1) D compiler loops with '-O -release' flags. For example:
$ cat test.d
module my_mod;
void MyFunc()
{
int[2] arr;
for (size_t i = 0; i < 2; ++i) {
arr[i] = 1;
}
}
$ pwd
/home/walnut/work/druntime
$ dmd -lib -oflib/libtest.a -m32 -O -release -Isrc ./test.d
^C
I will have a look at this. Can you recommend a live CD.
2) File druntime/src/rt/memory.d (http://goo.gl/iD3me). I don't know
about gc_addRange params for OpenBSD :-(
You need to find bracket symbols for the relevant ELF sections.
You'll need to find writeable allocated sections and bracket symbols
provided by the linker script.
What's your output of this?
----
SHELL=/bin/sh script sections.txt
echo "void main() {}" > main.d
dmd main
readelf --segments main
readelf --sections main
# ld --verbose for linker script
dmd main -L--verbose
exit
----
3) "Empty main()" program crashes with segfault.
4) "Hello world" program failed to build with flag "-g" or "-gc":
$ cat hello.d
import std.stdio;
void main() { writeln("Hello, World!"); }
$ dmd -gc hello.d
Internal error: backend/cod3.c 2662
5) I don't know yet how implement poly from std.math (asm).
The only difference between OSes is the real padding, I guess it's 12byte
as on linux and FreeBSD.
I'll be glad to any help: tips, links to docs and etc.
My work forks:
https://github.com/MadSkipjack/druntime
https://github.com/MadSkipjack/phobos
Thanks.
_______________________________________________
dmd-internals mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/dmd-internals
Script started on Wed Aug 8 12:49:43 2012
$ echo "void main() {}" > main.d
$ dmd main
DMD v2.060 DEBUG
$ readelf --segments main
Elf file type is EXEC (Executable file)
Entry point 0x414000
There are 9 program headers, starting at offset 64
Program Headers:
Type Offset VirtAddr PhysAddr
FileSiz MemSiz Flags Align
PHDR 0x0000000000000040 0x0000000000400040 0x0000000000400040
0x00000000000001f8 0x00000000000001f8 R E 8
INTERP 0x0000000000000238 0x0000000000400238 0x0000000000400238
0x0000000000000015 0x0000000000000015 R 1
[Requesting program interpreter: /libexec/ld-elf.so.1]
LOAD 0x0000000000000000 0x0000000000400000 0x0000000000400000
0x000000000002a924 0x000000000002a924 R E 200000
LOAD 0x000000000002b000 0x000000000062b000 0x000000000062b000
0x00000000000046a0 0x0000000000004cb8 RW 200000
DYNAMIC 0x000000000002b118 0x000000000062b118 0x000000000062b118
0x00000000000001b0 0x00000000000001b0 RW 8
NOTE 0x0000000000000250 0x0000000000400250 0x0000000000400250
0x0000000000000018 0x0000000000000018 R 4
TLS 0x000000000002b000 0x000000000062b000 0x000000000062b000
0x0000000000000010 0x0000000000000040 R 10
GNU_EH_FRAME 0x000000000002a880 0x000000000042a880 0x000000000042a880
0x0000000000000024 0x0000000000000024 R 4
GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000 RW 8
Section to Segment mapping:
Segment Sections...
00
01 .interp
02 .interp .note.ABI-tag .hash .dynsym .dynstr .gnu.version
.gnu.version_r .rela.dyn .rela.plt .init .plt .text .fini .rodata .deh_eh
.eh_frame_hdr .eh_frame
03 .tdata .ctors .dtors .jcr .dynamic .got .got.plt .data .bss
04 .dynamic
05 .note.ABI-tag
06 .tdata .tbss
07 .eh_frame_hdr
08
$ readelf --sections main
There are 32 section headers, starting at offset 0x2f7a8:
Section Headers:
[Nr] Name Type Address Offset
Size EntSize Flags Link Info Align
[ 0] NULL 0000000000000000 00000000
0000000000000000 0000000000000000 0 0 0
[ 1] .interp PROGBITS 0000000000400238 00000238
0000000000000015 0000000000000000 A 0 0 1
[ 2] .note.ABI-tag NOTE 0000000000400250 00000250
0000000000000018 0000000000000000 A 0 0 4
[ 3] .hash HASH 0000000000400268 00000268
0000000000002068 0000000000000004 A 4 0 8
[ 4] .dynsym DYNSYM 00000000004022d0 000022d0
0000000000006198 0000000000000018 A 5 1 8
[ 5] .dynstr STRTAB 0000000000408468 00008468
000000000000aa06 0000000000000000 A 0 0 1
[ 6] .gnu.version VERSYM 0000000000412e6e 00012e6e
0000000000000822 0000000000000002 A 4 0 2
[ 7] .gnu.version_r VERNEED 0000000000413690 00013690
0000000000000060 0000000000000000 A 5 2 8
[ 8] .rela.dyn RELA 00000000004136f0 000136f0
0000000000000078 0000000000000018 A 4 0 8
[ 9] .rela.plt RELA 0000000000413768 00013768
0000000000000510 0000000000000018 A 4 11 8
[10] .init PROGBITS 0000000000413c78 00013c78
0000000000000013 0000000000000000 AX 0 0 4
[11] .plt PROGBITS 0000000000413c8c 00013c8c
0000000000000370 0000000000000010 AX 0 0 4
[12] .text PROGBITS 0000000000414000 00014000
0000000000012838 0000000000000000 AX 0 0 16
[13] .fini PROGBITS 0000000000426838 00026838
000000000000000e 0000000000000000 AX 0 0 4
[14] .rodata PROGBITS 0000000000426850 00026850
0000000000003b80 0000000000000000 A 0 0 16
[15] .deh_eh PROGBITS 000000000042a3d0 0002a3d0
00000000000004b0 0000000000000000 A 0 0 8
[16] .eh_frame_hdr PROGBITS 000000000042a880 0002a880
0000000000000024 0000000000000000 A 0 0 4
[17] .eh_frame PROGBITS 000000000042a8a8 0002a8a8
000000000000007c 0000000000000000 A 0 0 8
[18] .tdata PROGBITS 000000000062b000 0002b000
0000000000000010 0000000000000000 WAT 0 0 16
[19] .tbss NOBITS 000000000062b010 0002b010
0000000000000030 0000000000000000 WAT 0 0 16
[20] .ctors PROGBITS 000000000062b010 0002b010
00000000000000e0 0000000000000000 WA 0 0 8
[21] .dtors PROGBITS 000000000062b0f0 0002b0f0
0000000000000020 0000000000000000 WA 0 0 8
[22] .jcr PROGBITS 000000000062b110 0002b110
0000000000000008 0000000000000000 WA 0 0 8
[23] .dynamic DYNAMIC 000000000062b118 0002b118
00000000000001b0 0000000000000010 WA 5 0 8
[24] .got PROGBITS 000000000062b2c8 0002b2c8
0000000000000028 0000000000000008 WA 0 0 8
[25] .got.plt PROGBITS 000000000062b2f0 0002b2f0
00000000000001c8 0000000000000008 WA 0 0 8
[26] .data PROGBITS 000000000062b4c0 0002b4c0
00000000000041e0 0000000000000000 WA 0 0 16
[27] .bss NOBITS 000000000062f6a0 0002f6a0
0000000000000618 0000000000000000 WA 0 0 16
[28] .comment PROGBITS 0000000000000000 0002f6a0
000000000000000a 0000000000000000 0 0 1
[29] .shstrtab STRTAB 0000000000000000 0002f6aa
00000000000000fc 0000000000000000 0 0 1
[30] .symtab SYMTAB 0000000000000000 0002ffa8
000000000000a728 0000000000000018 31 743 8
[31] .strtab STRTAB 0000000000000000 0003a6d0
000000000000b6fd 0000000000000000 0 0 1
Key to Flags:
W (write), A (alloc), X (execute), M (merge), S (strings)
I (info), L (link order), G (group), x (unknown)
O (extra OS processing required) o (OS specific), p (processor specific)
$
$ # ld --verbose for linker script
$ dmd main -L--verbose
DMD v2.060 DEBUG
GNU ld 2.17.50 [FreeBSD] 2007-07-03
Supported emulations:
elf_x86_64_fbsd
elf_i386_fbsd
using internal linker script:
==================================================
/* Script for -z combreloc: combine and sort reloc sections */
OUTPUT_FORMAT("elf64-x86-64-freebsd", "elf64-x86-64-freebsd",
"elf64-x86-64-freebsd")
OUTPUT_ARCH(i386:x86-64)
ENTRY(_start)
SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib");
SECTIONS
{
/* Read-only sections, merged into text segment: */
PROVIDE (__executable_start = 0x400000); . = 0x400000 + SIZEOF_HEADERS;
.interp : { *(.interp) }
.hash : { *(.hash) }
.gnu.hash : { *(.gnu.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.gnu.linkonce.d.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.bss .rel.bss.* .rel.gnu.linkonce.b.*)
*(.rel.ldata .rel.ldata.* .rel.gnu.linkonce.l.*)
*(.rel.lbss .rel.lbss.* .rel.gnu.linkonce.lb.*)
*(.rel.lrodata .rel.lrodata.* .rel.gnu.linkonce.lr.*)
}
.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.bss .rela.bss.* .rela.gnu.linkonce.b.*)
*(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*)
*(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*)
*(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*)
}
.rel.plt : { *(.rel.plt) }
.rela.plt : { *(.rela.plt) }
.init :
{
KEEP (*(.init))
} =0x90909090
.plt : { *(.plt) }
.text :
{
*(.text .stub .text.* .gnu.linkonce.t.*)
KEEP (*(.text.*personality*))
/* .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) }
.eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) }
.gcc_except_table : ONLY_IF_RO { *(.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. */
. = ALIGN (CONSTANT (MAXPAGESIZE)) - ((CONSTANT (MAXPAGESIZE) - .) &
(CONSTANT (MAXPAGESIZE) - 1)); . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE),
CONSTANT (COMMONPAGESIZE));
/* Exception handling */
.eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) }
.gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) }
/* Thread Local Storage sections */
.tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
.tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
.preinit_array :
{
PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP (*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .);
}
.init_array :
{
PROVIDE_HIDDEN (__init_array_start = .);
KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .);
}
.fini_array :
{
PROVIDE_HIDDEN (__fini_array_start = .);
KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*)))
PROVIDE_HIDDEN (__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))
KEEP (*crtbegin?.o(.ctors))
/* We don't want to include the .ctor section 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 *crtend?.o ) .ctors))
KEEP (*(SORT(.ctors.*)))
KEEP (*(.ctors))
}
.dtors :
{
KEEP (*crtbegin.o(.dtors))
KEEP (*crtbegin?.o(.dtors))
KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
}
.jcr : { KEEP (*(.jcr)) }
.data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*)
*(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) }
.dynamic : { *(.dynamic) }
.got : { *(.got) }
. = DATA_SEGMENT_RELRO_END (24, .);
.got.plt : { *(.got.plt) }
.data :
{
*(.data .data.* .gnu.linkonce.d.*)
KEEP (*(.gnu.linkonce.d.*personality*))
SORT(CONSTRUCTORS)
}
.data1 : { *(.data1) }
_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.
FIXME: Why do we need it? When there is no .bss section, we don't
pad the .data section. */
. = ALIGN(. != 0 ? 64 / 8 : 1);
}
.lbss :
{
*(.dynlbss)
*(.lbss .lbss.* .gnu.linkonce.lb.*)
*(LARGE_COMMON)
}
. = ALIGN(64 / 8);
.lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1))
:
{
*(.lrodata .lrodata.* .gnu.linkonce.lr.*)
}
.ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) :
{
*(.ldata .ldata.* .gnu.linkonce.l.*)
. = ALIGN(. != 0 ? 64 / 8 : 1);
}
. = ALIGN(64 / 8);
_end = .; PROVIDE (end = .);
. = DATA_SEGMENT_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) }
/* DWARF 3 */
.debug_pubtypes 0 : { *(.debug_pubtypes) }
.debug_ranges 0 : { *(.debug_ranges) }
.gnu.attributes 0 : { KEEP (*(.gnu.attributes)) }
/DISCARD/ : { *(.note.GNU-stack) }
}
==================================================
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/lib/crtbegin.o succeeded
/usr/lib/crtbegin.o
attempt to open main.o succeeded
main.o
attempt to open /home/dawg/.local/D/lib64/libphobos2.so failed
attempt to open /home/dawg/.local/D/lib64/libphobos2.a succeeded
(/home/dawg/.local/D/lib64/libphobos2.a)dmain2_475_1a5.o
(/home/dawg/.local/D/lib64/libphobos2.a)memory_4be_620.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4cb_563.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4cc_696.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4cd_697.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4ce_564.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4d0_5a5.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4d1_3d3.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4d6_565.o
(/home/dawg/.local/D/lib64/libphobos2.a)monitor__4e7_955.o
(/home/dawg/.local/D/lib64/libphobos2.a)monitor__4e8_951.o
(/home/dawg/.local/D/lib64/libphobos2.a)console.o
(/home/dawg/.local/D/lib64/libphobos2.a)console_51a_2d3.o
(/home/dawg/.local/D/lib64/libphobos2.a)string_51e_485.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__1c_3a8.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__21_20a.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__22_3f2.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__f3_8af.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__f4_929.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__fa_86d.o
(/home/dawg/.local/D/lib64/libphobos2.a)runtime_160_76e.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1a7_5a0.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_30e_2dd.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_30f_2e1.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_310_390.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_311_3fd.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_312_40f.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_313_48b.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_314_404.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_315_410.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_316_405.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_317_3a1.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_318_3a5.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_319_397.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_31a_40b.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_31b_3b1.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_31c_425.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_31d_2cb.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_31e_379.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_31f_399.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_320_35f.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_322_3f6.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_323_43f.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_324_55b.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc_325_5a4.o
(/home/dawg/.local/D/lib64/libphobos2.a)gcx_336_8a.o
(/home/dawg/.local/D/lib64/libphobos2.a)gcx_339_122.o
(/home/dawg/.local/D/lib64/libphobos2.a)gcx_33a_19a.o
(/home/dawg/.local/D/lib64/libphobos2.a)alloca_387_32a.o
(/home/dawg/.local/D/lib64/libphobos2.a)cast__431_611.o
(/home/dawg/.local/D/lib64/libphobos2.a)cast__432_4a0.o
(/home/dawg/.local/D/lib64/libphobos2.a)critical__44d_70c.o
(/home/dawg/.local/D/lib64/libphobos2.a)critical__44e_70b.o
(/home/dawg/.local/D/lib64/libphobos2.a)dmain2.o
(/home/dawg/.local/D/lib64/libphobos2.a)dmain2_467_421.o
(/home/dawg/.local/D/lib64/libphobos2.a)dmain2_46a_50f.o
(/home/dawg/.local/D/lib64/libphobos2.a)dmain2_46d_62b.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_498_5c0.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_49b_60d.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_49e_6c8.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_4a1_4cd.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_4a2_53b.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4c9_473.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4ca_72a.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4d5_4d7.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4d7_9e6.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4d9_9e8.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4db_9ea.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4dd_b10.o
(/home/dawg/.local/D/lib64/libphobos2.a)minfo_4df_b12.o
(/home/dawg/.local/D/lib64/libphobos2.a)monitor_.o
(/home/dawg/.local/D/lib64/libphobos2.a)ti_Ag_54b_42f.o
(/home/dawg/.local/D/lib64/libphobos2.a)ti_Ag_54c_4a8.o
(/home/dawg/.local/D/lib64/libphobos2.a)ti_Ag_54d_86e.o
(/home/dawg/.local/D/lib64/libphobos2.a)ti_char_55c_3ee.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__1_257.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__4_34a.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__7_32e.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__c_58c.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__11_583.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__12_71e.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__15_594.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__16_739.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__17_5e4.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__20_3af.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__27_69d.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__28_648.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__29_5e4.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__37_85a.o
(/home/dawg/.local/D/lib64/libphobos2.a)atomic_4e_8fe.o
(/home/dawg/.local/D/lib64/libphobos2.a)atomic_fe_b16.o
(/home/dawg/.local/D/lib64/libphobos2.a)atomic_101_ef2.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_150_559.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_152_76e.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_153_4d4.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_154_619.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_156_74d.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_157_bd8.o
(/home/dawg/.local/D/lib64/libphobos2.a)runtime.o
(/home/dawg/.local/D/lib64/libphobos2.a)runtime_15f_2e4.o
(/home/dawg/.local/D/lib64/libphobos2.a)runtime_161_792.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_17b_607.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_17c_597.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_182_236.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_184_1b0.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_187_330.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_189_3bd.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_191_2e5.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_192_1b8.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_19a_21c.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_19e_28e.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1a0_48b.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1a2_6e4.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1aa_6f2.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1ab_291.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1ac_681.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1b0_595.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1b4_85e.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1b9_465.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1be_236.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1c8_1b8.o
(/home/dawg/.local/D/lib64/libphobos2.a)atomic_1d5_aa0.o
(/home/dawg/.local/D/lib64/libphobos2.a)time.o
(/home/dawg/.local/D/lib64/libphobos2.a)time_1ec_5cc.o
(/home/dawg/.local/D/lib64/libphobos2.a)time_1ee_53e.o
(/home/dawg/.local/D/lib64/libphobos2.a)mutex_303_213.o
(/home/dawg/.local/D/lib64/libphobos2.a)gc.o
(/home/dawg/.local/D/lib64/libphobos2.a)gcx.o
(/home/dawg/.local/D/lib64/libphobos2.a)gcx_335_29d.o
(/home/dawg/.local/D/lib64/libphobos2.a)aaA_34b_240.o
(/home/dawg/.local/D/lib64/libphobos2.a)aaA_34d_299.o
(/home/dawg/.local/D/lib64/libphobos2.a)aaA_351_230.o
(/home/dawg/.local/D/lib64/libphobos2.a)aaA_353_28e.o
(/home/dawg/.local/D/lib64/libphobos2.a)aaA_354_391.o
(/home/dawg/.local/D/lib64/libphobos2.a)aaA_355_37c.o
(/home/dawg/.local/D/lib64/libphobos2.a)aaA_356_2bd.o
(/home/dawg/.local/D/lib64/libphobos2.a)aaA_357_327.o
(/home/dawg/.local/D/lib64/libphobos2.a)aaA_358_359.o
(/home/dawg/.local/D/lib64/libphobos2.a)stdarg_361_b3c.o
(/home/dawg/.local/D/lib64/libphobos2.a)adi_382_20c.o
(/home/dawg/.local/D/lib64/libphobos2.a)critical_.o
(/home/dawg/.local/D/lib64/libphobos2.a)deh2_459_3b9.o
(/home/dawg/.local/D/lib64/libphobos2.a)dmain2_460_585.o
(/home/dawg/.local/D/lib64/libphobos2.a)dmain2_465_5ba.o
(/home/dawg/.local/D/lib64/libphobos2.a)dmain2_466_69d.o
(/home/dawg/.local/D/lib64/libphobos2.a)dmain2_470_2f2.o
(/home/dawg/.local/D/lib64/libphobos2.a)dmain2_472_2f9.o
(/home/dawg/.local/D/lib64/libphobos2.a)dmain2_474_2fd.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_47b_482.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_47e_7d5.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_47f_856.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_484_4a3.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_487_4e2.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_48d_46f.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_495_815.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_496_809.o
(/home/dawg/.local/D/lib64/libphobos2.a)monitor__4e9_6fd.o
(/home/dawg/.local/D/lib64/libphobos2.a)monitor__4ea_793.o
(/home/dawg/.local/D/lib64/libphobos2.a)monitor__4eb_632.o
(/home/dawg/.local/D/lib64/libphobos2.a)monitor__4ec_715.o
(/home/dawg/.local/D/lib64/libphobos2.a)tlsgc.o
(/home/dawg/.local/D/lib64/libphobos2.a)hash_51c_259.o
(/home/dawg/.local/D/lib64/libphobos2.a)string_51f_2fd.o
(/home/dawg/.local/D/lib64/libphobos2.a)ti_Ag_547_435.o
(/home/dawg/.local/D/lib64/libphobos2.a)ti_byte_558_3f4.o
(/home/dawg/.local/D/lib64/libphobos2.a)ti_C_559_3d0.o
(/home/dawg/.local/D/lib64/libphobos2.a)ti_ulong_56d_3fa.o
(/home/dawg/.local/D/lib64/libphobos2.a)ti_void_56f_403.o
(/home/dawg/.local/D/lib64/libphobos2.a)object_.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__3_34a.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__8_600.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__9_65e.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__a_522.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__b_66e.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__d_7f4.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__e_a07.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__f_6d3.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__10_6a8.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__13_612.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__14_597.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__18_59c.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__19_3e4.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__1a_647.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__1b_7a9.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__1d_73e.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__1e_732.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__1f_616.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__64_1697.o
(/home/dawg/.local/D/lib64/libphobos2.a)object__f9_29bc.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_147_3f7.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_148_47c.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_149_53c.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_14a_5e2.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_14b_670.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_14c_afb.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_14d_47c.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_14e_676.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_151_680.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_17e_897.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_17f_826.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_180_1b8.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_181_1b8.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_183_22e.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_18c_219.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_18f_2d8.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_19b_129.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_19d_129.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1a8_726.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1a9_302.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1ae_737.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1af_5f2.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_1b5_469.o
(/home/dawg/.local/D/lib64/libphobos2.a)time_1e3_346.o
(/home/dawg/.local/D/lib64/libphobos2.a)time_1ed_297.o
(/home/dawg/.local/D/lib64/libphobos2.a)time_1f3_48a.o
(/home/dawg/.local/D/lib64/libphobos2.a)exception_302_54c.o
(/home/dawg/.local/D/lib64/libphobos2.a)aaA.o
(/home/dawg/.local/D/lib64/libphobos2.a)stdarg_35f_aeb.o
(/home/dawg/.local/D/lib64/libphobos2.a)cast__433_46e.o
(/home/dawg/.local/D/lib64/libphobos2.a)deh2.o
(/home/dawg/.local/D/lib64/libphobos2.a)deh2_456_3c9.o
(/home/dawg/.local/D/lib64/libphobos2.a)deh2_457_525.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_489_4df.o
(/home/dawg/.local/D/lib64/libphobos2.a)lifetime_4a6_2a1.o
(/home/dawg/.local/D/lib64/libphobos2.a)ti_Ag_549_444.o
(/home/dawg/.local/D/lib64/libphobos2.a)errno_c.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_17d_713.o
(/home/dawg/.local/D/lib64/libphobos2.a)thread_193_155.o
(/home/dawg/.local/D/lib64/libphobos2.a)ti_Ag_548_436.o
(/home/dawg/.local/D/lib64/libphobos2.a)ti_ubyte_56a_3f5.o
attempt to open /home/dawg/.local/D/lib64/libpthread.so failed
attempt to open /home/dawg/.local/D/lib64/libpthread.a failed
attempt to open /usr/local/lib/libpthread.so failed
attempt to open /usr/local/lib/libpthread.a failed
attempt to open /usr/lib/libpthread.so succeeded
-lpthread (/usr/lib/libpthread.so)
attempt to open /home/dawg/.local/D/lib64/libm.so failed
attempt to open /home/dawg/.local/D/lib64/libm.a failed
attempt to open /usr/local/lib/libm.so failed
attempt to open /usr/local/lib/libm.a failed
attempt to open /usr/lib/libm.so succeeded
-lm (/usr/lib/libm.so)
attempt to open /home/dawg/.local/D/lib64/libgcc.so failed
attempt to open /home/dawg/.local/D/lib64/libgcc.a failed
attempt to open /usr/local/lib/libgcc.so failed
attempt to open /usr/local/lib/libgcc.a failed
attempt to open /usr/lib/libgcc.so failed
attempt to open /usr/lib/libgcc.a succeeded
attempt to open /home/dawg/.local/D/lib64/libgcc_s.so failed
attempt to open /home/dawg/.local/D/lib64/libgcc_s.a failed
attempt to open /usr/local/lib/libgcc_s.so failed
attempt to open /usr/local/lib/libgcc_s.a failed
attempt to open /usr/lib/libgcc_s.so succeeded
-lgcc_s (/usr/lib/libgcc_s.so)
attempt to open /home/dawg/.local/D/lib64/libc.so failed
attempt to open /home/dawg/.local/D/lib64/libc.a failed
attempt to open /usr/local/lib/libc.so failed
attempt to open /usr/local/lib/libc.a failed
attempt to open /usr/lib/libc.so succeeded
-lc (/usr/lib/libc.so)
attempt to open /home/dawg/.local/D/lib64/libgcc.so failed
attempt to open /home/dawg/.local/D/lib64/libgcc.a failed
attempt to open /usr/local/lib/libgcc.so failed
attempt to open /usr/local/lib/libgcc.a failed
attempt to open /usr/lib/libgcc.so failed
attempt to open /usr/lib/libgcc.a succeeded
attempt to open /home/dawg/.local/D/lib64/libgcc_s.so failed
attempt to open /home/dawg/.local/D/lib64/libgcc_s.a failed
attempt to open /usr/local/lib/libgcc_s.so failed
attempt to open /usr/local/lib/libgcc_s.a failed
attempt to open /usr/lib/libgcc_s.so succeeded
-lgcc_s (/usr/lib/libgcc_s.so)
attempt to open /usr/lib/crtend.o succeeded
/usr/lib/crtend.o
attempt to open /usr/lib/crtn.o succeeded
/usr/lib/crtn.o
$ exit
Script done on Wed Aug 8 12:49:47 2012
_______________________________________________
dmd-internals mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/dmd-internals