Main index > Installation problems > Suse 10.2, iconv, PIL and "process exited"

By my_username (User), on Sun May 20 12:42:59 2007: Suse 10.2, iconv, PIL and "process exited".

Hello there,

I've read the faq, and I compiled adesklets 0.6 from source (which works just fine under Suse 10.0) and I installed all dependencies. However, every desklet I try to run I gives the following error:

Code:


Do you want to (r)egister this desklet or to (t)est it? t
Now testing...
============================================================
If you do not see anything (or just an initial flicker
in the top left corner of your screen), try `--help',
and see the FAQ: `info adesklets'.
============================================================
Traceback (most recent call last):
  File ".desklets/adeskclock-0.1.0/adeskclock.py", line 57, in <module>
    import adesklets
  File "/usr/lib/python2.5/site-packages/PIL/__init__.py", line 43, in <module>
    
adesklets.error_handler.ADESKLETSError: adesklets process exited - 
Exception exceptions.AttributeError: AttributeError("'NoneType' object has no attribute 'kill'",) in <bound method _Communicator.__del__ of <adesklets.communicator._Communicator instance at 0xb7abd70c>> ignored




How can I make adesklets work with Suse 10.2 (& Compiz)?

By my_username (User), on Sun May 20 13:00:29 2007.

Wait a minute. This seems to be the same problem I had with Suse 10.0 (I read my own post from some time ago).

I'll try to recompile IMLib2 with png support. Then I'll get back. I'll be back.... (allways wanted to say that! :) )

By my_username (User), on Sun May 20 13:31:57 2007.

