Bug 629707 - Gummi will not start due to OSError: /lib/libgobject-2.0.so.0: wrong ELF class: ELFCLASS32
Summary: Gummi will not start due to OSError: /lib/libgobject-2.0.so.0: wrong ELF clas...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: gummi
Version: 13
Hardware: All
OS: Linux
low
urgent
Target Milestone: ---
Assignee: Fabian Affolter
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-09-02 18:50 UTC by Kvikende
Modified: 2010-11-22 22:27 UTC (History)
2 users (show)

Fixed In Version: gummi-0.5.3-2.fc14
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-11-22 22:20:45 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Kvikende 2010-09-02 18:50:34 UTC
Description of problem:
Gummi will not start due to a bug reported upstream as bug number 97 http://dev.midnightcoding.org/redmine/issues/97. The maintainer must have been aware of this bug because he is the reporter of it upstream. Why it then was pushed to stable is beyond me.

Version-Release number of selected component (if applicable):
gummi.noarch 0:0.4.8-2.fc13

How reproducible:
Always

Steps to Reproduce:
1. Update Gummi to 0.4.8
2. Start it
  
Actual results:
Refusal to start.

Expected results:
It will start.

Additional info:
[torstein@Desktor ~]$ gummi
libgobject was detected at /lib/libgobject-2.0.so.0

Environment created for: 
TEX: None
TMP: /tmp/tmpdzCgJy.tex
PDF: /tmp/tmpdzCgJy.pdf

Traceback (most recent call last):
  File "/usr/lib/python2.6/site-packages/gummi/Core.py", line 79, in <module>
    instance = Core()
  File "/usr/lib/python2.6/site-packages/gummi/Core.py", line 67, in __init__
    iofunc.make_environment(self.filename)
  File "/usr/lib/python2.6/site-packages/gummi/IOFunctions.py", line 54, in make_environment
    self.motion.initial_preview()
  File "/usr/lib/python2.6/site-packages/gummi/Motion.py", line 88, in initial_preview
    pdffile_set = self.previewpane.set_pdffile(self.pdffile)
  File "/usr/lib/python2.6/site-packages/gummi/PreviewPane.py", line 93, in set_pdffile
    self.goto_page(0)
  File "/usr/lib/python2.6/site-packages/gummi/PreviewPane.py", line 179, in goto_page
    self.unref_object(document)
  File "/usr/lib/python2.6/site-packages/gummi/PreviewPane.py", line 70, in unref_object
    glib = CDLL(self.libgobject)
  File "/usr/lib64/python2.6/ctypes/__init__.py", line 353, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: /lib/libgobject-2.0.so.0: wrong ELF class: ELFCLASS32
None

Comment 1 Fabian Affolter 2010-09-06 20:03:01 UTC
Upstream is still working on that bug.

http://dev.midnightcoding.org/redmine/issues/97

Comment 2 Fabian Affolter 2010-09-06 22:06:40 UTC
It was pushed to stable by mistake.  I'm sorry for that annoyance.

Comment 3 Frank 2010-10-22 12:00:10 UTC
Gummi tries to dlopen libgobject.so, and does it by the means of a system('ls /usr/lib/...') call, which ignores lib64 folder in Fedora (and other Red Hat spin off) on 64bit machines... The patch is simple, indeed: just added a 'lib*` in the system() call. Here you are:

----------------------------------CUT HERE--------------------------------------

PreviewPane.py	2010-10-22 13:48:10.204944382 +0200
+++ PreviewPane.py.old	2010-10-22 13:47:20.382944399 +0200
@@ -218,12 +218,12 @@
 		# TODO: Write Python/Cython module to use this function directly.. 
 		# TODO: Find function to detect system library paths, should exist. 
 		import commands, re
-		status, langs = commands.getstatusoutput('ls /usr/lib*/libgobject*.so*')
+		status, langs = commands.getstatusoutput('ls /usr/lib/libgobject*.so*')
 		if status == 0:
 			langs = sorted(list(set(re.sub(' \(.*?\)','', langs).split('\n'))))
 			return langs[0]
 		elif status == 512:
-			status, langs = commands.getstatusoutput('ls /lib*/libgobject*.so*')
+			status, langs = commands.getstatusoutput('ls /lib/libgobject*.so*')
 			langs = sorted(list(set(re.sub(' \(.*?\)','', langs).split('\n'))))
 			return langs[0]
 		else:

Comment 4 Frank 2010-10-22 12:03:02 UTC
Somehow the patch got scrambled... Here you are:


+++ PreviewPane.py	2010-10-22 13:48:10.204944382 +0200
--- PreviewPane.py.old	2010-10-22 13:47:20.382944399 +0200
@@ -218,12 +218,12 @@
 		# TODO: Write Python/Cython module to use this function directly.. 
 		# TODO: Find function to detect system library paths, should exist. 
 		import commands, re
+		status, langs = commands.getstatusoutput('ls /usr/lib*/libgobject*.so*')
-		status, langs = commands.getstatusoutput('ls /usr/lib/libgobject*.so*')
 		if status == 0:
 			langs = sorted(list(set(re.sub(' \(.*?\)','', langs).split('\n'))))
 			return langs[0]
 		elif status == 512:
+			status, langs = commands.getstatusoutput('ls /lib*/libgobject*.so*')
-			status, langs = commands.getstatusoutput('ls /lib/libgobject*.so*')
 			langs = sorted(list(set(re.sub(' \(.*?\)','', langs).split('\n'))))
 			return langs[0]
 		else:

Comment 5 Fedora Update System 2010-11-07 21:59:19 UTC
gummi-0.5.3-1.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/gummi-0.5.3-1.fc13

Comment 6 Fedora Update System 2010-11-07 21:59:31 UTC
gummi-0.5.3-1.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/gummi-0.5.3-1.fc14

Comment 7 Fedora Update System 2010-11-08 22:35:40 UTC
gummi-0.5.3-1.fc14 has been pushed to the Fedora 14 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update gummi'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/gummi-0.5.3-1.fc14

Comment 8 Fedora Update System 2010-11-12 23:20:44 UTC
gummi-0.5.3-2.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/gummi-0.5.3-2.fc14

Comment 9 Fedora Update System 2010-11-12 23:20:56 UTC
gummi-0.5.3-2.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/gummi-0.5.3-2.fc13

Comment 10 Fedora Update System 2010-11-22 22:20:35 UTC
gummi-0.5.3-2.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 11 Fedora Update System 2010-11-22 22:26:55 UTC
gummi-0.5.3-2.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.