Stuff Michael Meeks is doing |
Older items: 2023: ( J F M A M J ), 2022: ( J F M A M J J A S O N D ), 2021, 2019, 2018, 2017, 2016, 2015, 2014, 2013, 2012, 2011, 2010, 2009, 2009, 2008, 2007, 2006, 2005, 2004, 2003, 2002, 2001, 2000, 1999, legacy html
NSP_Sleep(5); // try to connect to background SO, thus judge if it is ready while(0 > connect(my_sock, (struct sockaddr *)&dst_addr, sizeof(dst_addr))) ... NSP_CloseSocket(my_sock); NSP_Sleep(5);etc.
fprintf (stderr, "Is '%s' %c%c%c vague (%d)\n", symbol, symbol[0], symbol[1], symbol[2], ret);outputs:
Is 'typeinfo for BaseClass' _ZT vague (1)etc. More interestingly, after pre-processing it's still calling 'fprintf'; deep magic.
export LD_DEBUG=bindings:symbols:direct
we get:
8375: dynamic symbol index 602 from 'libbasegfx680li.so' for _ZTIN7basegfx29B2DPolyPolygonRasterConverterE 8375: dynamic symbol offset 65534 8375: vague symbol 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=./soffice.bin 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=./libvcl680li.so 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=./libsvl680li.so 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=./libsvt680li.so 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=./libutl680li.so ... omit 10 other OO.o libs ... 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=/usr/X11R6/lib/libSM.so.6 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=/usr/X11R6/lib/libICE.so.6 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=/usr/X11R6/lib/libX11.so.6 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=/opt/gcc/lib/libdl.so.2 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=/opt/gcc/lib/libpthread.so.0 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=./libstlport_gcc.so 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=/usr/lib/libstdc++.so.6 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=/opt/gcc/lib/libm.so.6 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=/lib/libgcc_s.so.1 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=/opt/gcc/lib/libc.so.6 ... omit 5 other OO.o / system libs ... 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=/lib/libz.so.1 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=/usr/lib/libjpeg.so.62 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=./libjvmfwk.so.3 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=./libuno_salhelpergcc3.so.3 8375: symbol=_ZTIN7basegfx29B2DPolyPolygonRasterConverterE; lookup in file=./libbasegfx680li.so 8375: binding file ./libbasegfx680li.so to ./libbasegfx680li.so: normal symbol `_ZTIN7basegfx29B2DPolyPolygonRasterConverterE'
8375: dynamic symbol index 525 from './libbasegfx680li.so' for _ZN7basegfx29B2DPolyPolygonRasterConverterD1Ev 8375: dynamic symbol offset 0 8375: symbol=_ZN7basegfx29B2DPolyPolygonRasterConverterD1Ev; lookup in file=./libbasegfx680li.so 8375: direct lookup ... 8375: binding file ./libbasegfx680li.so to ./libbasegfx680li.so: normal symbol `_ZN7basegfx29B2DPolyPolygonRasterConverterD1Ev'ie. 1 lookup instead of 30 (and this is early in the OO.o startup process, before many libs are loaded). Still poking at a few issues though; switched the system back; need to re-build glibc with
make install_root=/foo install
My content in this blog and associated images / data under
images/
and data/
directories are (usually)
created by me and (unless obviously labelled otherwise) are licensed under
the public domain, and/or if that doesn't float your boat a CC0
license. I encourage linking back (of course) to help people decide for
themselves, in context, in the battle for ideas, and I love fixes /
improvements / corrections by private mail.
In case it's not painfully obvious: the reflections reflected here are my own; mine, all mine ! and don't reflect the views of Collabora, SUSE, Novell, The Document Foundation, Spaghetti Hurlers (International), or anyone else. It's also important to realise that I'm not in on the Swedish Conspiracy. Occasionally people ask for formal photos for conferences or fun.
Michael Meeks (michael.meeks@collabora.com)