Does xulrunner depend on GNOME or not?

Hi... I have two questions (the rest is just me talking about how confused I am):
1. How is mozilla getting its files to use shared libraries even when they aren't linked against those shared libraries?
2. How can I tell if it's safe to delete a shared library that is used in only this way?
=====
I know xulrunner comes with two files in /usr/lib/xulrunner-1.9.2/components that bring in gnome dependencies: libmozgnome.so and libnkgnomevfs.so. Firefox also comes with libnkgnomevfs.so but according to this bug https://bugzilla.mozilla.org/show_bug.cgi?id=512671 it's not supposed to.
I'm wondering how these libraries actually get used.
[root@connors-laptop firefox-3.6]# cd /usr/lib/firefox-3.6
[root@connors-laptop firefox-3.6]# ldd firefox | grep gnome
[root@connors-laptop firefox-3.6]# cd /usr/lib/xulrunner-1.9.2/
[root@connors-laptop xulrunner-1.9.2]# ldd libxul.so | grep gnome
[root@connors-laptop xulrunner-1.9.2]# ldd libxpcom.so | grep gnome
[root@connors-laptop xulrunner-1.9.2]# ldd libmozjs.so | grep gnome
[root@connors-laptop xulrunner-1.9.2]#
As far as I can tell... NOTHING is linked against them. However the situation gets even weirder. I know that libxul and libxpcom are essential for firefox, yet firefox seems not to be linked against them either:
[root@connors-laptop firefox-3.6]# ldd firefox | grep libxul
[root@connors-laptop firefox-3.6]# ldd firefox | grep libxpcom
[root@connors-laptop firefox-3.6]# grep libxul firefox
Binary file firefox matches
[root@connors-laptop firefox-3.6]# grep libxpcom firefox
Binary file firefox matches
[root@connors-laptop firefox-3.6]#
The binary seems to contain references to them but they are runtime references, not compile time references? It dynamically decides whether or not it should use those libraries when you start it? I tried figuring out where the gnome libraries are used this way and I think I found it:
[root@connors-laptop firefox-3.6]# cd /usr/lib/xulrunner-1.9.2/
[root@connors-laptop xulrunner-1.9.2]# grep gnome libxul.so
Binary file libxul.so matches
Thunderbird is causing similar confusion with me. It is of course independent from xulrunner but it comes with a libmozgnome.so and I can't tell how it's used. Anecdotally everyone says it's safe to delete libmozgnome and libnkgnomevfs but how do I know this? If I deleted orphan libraries that things aren't linked against I would delete libxul, libxpcom and libmozjs which is obviously NOT okay to do.

Ok so when I start the code... it is "deciding" whether to be linked against libmozgnome.so or not. Sounds a bit like self-modifying code to me. I was wondering because if I made a program that used gconf for example, even if I wanted it to be "optional" and put it in a section of the program that I considered "unimportant"... if I didn't have gconf installed I would absolutely get an undefined reference to symbol and nothing would work... even if I think it's "not a big deal."
I guess this LD_PRELOAD stuff is the solution. Firefox can first check if the right gnome deps are installed. If they are, it will load them at run time, if they are missing it will just move on. I guess this is how openoffice uses the "optional" gconf. It comes with a file called gconfbe1.uno.so but nothing is linked (at compile time) to it. This must mean it is loaded while openoffice runs because openoffice detected at runtime that I have gconf but if I didn't it would've skipped this dependency.
So ldd is not a good way to check if a program does this. I should use lsof to see if a program is dynamically loading libraries? And if I want to confirm my suspicions about how it does so I should grep the executable for phrases like "LD_PRELOAD", "LD_LIBRARY_PATH" or "dlopen"? I guess the ultimate way would be checking the source code if I have time.

