Hey Martyn,
Am 27.06.2013 um 19:10 schrieb Martyn Russell <martyn lanedo com>:
Nevermind, guess I found the culprit. I had recently added support for extracting XMP (afair) with libexempi. It seems, libexempi is built with boost which pulls in stlport, while glib is linked with SUN libCstd (SUN C++ standard library). This results in both implementations of the C++ standard lib linked into the same binary.
> On 27/06/13 16:54, Ralph Böhme wrote:
>> Hi
>
> Hello Ralph,
>
>> after a long and struggling journey I managed to get Tracker 0.15
>> mostly up and running with OpenCSW for Solaris [1]. The package still
>> uses 0.15.2 because 0.16 depend on a newer glib package not available
>> yet in OpenCSW.
>>
>> Now, for some reason tracker-extract keeps crashing when fired via
>> dbus or when launched manually. In order to preclude a faulty extract
>> module causing this, I removed all but the text extract module:
>>
>> $ pwd /opt/csw/lib/tracker-0.16/extract-modules $ ls bak
>> libextract-text.so $ sudo rm -f /var/cores/* $
>>
>> # /opt/csw/libexec/tracker-extract --verbosity=3
>> --file=/Volumes/test/test.txt Initializing tracker-extract...
>>
>> Tracker-Message: Setting up monitor for changes to config
>> file:'/root/.config/tracker/tracker-extract.cfg' Locale
>> 'TRACKER_LOCALE_LANGUAGE' was set to 'de_DE.UTF-8' Locale
>> 'TRACKER_LOCALE_TIME' was set to 'de_DE.UTF-8' Locale
>> 'TRACKER_LOCALE_COLLATE' was set to 'de_DE.UTF-8' Locale
>> 'TRACKER_LOCALE_NUMERIC' was set to 'de_DE.UTF-8' Locale
>> 'TRACKER_LOCALE_MONETARY' was set to 'de_DE.UTF-8' Initializing
>> Storage... Mount monitors set up for to watch for added, removed and
>> pre-unmounts... No mounts found to iterate Setting priority nice
>> level to 19 Loading extractor rules...
>> (/opt/csw/share/tracker/extract-rules) Loaded rule '10-abw.rule'
>> Loaded rule '10-dvi.rule' Loaded rule '10-epub.rule' Loaded rule
>> '10-html.rule' Loaded rule '10-ico.rule' Loaded rule '10-jpeg.rule'
>> Loaded rule '10-mp3.rule' Loaded rule '10-msoffice.rule' Loaded rule
>> '10-oasis.rule' Loaded rule '10-pdf.rule' Loaded rule '10-png.rule'
>> Loaded rule '10-ps.rule' Loaded rule '10-tiff.rule' Loaded rule
>> '10-xmp.rule' Loaded rule '11-msoffice-xml.rule' Loaded rule
>> '90-text-generic.rule' Loaded rule '93-mplayer-generic.rule' Loaded
>> rule '93-totem-generic.rule' Extractor rules loaded Couldn't get
>> memory information:'/proc/meminfo', Datei »/proc/meminfo« konnte
>> nicht geöffnet werden: No such file or directory Guessing mime type
>> as '(null)' Segmentation Fault (Speicherabzug geschrieben)
>>
>> The message "Guessing mime type as '(null)'" is just a broken debug
>> message that uses the wrong variable, I've checked that...
>>
>> $ sudo pstack /var/cores/core.tracker-extract.19507/1 core
>> '/var/cores/core.tracker-extract.19507/1' of 19507:
>> /opt/csw/libexec/tracker-extract --verbosity=3
>> --file=/Volumes/test/te ----------------- lwp# 1 / thread# 1
>> -------------------- fe63c422 memcpy (8097f20, f79a7158, 1,
>> f79866b1) + 22 f7986721 __1cDstdGlocaleEinit6F_v_ (f796fb80,
>> 9fbfe096, feffe95c, fe5a6dce, fda2c860, fda2fd44) + 81 f79754fb
>> __1cDstdNbasic_istream4Cwn0ALchar_traits4Cw___2t6Mn0AIios_baseJEmptyCtor__v_
>> (fda2fd28) + 6b f7974ef4 __SLIP.INIT_A (feffe9d8, f79bacb4, feffe9d8,
>> f7995a79, fe7fb8bc, fb8406d8) + 34 f797534b
>> __1cU__STATIC_CONSTRUCTOR6F_v_ (fe7fb8bc, fb8406d8, fb840ed8,
>> feffea18, fe7cbba6, fb840edc) + b f7995a79 ???????? (fb840edc,
>> fe7fb35c, 1, fe7fb3e4, f799578c, 0) fe7cbba6 call_init (fb840e98, 1,
>> 2, fe7cc1ad) + 11a fe7cc2a7 load_completion (fd9008b8, 0, feffea88,
>> fe7d131d) + 10b fe7d13db dlmopen_check (fe7fb140, 8097dd8, 2,
>> fdf40018) + cb fe7d14c5 dlopen (8097dd8, 2, 10000, fdf5130e) + 4d
>> fdf51345 _g_module_open (8097dd8) + 43 fdf51bfe g_module_open
>> (807c206, 2, fdbe2698, fdbe9176) + 2cc fdbe91bd load_module (8097d04,
>> 1, 0, fdbe94a2) + 55 fdbe94c3 initialize_first_module (8095b00,
>> fe7be504, fe7908c8, fdbe94fe) + 2d fdbe953b
>> tracker_extract_module_manager_get_mimetype_handlers (809a6f8, 0,
>> feffebd8, 80591c3) + 4b 08059218
>> tracker_extract_get_metadata_by_cmdline (8080190) + 68 0805bbdf
>> run_standalone (807dec0, 805ebb8, feffec68, 805bdbe) + af 0805bdd5
>> main (1, feffeca0, feffecb0, fe7fb8bc) + 19e 0805660d _start
>> (3, feffed80, 0, 0, 0, feffedcd) + 7d $
>>
>> So it seems it's going south in some C++ init (std::locale::init ?),
>> so this is possibly a crash related to some glib glitch, not a
>> Tracker issue.
>>
>> I'd highly appreciate any pointers that may shed some light on this.
>
> What's the first module it's trying to load there?
> It should say in the debug output somewhere the path that the .so files
> are being loaded from.
>
> I would try (by process of elimination) removing or disabling those
> modules to see which is problematic.
>
> Failing that, it could be an issue with the dlopen() APIs on Solaris.
> I've seen this be problematic platform to platform before.
>
> If I had to guess about the C++ thing, I would say it might be related
> to the modules, some require G++ for linking IIRC.