Its the same problem I had before (http://adesklets.sourceforge.net/forum/viewtopic.php?t=334&highlight=)

I cannot compile adesklets from source anymore. I recompiled Imlib (it has png support) and I recompiled libiconv.

But if I run make (./configure gave no errors) I get the error:

Code:


adesklets-adesklets.o adesklets-xwindow.o adesklets-xmenu.o adesklets-cfgfile.o adesklets-cfg_parser.o adesklets-cfg_scanner.o adesklets-command.o adesklets-event.o adesklets-variable.o adesklets-vector.o adesklets-vector_free.o adesklets-tree.o adesklets-error.o  
adesklets-adesklets.o: In function `adesklets_events_loop':
adesklets.c:(.text+0x854a): undefined reference to `libiconv_open'
adesklets.c:(.text+0x8562): undefined reference to `libiconv_close'
adesklets.c:(.text+0x85db): undefined reference to `libiconv_close'
adesklets-command.o: In function `dupstr_utf8':
command.c:(.text+0x852): undefined reference to `libiconv'
collect2: ld returned 1 exit status
make[2]: *** [adesklets] Error 1
make[2]: Leaving directory `/home/michel/source-install/adesklets-0.6.1/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/michel/source-install/adesklets-0.6.1/src'
make: *** [all-recursive] Error 1



It complains about libiconv, but I do have libiconv installed.... The last time a reboot of my computer helped, but now it doesn't.

By my_username (User), on Sun May 20 13:46:18 2007.

I tried this (http://adesklets.sourceforge.net/forum/viewtopic.php?t=107&highlight=libiconv) to compile adesklets which worked. But when I try to run a desklet I get the same error as before:

Code:


my_username@linux:~/.desklets/adeskclock-0.1.0> python adeskclock.py --nautilus
Do you want to (r)egister this desklet or to (t)est it? t
Now testing...
============================================================
If you do not see anything (or just an initial flicker
in the top left corner of your screen), try `--help',
and see the FAQ: `info adesklets'.
============================================================
Traceback (most recent call last):
  File "adeskclock.py", line 57, in <module>
    import adesklets
  File "/usr/lib/python2.5/site-packages/PIL/__init__.py", line 43, in <module>
    
adesklets.error_handler.ADESKLETSError: adesklets process exited - 
Exception exceptions.AttributeError: AttributeError("'NoneType' object has no attribute 'kill'",) in <bound method _Communicator.__del__ of <adesklets.communicator._Communicator instance at 0xb7a2e70c>> ignored

By syfou (Core Developer & Desklet Author), on Sun May 20 18:14:38 2007.

About iconv:
According to POSIX. Iconv support (libiconv) is supposed to be dynamically linked in from libc: testing for the presence of the appropriate headers (iconv.h) is supposed to be enough. As far as I know, this is always the case with glibc-based system (this includes Suse 10.2) since glibc 2.2 release, back in 2001, so I don't understand what went wrong on your system... Anyway, I will see what I can do to shield adesklets autotools machinery from this without sacrificing portability: it shouldn't be hard, but it could take a while as I will need to perform regression tests.

About running successfully built adesklets 0.6.1:

my_username wrote:


Code:


File "/usr/lib/python2.5/site-packages/PIL/__init__.py", line 43, in <module> 



This just doesn't make sense to me... There is absolutely no dependency from adesklets python module on PIL (Python Imaging Library). Out of curiosity, can you give me the output of:

Code:


env ADESKLETS_ID=0 python -c 'import adesklets'


(It should normally be empty)? Thanks!

my_username wrote:


Code:


desklets.error_handler.ADESKLETSError: adesklets process exited - 



This is a common, generic error (see the FAQ for explanation)... It could be related to the PIL warning above, or not. Anyway, there is also a fair chance you need to patch the code concerning the FontConfig bug to run adesklets properly on Suse 10.2... Just make sure the standalone interpreter works fine:

Code:


echo quit | adesklets :


Another way around?
Have you tried/considered running a prepackaged version? See here.

By my_username (User), on Mon May 21 08:03:28 2007.

First of all: thank you for your fast and detailed reply. :)

syfou wrote:


Out of curiosity, can you give me the output of:

Code:


env ADESKLETS_ID=0 python -c 'import adesklets'


(It should normally be empty)? Thanks!

The output of that command is:

Code:


Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/lib/python2.5/site-packages/PIL/__init__.py", line 43, in <module>

adesklets.error_handler.ADESKLETSError: adesklets process exited - 
Exception exceptions.AttributeError: AttributeError("'NoneType' object has no attribute 'kill'",) in <bound method _Communicator.__del__ of <adesklets.communicator._Communicator instance at 0xb7a8e0ac>> ignored


syfou wrote:


Anyway, there is also a fair chance you need to patch the code concerning the FontConfig bug to run adesklets properly on Suse 10.2...

I did that, but sadly the source code still does not compile.... (same iconv error as before).

syfou wrote:


Just make sure the standalone interpreter works fine:

Code:


echo quit | adesklets :



This gives the output:

Code:


Segmentation fault


I'm afraid this is not a good sign? I now think that there is something wrong with my Suse 10.2 installation. I also cannot run certain programs as root (had some troubles logging in as root too: copied the root folder from my other Suse 10.0 installation which solved this). I am thinking of switching back to Suse 10.0 and reinstalling Suse 10.2 (If I can find the time/motivation... ;) ).

syfou wrote:


Another way around?
Have you tried/considered running a prepackaged version? See here.

That's the first thing I tried with the Smart package installer: It gives this error:

Code:


Traceback (most recent call last):
  File "./adeskclock.py", line 57, in <module>
    import adesklets
  File "/usr/lib/python2.5/site-packages/adesklets/__init__.py", line 43, in <module>
    raise e
adesklets.error_handler.ADESKLETSError: adesklets process exited - 
Exception exceptions.AttributeError: AttributeError("'NoneType' object has no attribute 'kill'",) in <bound method _Communicator.__del__ of <adesklets.communicator._Communicator instance at 0xb7b1970c>> ignored


This is why I tried to compile adesklets from source.The strange thing is that other libraries/applications (like imlib and openFTD do compile from source code...).

By syfou (Core Developer & Desklet Author), on Mon May 21 11:13:15 2007.

You wrote:


I tried this [[i:817b379359]concerning the iconv building problem] to compile adesklets which worked. But when I try to run a desklet I get the same error as before.
[...]

I wrote:


Anyway, there is also a fair chance you need to patch the code concerning the FontConfig bug to run adesklets properly on Suse 10.2...

I did that, but sadly the source code still does not compile.... (same iconv error as before).

If the aforementioned workaround did the trick before, why didn't you used it this time? Seeing the core interpreter segfault tell me you need to generate a patched version corrected to work with the new FontConfig memory scheme. In fact, there is a chance this fontconfig bug will be your only "fatal" condition.

You wrote:


I wrote:


Have you tried/considered running a prepackaged version?

That's the first thing I tried with the Smart package installer: It gives this error: [[i:817b379359]same error as always].

I am not familiar with dependency tracking on SuSE, but I think that would be the time to notify the packager then... Unless you have a hand-modified base system, there seems to be some mismatch between the packager build environment and yours.

For you to know, I will investigate this week another user having an unrelated (and a lot less common) problem on OpenSuSE 10.2, thus I will likely be able to push a working precompiled version your way in a few days if you want me to, provided you are on the same architecture (I am not 100% sure, but I think his is x86). Yours,

By my_username (User), on Mon May 21 16:44:32 2007.

syfou wrote:

If the aforementioned workaround did the trick before, why didn't you used it this time? Seeing the core interpreter segfault tell me you need to generate a patched version corrected to work with the new FontConfig memory scheme. In fact, there is a chance this fontconfig bug will be your only "fatal" condition.

You're right. I forgot to use the command:

Code:


./configure CFLAGS="$CFLAGS -liconv -L/usr/local/include" 


after I applied the patch. I ran that configure command, 'make' and 'make install' again in the same patched source directory and now I get the following error when starting an adesklet:

Code:


Traceback (most recent call last):
  File "./adeskclock.py", line 57, in <module>
    import adesklets
  File "/usr/lib/python2.5/site-packages/adesklets/__init__.py", line 43, in <module>
    raise e
adesklets.error_handler.ADESKLETSError: adesklets process exited - 
Exception exceptions.AttributeError: AttributeError("'NoneType' object has no attribute 'kill'",) in <bound method _Communicator.__del__ of <adesklets.communicator._Communicator instance at 0xb7a3272c>> ignored



I think I'll wait for the package you'll make. Thank you in advance :)

P.S. I'm on an i386 (= 32 bit) architecture (Athlon 1800+) too.

By syfou (Core Developer & Desklet Author), on Mon May 21 17:14:20 2007.

OK -- I will let you know by email in a few days (I might have access to the machine this Thursday).

This said, have you properly uninstalled previous version? And have you used the appropriate --prefix (your configuration line above suggests you didn't check -- most Linux are standardized on --prefix=/usr these days)? Remaining problem is likely as trivial as that... It might not look like it, but to my eyes this is already a progress, since the weird PIL error is gone! Yours,


adesklets is proud to be hosted on:

SourceForge.net Logo

Back to adesklets.sf.net.