Similar Messages

  • If I buy a ipad mini with cellular, and not sign up for cellular service, can I use the onboard GPS, or does it depend on the cell signal since it is aGPS

    If I buy a ipad mini with cellular, and not sign up for cellular service, can I use the onboard GPS, or does it depend on the cell signal since it is aGPS?

    Right. But as I understand it, the aGPS is a function that speeds location using cell signals, but isn't necessary for the GPS signal. I can buy a plugin device that is a real GPS that I can use with my iPad mini. However, I would need an app for maps. I was wondering if anyone had used one of these.

  • [NOT SOLVED] Gnome will not start

    I'm editing this original message by way of summing up so that anyone coming here with a similar problem will know what to expect if they read further:
    I believe the reason Gnome would not start on the machine in question was that it made too many demands on the available hardware (see desm0te's comments below).
    For this reason I decided to switch to LXDE as Desktop Environment which works well on the restricted hardware. I did not investigate the Gnome related problem any further.
    The original message follows:
    After a successful installation of the basic command-line Arch according to the Beginner's Guide, I went on to install Gnome according to instructions in the Wiki.
    I Did not want Gnome to start automatically but only when I type in the command startx.
    This it does, but all I get is the nice blue "curtain" background - no black bar at top of screen with Actions, date , name etc...
    and no cursor.
    One funny thing was - this afternoon while I was concentrating on another machine - the black bar suddenly appeared (apparently for no reason) showing the date and my name but with the X cursor
    from the X11 environment. However as soon as I moved this cursor to the bar and clicked, both dursor and bar disappeared never to return .
    I decided to redirect the stderr of startx to a file in the hope that it would give a clue as to what was wrong.
    X.Org X Server 1.11.4
    Release Date: 2012-01-27
    X Protocol Version 11, Revision 0
    Build Operating System: Linux 3.2.2-1-ARCH i686
    Current Operating System: Linux pdv 3.2.2-1-ARCH #1 SMP PREEMPT Thu Jan 26 08:28:27 UTC 2012 i686
    Kernel command line: root=/dev/sda1 ro vga=773
    Build Date: 29 January 2012 03:41:53PM
    Current version of pixman: 0.24.2
    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
    Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    (==) Log file: "/var/log/Xorg.0.log", Time: Fri Feb 3 21:13:19 2012
    (==) Using config directory: "/etc/X11/xorg.conf.d"
    (EE) Failed to load module "vesa" (module does not exist, 0)
    (EE) Failed to load module "fbdev" (module does not exist, 0)
    [10f] 320 x 200, 70Hz
    [134] 320 x 240, 72Hz
    [144] 400 x 300, 72Hz
    [154] 512 x 384, 70Hz
    [11e] 640 x 400, 70Hz
    [112] 640 x 480, 60Hz, 75Hz, 85Hz, 100Hz, 160Hz
    [115] 800 x 600, 60Hz, 75Hz, 85Hz
    [118] 1024 x 768, 60Hz, 70Hz, 75Hz, 85Hz, 100Hz, 130Hz
    [17b] 1280 x 768, 60Hz
    [16a] 1280 x 960, 60Hz, 85Hz
    [11b] 1280 x 1024, 60Hz, 75Hz, 85Hz, 100Hz
    [13e] 1400 x 1050, 60Hz, 75Hz
    [124] 1600 x 1200, 60Hz
    (gnome-shell:770): Clutter-CRITICAL **: Unable to initialize Clutter: Unable to find suitable fbconfig for the GLX context: Failed to find any compatible fbconfigs
    Window manager error: Unable to initialize Clutter.
    Failed to play sound: File or data not found
    Tracker-Message: Setting up monitor for changes to config file:'/home/dick/.config/tracker/tracker-miner-fs.cf** Message: applet now removed from the notification area
    (nm-applet:789): libnotify-WARNING **: Failed to connect to proxy
    ** (nm-applet:789): WARNING **: get_all_cb: couldn't retrieve system settings properties: (25) Launch helper exited with unknown return code 1.
    ** (nm-applet:789): WARNING **: fetch_connections_done: error fetching connections: (25) Launch helper exited with unknown return code 1.
    ** (nm-applet:789): WARNING **: Failed to register as an agent: (25) Launch helper exited with unknown return code 1
    Tracker-Message: Setting up monitor for changes to config file:'/home/dick/.config/tracker/tracker-store.cfg'
    (tracker-store:791): Tracker-CRITICAL **: D-Bus service name:'org.freedesktop.Tracker1' is already taken, perhaps the daemon is already running?
    (tracker-miner-fs:788): Tracker-CRITICAL **: Empty locale file found at '/home/dick/.cache/tracker/miner-applications-locale.txt'
    (gnome-settings-daemon:668): color-plugin-WARNING **: failed to get edid: unable to get EDID for output
    (tracker-miner-fs:788): Tracker-WARNING **: Couldn't properly parse desktop file 'file:///usr/share/applications/brasero-nautilus.desktop': 'Desktop file doesn't contain type'
    (tracker-miner-fs:788): Tracker-CRITICAL **: Empty locale file found at '/home/dick/.cache/tracker/miner-applications-locale.txt'
    xinit: connection to X server lost
    waiting for X server to shut down gnome-session[655]: Gdk-WARNING: gnome-session: Fatal IO error 11 (Resource temporarily unavailable) on X server :0.
    Server terminated successfully (0). Closing log file.
    (tracker-miner-fs:788): GLib-GIO-CRITICAL **: Error while sending AddMatch() message: The connection is closed
    (tracker-miner-fs:788): GLib-GIO-CRITICAL **: Error while sending AddMatch() message: The connection is closed
    (tracker-miner-fs:788): GLib-GIO-CRITICAL **: Error while sending AddMatch() message: The connection is closed
    (tracker-miner-fs:788): GVFS-RemoteVolumeMonitor-WARNING **: cannot remove match rule 'type='signal',interface='org.gtk.Private.RemoteVolumeMonitor',sender='org.gtk.Private.GduVolumeMonitor',': org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
    (tracker-miner-fs:788): GVFS-RemoteVolumeMonitor-WARNING **: cannot remove match rule 'type='signal',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='org.gtk.Private.GduVolumeMonitor'': org.freedesktop.DBus.Error.Disconnected: Connection is closed
    xinit: unexpected signal 2
    If this gives clues could someone please point me in the right direction? Are the two EE messages significant (Failed to load modules "vesa" and "fbdev"). What is Clutter*? What should I do to get it initialized?
    Thanks for any help.
    Dick Summerfield (aka Battus).
    * Sorry about that - it's an open source graphics library for creating hardware-accelerated user interfaces - but am I any the wiser for that
    Last edited by Battus (2012-02-21 19:48:23)

    desm0tes:
    To take your points one by one:
    1. I am now quite happy with LXDE too. The problems I mentioned last night seem to have gone (???!!!) and I can just start LXDE from my user account. Maybe later, I'll realize what I was doing wrong or rather what I did to make it work... . Now I just type:
    startx
    having put:
    exec ck-launch-session startlxde
    in .xinitrc.
    2. Thanks for the tip about yaourt. I shall try that sooner or later.
    3. Well as I said - I don't understand what I was doing wrong -  which makes me feel a bit stupid and is rather annoying but looking on the bright side it's fine to be able to start-up, have a legible screen and logout successfully - which I couln't do before. I now have to figure out how to expand the contents of LXDE a bit but that's the fun of it!
    LXDE starts up nicely with minimal possibilties but I can change look & feel and customize the panel settings.
    "Menu" contains:
        Accessories:
            File Manager
            Image Viewer
            LXTerminal
            Leafpad
            Xarchiver
        Internet:
            Avahi SSH Server Browser
            Avahi VNC Server Browser
        Office:
            ePDFViewer
        System Tools:
            Avahi Zerconf Browser
            Task Manager
        Preferences:
            Customize Look and Feel
            Monitor Settings
            OPenbox Configuration Maanger
            Preferred Applications
        Run
        Logout
    All of these start up OK and work, on cursory examination, except the Avahi Browsers which I don't understand and which appear to do nothing as no window appears on screen.
    4. I'm not quite sure I can yet see the use of a login manager such as SLiM, since I seem to get on quite nicely without it but since I've heard it mentioned a lot I'm sure I'm just missing the point.
    Dick Summerfield (aka Battus)
    Last edited by Battus (2012-02-06 19:56:30)

  • Danish Keyboard Layout working in Gnome but not in Kde

    Hi!,
    I'm trying to get to work the Danish Keyboard layout in Kde, with no success. In Gnome it works fine, but in Kde (or well, any Qt based app), when I hit å, ø, or try to write accents, I get two white quads instead of the correct character.  It works if I write them in a gtk aplication, copy and paste in a kde app.. but...
    Does anyone knows what can be possibly happening?
    My xorg.conf has
    Option "XkbRules" "xorg"
    Option "XkbModel" "pc105"
    Option "XkbLayout" "dk"
    and Kde is configured to use the DK Layout.
    thanks!
    silencer
    ps. I wrote this in gnome

    Ouh, no.. I have another problem
    I want the language (for apps like gcc, or mc) to be english, not danish, so I replaced in rc.conf da_DK.utf8 by en_DK.utf8, and got the language as english, but now.. accents doesn't work anymore. They do work, again, under gnome, but not in kde.  Any ideas?
    thanks a lot
    silencer

  • Does ALSA depend on HAL?

    Hello,
    recently I decided to get rid of HAL and uninstalled it from my system. Later the same day I suddenly discovered that sound stopped working. I thought that it might be because of HAL, so I reinstalled it, stopped the alsa daemon, started the hal daemon, the started the alsa daemon again, but the sound did not come back. Later the same day I did a full system upgrade (which didn't seem to contain any kernel-related stuff, mostly xorg updates) and rebooted. I was surprised to see that the sound started working again.
    So, my question is, what the hell was that?! :-) Does ALSA depend on HAL in any way? Or did the full upgrade bring my sound back? If yes, why did it stop working?

    Maybe you could compare the outputs of lsmod for both situations. Maybe there are some modules missing or something like that.
    Other question, how do you "measure" that alsa doesn't work? Do you simply try to play something with some program? I'd recommend to start alsamixer in a terminal and see if it works. If so, the modules are up and running.
    By the way, did you know that the alsa daemon simply launches alsactl store and restore? It only saves your currently set volumes when it stops and reloads them when it starts. So a restart of the alsa daemon is simply useless. That's a common mistake many arch users make.

  • After doing a widows update itunes will not work at all

    after doing a widows update itunes will not work at all

    hiya!
    I get the itunes has encounterd a problem and needs to close, sorry for the inconvenience error, no specific error number. I do not have QT installed,
    not having QT installed is what will be causing your itunes error message at the moment. let's try a careful standalone QT 7.1 install.
    download and save a copy of the QT 7.1 standalone installer to your hard drive. (we'll run the install from there rather than online.) switch off antivirus and antispyware applications prior to the install.
    Quicktime 7.1 Standalone Installer
    if that install goes through okay, does your itunes launch properly again?
    (if you get an error message on the QT standalone reinstall, let us know what it says. include error message numbers if you're getting any.)
    love, b

  • What does this message mean Charging is not supported with this device?

    What does this message mean Charging is not supported with this device?

    You've gotten 2 good answers already, but there's a key assumption in both that you got the message when connecting the iPhone to some other device. If this is the case you can get an adapter in the Apple online store that will allow charging from older devices.
    If, however, this message appears when you are not connected to anything the problem is dirt or moisture in the dock connector at the bottom of the phone. Clean it with a dry toothbrush or air blast.

  • I have home sharing on but can't see my library on the computers icon. iTunes does display my purchased tunes but not my own imports.

    I have home sharing on in iTunes but can't see my library when I use the computers icon on Apple TV. iTunes does display my purchased tunes but not my own imports.
    I can play my own tunes by selecting them on my iMAC and directing them to Apple TV. I think that I should be able to see my entire library on Apple TV shouldn't I?
    Am up-to-date with iTunes and using Mavericks OS. I am connecting to Apple TV with an Airport Extreme 802.11n Wi-FI and a brand new Apple TV.
    Thanks for any comments,
    Roger

    Okay, so HomeSharing is not working.  Most likely due to a network issue.
    Is the ATV and computer running iTunes actually on the same network?  Many new routers create seperate networks for the wired and wireless portions of the local network.

  • HT4859 when you go to do this it say that your iPod or whichever device will no longer be backed up to the computer it is currently backed up to, what exactly does that mean? Will i not be able to sync my iPod from that computer?

    when you go to do this it say that your iPod or whichever device will no longer be backed up to the computer it is currently backed up to, what exactly does that mean? Will i not be able to sync my iPod from that computer? Please help me and answer either or both question detailed thanks

    Normally when you sync your device it is automatically backed up to your computer as the first step in the sync process.  When you choose to start backing up your device to iCloud, iTunes stops automatically backing it up on your computer when you sync.  That's what the message is telling your; that you are now backing up to iCloud and not to your computer each time you sync.  You can still manually back up to your computer any time you want by going to the Summary tab and clicking on Back Up Now under Manually Back Up and Restore.
    You can still sync your device as you did before, it just will no longer back up automatically when you do.

  • I have an older iMac 5,1 and the disc drive no longer works. I was hoping that I could the Apple USB super drive as a replacement, but the info on the super drive page says compatible with iMac 2012 or later. Does anyone know why it would not work for me?

    I have an older iMac 5,1 and the disc drive no longer works. I was hoping that I could the Apple USB super drive as a replacement, but the info on the super drive page says compatible with iMac 2012 or later. Does anyone know why it would not work for me?

    A reply to similar question (Q & As , in product page Apple Store) says:
    "...dissable the internal reader hardware from devices setup. Then plug the external usb superdrive and that's it."  Answered by Enrique T from Lima Oct  25 2013.
    If you can locate an external Apple USB 'Air" superdrive for earlier model MacBook Air, that should work. The newer one for the Air is the same as for iMac, now.
    You may be able to use other brands of external USB optical drive with your older intel-based iMac, as some of them function capably. A few should also be able to see system discs or other bootable utilities on DVD.
    Hopefully this helps.
    Good luck & happy computing!

  • Time Machine appears to be doing back-ups, but they do not appear on the external hard drive. The last one I can find is June 30.  I did a utility scan of the hard drive disk and it is fine.

    Time Machine appears to be doing back-ups, but they do not appear on the external hard drive. The last one I can find is June 30.  I did a utility scan of the hard drive disk and it is fine. What do I do?

    Click the Time Machine icon in the menu bar. The time of the last backup is shown in the drop down.

  • Why does adobe photoshop elements 6.0 not show up for a download choice of putting my photos into my computer, I'm on windows7.  I'm sure it did when I first got my computer.  Could it be that I have lots of other photo software that may be interfering?

    why does adobe photoshop elements 6.0 not show up for a download choice of putting my photos into my computer, I'm on windows7.  I'm sure it did when I first got my computer.  Could it be that I have lots of other photo software that may be interfering?@@

    If you open the Organizer and go to Edit>Preferences>Camera or Card Reader, do you have Auto Launch Adobe Photo Downloader on Device Connect checked?
    Try checking that if you don't.

  • Why does the content of my emails not show on the main Mail page but does in the Inbox list of all emails?

    Why does the content of my emails not show on the main Mail page but does in the Inbox list of all emails?

    Try a Reset [Hold the Home and Sleep/Wake buttons down together for 10 seconds or so (until the Apple logo appears) and then release. When the screen goes blank power On again in the normal way.] It is absolutely/appsolutely safe!

  • I have updated my iphone to ios6 but when I receive a message it does appear in my newsfeed but not on the app. Normally there was a red sign with a 1 or 2, ... inside but that's gone, is it normal?

    i have updated my iphone to ios6 but when I receive a message it does appear in my newsfeed but not on the app. Normally there was a red sign with a 1 or 2, ... inside but that's gone, is it normal?

    i m also put passcode in my iphone...but i dont know that how i know that my passcode is crack by someone???and same as police is not interested to find out it..
    i want ma iphone backkk...........

  • Does ISO5 support AirPrint and if not why did they do away with it?

    Does ISO5 support airprint and if not why did it disappear after ISO4? And will it be added back?

    It has gone nowhere.  Nothing has changed in regard to airprint.

Maybe you are looking for

  • Missing Instruments (horn section, trumpet section)

    I've just installed Jam Pack 1. JP 2,3,4 are also installed. Now I've indexed my loop browser and all seems smooth. But there is a problem. I took 'Havana Horns' and 'Havana Trumpets' from my loop browser and put them on tow different AU-tracks. The

  • Create a presentation with Dreamweaver..HOW?

    Guys, I know it is feasible, but I'd like your comments and suggestions. Today, I'd like to create a presentation that will be given to people on either a cd or s DVD. It is a wedding "Thank you" gift to guests, who came to my wedding. I'd like somet

  • Apple HD 23" Screen

    I have a 23" Apple HD Screen connected to my Mac Mini (G4) and for unknown reasons and randomly the screen powers down and back up again. Any ideas why this might happen? Anyone else have this issue?

  • Can't recognize the Pkcs12

    I programmed to accomplish the downloading of a pkcs12 certificate, but after it had saved in the local disk, I can't open it. It show the error: "This is a invalid Personnel Information Exchange File". my main servlet code is following: InputStreamR

  • I purchased Adobe Priemere Elements 12 and downloaded it from the website.

    I purchased Adobe Priemere Elements 12 and downloaded it from the website. The serial number given to me did not work and so I went to register the product on your site. I did this and it said to wait 30 minutes. It has been over 1 hour and it still