Re: [oi-dev] [OpenIndiana-discuss] GCC 5.4 added to the repository
Thomas Wagner писал 06.09.2016 20:53: Thank you Alex! Looks good for libgcc_s.so and libstdc++.so.6 Only it makes me wonder, why the elfdump output for none of the other (non-gcc-runtime-)libs prints "[ LAZY ]" the line right before the lib. Interesting is, that even 4.9 has none of the libs with "[ LAZY ]". As having "lazy load" for libs is there to improve startup latency for binaries/libs, I would like to ask if someone might find an example with actually printing "[ LAZY ]". This can be a completely different binary/project but compiled with enther the g++ 4.9 or the new g++ 5 version. It should print "[ LAZY ]" for at least one library. Then I would be completely happy. Best Regards, Thomas Looking at some real applications look different (g++ 4.9): $ elfdump -d /usr/bin/mate-system-monitor Dynamic Section: .dynamic index tagvalue [0] POSFLAG_1 0x1 [ LAZY ] [1] NEEDED0x2b7fa libgmodule-2.0.so.0 [2] POSFLAG_1 0x1 [ LAZY ] [3] NEEDED0x2b6f5 libpthread.so.1 [4] POSFLAG_1 0x1 [ LAZY ] [5] NEEDED0x2b80e libgtop-2.0.so.7 [6] POSFLAG_1 0x1 [ LAZY ] [7] NEEDED0x2b81f libwnck-3.so.0 [8] POSFLAG_1 0x1 [ LAZY ] [9] NEEDED0x2b82e libgtkmm-3.0.so.1 [10] POSFLAG_1 0x1 [ LAZY ] [11] NEEDED0x2b840 libgdkmm-3.0.so.1 [12] POSFLAG_1 0x1 [ LAZY ] [13] NEEDED0x2b852 libgtk-3.so.0 [14] POSFLAG_1 0x1 [ LAZY ] [15] NEEDED0x2b860 libgdk-3.so.0 [16] POSFLAG_1 0x1 [ LAZY ] [17] NEEDED0x2b86e libpangocairo-1.0.so.0 [18] POSFLAG_1 0x1 [ LAZY ] [19] NEEDED0x2b885 libpango-1.0.so.0 [20] POSFLAG_1 0x1 [ LAZY ] [21] NEEDED0x2b70e libxml2.so.2 [22] POSFLAG_1 0x1 [ LAZY ] [23] NEEDED0x2b897 librsvg-2.so.2 [24] POSFLAG_1 0x1 [ LAZY ] [25] NEEDED0x2b8a6 libgdk_pixbuf-2.0.so.0 [26] POSFLAG_1 0x1 [ LAZY ] [27] NEEDED0x2b8bd libcairo.so.2 [28] POSFLAG_1 0x1 [ LAZY ] [29] NEEDED0x2b8cb libgiomm-2.4.so.1 [30] POSFLAG_1 0x1 [ LAZY ] [31] NEEDED0x2b8dd libgio-2.0.so.0 [32] POSFLAG_1 0x1 [ LAZY ] [33] NEEDED0x2b8ed libglibmm-2.4.so.1 [34] POSFLAG_1 0x1 [ LAZY ] [35] NEEDED0x2b900 libgobject-2.0.so.0 [36] POSFLAG_1 0x1 [ LAZY ] [37] NEEDED0x2b914 libglib-2.0.so.0 [38] POSFLAG_1 0x1 [ LAZY ] [39] NEEDED0x2b925 libsigc-2.0.so.0 [40] POSFLAG_1 0x1 [ LAZY ] [41] NEEDED0x2b724 libsocket.so.1 [42] POSFLAG_1 0x1 [ LAZY ] [43] NEEDED0x2b74e libstdc++.so.6 [44] POSFLAG_1 0x1 [ LAZY ] [45] NEEDED0x2b7a1 libm.so.2 [46] POSFLAG_1 0x1 [ LAZY ] [47] NEEDED0x2b7b4 libgcc_s.so.1 [48] NEEDED0x2b7ca libc.so.1 [49] INIT 0x80cc5b0 [50] FINI 0x80cc5e0 [51] HASH 0x80566c4 [52] STRTAB0x8068050 [53] STRSZ 0x2bb36 [54] SYMTAB0x805d2d0 [55] SYMENT0x10 [56] SUNW_SYMTAB 0x805bd90 [57] SUNW_SYMSZ0xc2c0 [58] SUNW_SORTENT 0x4 [59] SUNW_SYMSORT 0x80952d8 [60] SUNW_SYMSORTSZ0x2504 [61] CHECKSUM 0x83e4 [62] VERNEED 0x8093b88 [63] VERNEEDNUM0x7 [64] PLTRELSZ 0x15b0 [65] PLTREL0x11 [66] JMPREL0x8097844 [67] REL 0x80977dc [68] RELSZ 0x1618 [69] RELENT0x8 [70] SYMINFO 0x8053b64 [71] SYMINSZ 0x2b60 [72] SYMINENT 0x4 [73] DEBUG 0 [74] FLAGS 0 0 [75] FLAGS_1 0x100
[oi-dev] Netboot on OpenIndiana
Hello fellow Community So i have been working with netboot today and would like to give you a rundown of what works/what not and would like to ask you how you see this project going forward. So the basic idea was that Users new to OI could use the service netboot.xyz to easily launch the installer of OI and Install. However it turns out that the boot_archive included in the Hipster Isos is not usable for netboot. While investigating the boot process it also turns out that someone built many safeguards into the SMF Install scripts that would need to be changed. Due to the fact that distro constructor takes 2+ hours to build an iso on every change and my need for some experimentation, I built some scripts based on alhazred's Firefly Recovery Image, Jimklimov's make firefly from root and Peter Tribbles minimal viable Illumos. you can find the code here: https://github.com/Toasterson/firefly The Script's are capable of making a boot_archive from your System. and a Bootable ISO from a boot_archive. The mkfirefly.sh script has an -i switch where you can choose a root directory from where to take the files. I tried this with a properly mounted Hipster ISO but that produces a unbootable Image. Given the restrictions of the Installation process I will probably have to change some bits in that process in order to make netboot work. I yet don't know which. Thus i would like to ask for some feedback from the Community. I would like to know what you think about the scripts. How could I improve them? What would you use them for? Does that need some change to the script(e.g additional commandline option)? I would also like to know what about the Installation Process would you like to see changed and how? What's your opinion about AI (Automated Installer)? Would you rather like Jumpstart as installer automation solution? Looking forward for your feedback Greetings Till ___ oi-dev mailing list oi-dev@openindiana.org https://openindiana.org/mailman/listinfo/oi-dev
Re: [oi-dev] [OpenIndiana-discuss] GCC 5.4 added to the repository
On 09/ 6/16 04:57 PM, Thomas Wagner wrote: Hi Aurelien, it would be very cool if someone could send me / the list the output of "elfdump -d" on a compiled binary with C++ code. If that is not available, then regular C-code is okay too. e.g. gcc -o hello hello.c I have no test system at hand (have only older hipster on disk). What I would appreciated to see would be a configuration that has "[ LAZY ]"-load removed (only) for gcc runtime libs. Excample "good": ... [2] somelib.so [3] libgcc_s.so ... [5] someotherlib.so [6] libstdc++.so Excample "bad": ... [2] somelib.so [3] [ LAZY ] <- delayed load/binding, libc.so can bind funcs earlier then libgcc_s.so [4] libgcc_s.so ... [5] someotherlib.so [6] [ LAZY ] <- delayed load/binding, libc.so can bind funcs earlier then libstdc++.so [7] libstdc++.so Hi. For g++ 5: Dynamic Section: .dynamic index tagvalue [0] NEEDED0x2ad libstdc++.so.6 [1] NEEDED0x2ee libm.so.2 [2] NEEDED0x2f8 librt.so.1 [3] NEEDED0x303 libgcc_s.so.1 [4] NEEDED0x2c8 libc.so.1 [5] INIT 0x8051030 [6] FINI 0x8051050 [7] RUNPATH 0x311 /usr/gcc/5/lib [8] RPATH 0x311 /usr/gcc/5/lib [9] HASH 0x80501c0 [10] STRTAB0x8050630 [11] STRSZ 0x520 [12] SYMTAB0x8050420 [13] SYMENT0x10 [14] SUNW_SYMTAB 0x80502e0 [15] SUNW_SYMSZ0x350 [16] SUNW_SORTENT 0x4 [17] SUNW_SYMSORT 0x8050be4 [18] SUNW_SYMSORTSZ0x50 [19] CHECKSUM 0x5bf6 [20] VERNEED 0x8050b50 [21] VERNEEDNUM0x2 [22] FINI_ARRAY0x8061318 [23] FINI_ARRAYSZ 0x8 [24] INIT_ARRAY0x8061320 [25] INIT_ARRAYSZ 0x8 [26] PLTRELSZ 0x40 [27] PLTREL0x11 [28] JMPREL0x8050c64 [29] REL 0x8050c34 [30] RELSZ 0x70 [31] RELENT0x8 [32] SYMINFO 0x805013c [33] SYMINSZ 0x84 [34] SYMINENT 0x4 [35] DEBUG 0 [36] FLAGS 0 0 [37] FLAGS_1 0 0 [38] SUNW_STRPAD 0x200 [39] SUNW_LDMACH 0x3eEM_AMD64 [40] PLTGOT0x8061078 [41-51] NULL 0 For g++ 4.9: Dynamic Section: .dynamic index tagvalue [0] NEEDED0x2c3 libstdc++.so.6 [1] NEEDED0x304 libm.so.2 [2] NEEDED0x30e librt.so.1 [3] NEEDED0x319 libgcc_s.so.1 [4] NEEDED0x2de libc.so.1 [5] INIT 0x80510c0 [6] FINI 0x80510f0 [7] HASH 0x80501c0 [8] STRTAB0x8050640 [9] STRSZ 0x527 [10] SYMTAB0x8050430 [11] SYMENT0x10 [12] SUNW_SYMTAB 0x80502e0 [13] SUNW_SYMSZ0x360 [14] SUNW_SORTENT 0x4 [15] SUNW_SYMSORT 0x8050bfc [16] SUNW_SYMSORTSZ0x50 [17] CHECKSUM 0xaddb [18] VERNEED 0x8050b68 [19] VERNEEDNUM0x2 [20] PLTRELSZ 0x40 [21] PLTREL0x11 [22] JMPREL0x8050c7c [23] REL 0x8050c4c [24] RELSZ 0x70 [25] RELENT0x8 [26] SYMINFO 0x805013c [27] SYMINSZ 0x84 [28] SYMINENT 0x4 [29] DEBUG 0 [30] FLAGS 0 0 [31] FLAGS_1 0 0 [32] SUNW_STRPAD 0x200 [33] SUNW_LDMACH 0x3eEM_AMD64 [34] PLTGOT0x806111c [35-45] NULL 0 I don't see any specific patch for -zinterpose... -- Best regards, Alexander Pyhalov, system administrator of Southern Federal University IT department ___ oi-dev mailing list oi-dev@openindiana.org https://openindiana.org/mailman/listinfo/oi-dev
[oi-dev] GCC 5.4 added to the repository
Hello, I wrote a short post about it: https://www.openindiana.org/2016/09/06/gcc-5-4-now-available-as-testing-compiler/ Thanks go to Rich Lowe for his fixes to the linker and to Alexander for patches and thorough testing. Please comment if you think about additional information which should be provided. Best regards, Aurelien -- --- Praise the Caffeine embeddings ___ oi-dev mailing list oi-dev@openindiana.org https://openindiana.org/mailman/listinfo/oi-dev