[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Some Gnustep problems, plus some workarounds

From: Richard Frith-Macdonald
Subject: Re: Some Gnustep problems, plus some workarounds
Date: Fri, 4 Oct 2002 11:18:11 +0100

On Thursday, October 3, 2002, at 12:26 pm, lukekendall@optushome.com.au wrote:
   This sort of crippled things for me.  I compiled up GNUMail and
   tried it, but didn't get very far - it started up with no fonts.
   The errors reported were a bit misleading, too:

2002-10-02 08:54:27.908 make_services[5660] File NSDictionary.m: 458. In [GSMutableDictionary -initWithContentsOfFile:] Contents of file '/home/luke/GNUstep/Defaults/.GNUstepDefaults' does not contain a dictionary

Both Adam and I independently fixed that one.
I guess we missed it because the more informative errors were being logged
when GNUstep is built with 'debug=yes' .. which I routinely do.

2. I had trouble with my dhcp-assigned IP address yesterday, and found
   I couldn't successfully run the /etc/rc.d/init.d/network script to
   restart the network.  I tracked it down to the fact that something
had altered the PATH. This was of course the /etc/profile.d/GNUstep.sh file. The trouble was that its search paths are inserted in front of
   all others, and this must have been overriding some needed commands.

I never heard of this happening ... I can't see what commands GNUstep
would put in  the path that would confuse other things ... it would be
interesting to know so we can change them ... or tell RedHat if the
problem is more their fault.

3. When running GNUMail, the pasteboard service wouldn't start:

    2002-10-02 10:49:31.947 GNUMail[2259]
    I couldn't contact the pasteboard server for local host -
    so I'm attempting to to start one - which will take a few seconds.
Trying to launch gpbs from /usr/GNUstep/System/Tools or a machine/operating-system subdirectory.
    It is recommended that you start the pasteboard server (gpbs) when
    your windowing system is started up.

   When I tried to run gpbs I got this error:

: /home/luke; gpbs
gpbs: error while loading shared libraries: libgnustep-gui.so.0: cannot open shared object file: No such file or directory

This error message is produced by the operating system ... I don't know if/how we can get
anything more informative out of it :-(
I *think* the system produces that error message when it is unable to find a library that the one it is loading uses, as well as if it is unable to find the library being loaded ...
so it can be very misleading.

However ... in this case the problem might be that you haven't sourced GNUstep.sh, so your LD_LIBRARY_PATH is not set up, and the loader doesn't know where to look
for the library.

   That file does exist, however:

: /home/luke; locate libgnustep-gui
/usr/GNUstep/System/Libraries/ix86/linux-gnu/gnu-gnu-gnu/libgnustep- gui.so /usr/GNUstep/System/Libraries/ix86/linux-gnu/gnu-gnu-gnu/libgnustep- gui.so.0 /usr/GNUstep/System/Libraries/ix86/linux-gnu/gnu-gnu-gnu/libgnustep- gui.so.0.8.0

: /home/luke; ls -l /usr/GNUstep/System/Libraries/ix86/linux-gnu/gnu-gnu-gnu/libgnustep- gui.so* lrwxrwxrwx 1 root root 19 Sep 29 23:39 /usr/GNUstep/System/Libraries/ix86/linux-gnu/gnu-gnu-gnu/libgnustep- gui.so -> libgnustep-gui.so.0 lrwxrwxrwx 1 root root 23 Sep 29 23:39 /usr/GNUstep/System/Libraries/ix86/linux-gnu/gnu-gnu-gnu/libgnustep- gui.so.0 -> libgnustep-gui.so.0.8.0 -rwxr-xr-x 1 root root 3686742 Sep 29 23:38 /usr/GNUstep/System/Libraries/ix86/linux-gnu/gnu-gnu-gnu/libgnustep- gui.so.0.8.0

I also tried adding
/usr/GNUstep/System/Libraries/ix86/linux-gnu/gnu-gnu-gnu/ to my
LD_LIBRARY_PATH, but that didn't work either:

LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/GNUstep/System/Libraries/ix86/ linux-gnu/gnu-gnu-gnu"

: /home/luke; gpbs
gpbs: Uncaught exception NSGenericException, reason: unable to register GNUstepGSPasteboardServer

Looks like adding to the LD_LIBRARY_PATH *DID* work ... since you got an exception. The fact that you have an exception message proves that the libraries were loaded and the program started running.

If gdomap is running, and gpbs failed to register with it, you have three possibilities I know of ...

1. gpbs is already running (I don't think that's the case here)

2. gpbs ran, registered, and then crashed/was killed without unregistering, and another process has started up using the same port that gpbs used - so gdomap thinks that gpbs is still running.

You can do 'gdomap -N' to list all the names gdomap knows about.
You can do 'gdomap -L name' to list the IP address and port number for the name

The -L option gets gdomap to check to see if the port is in use (exactly as it does when a program tries to register itsself) ... and if it is no longer in use will report that it can't find it.

If gdomap gives you the address and port of the gpbs process, you can look around your system to see which process is using the poprt ... and if it's one you don't want to kill, you can simply
unregister it using the -U option.

3. The network config on your machine is screwed up.
If this is the case, you really need to look at specialist network admin documentation ... but the
gdomap diagnostics should help you with that.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]