Modify path->perspective is broken

Bug #168843 reported by Bug Importer
0
Affects Status Importance Assigned to Milestone
Inkscape
Invalid
Low
Aaron C Spike

Bug Description

Inkscape 0.45.1, built Mar 20 2007 on Suse Linux 10.1
I installed a package file from your website.

Traceback (most recent call last):
  File "/usr/share/inkscape/extensions/perspective.py", line 23, in ?
    from numpy import *
  File "/usr/lib/python2.4/site-packages/numpy/__init__.py", line 43, in ?
    import linalg
  File "/usr/lib/python2.4/site-packages/numpy/linalg/__init__.py", line 4,
in ?
    from linalg import *
  File "/usr/lib/python2.4/site-packages/numpy/linalg/linalg.py", line 25,
in ?
    from numpy.linalg import lapack_lite
ImportError: /usr/lib/libblas.so.3: undefined symbol: _gfortran_st_write

Tags: extensions
Revision history for this message
Ted Gould (ted) wrote :

Is this an issue with the numpy version in Suse Linux 10.1?

What is the numpy version in Suse Linux 10.1?

Changed in inkscape:
importance: Undecided → Low
status: New → Triaged
Revision history for this message
Tom Davidson (tjd-mit) wrote :

A related issue is that the extension doesn't disable itself at launch if numpy is not installed at launch (as other extensions, like the latex formula extension do, if their dependencies are not present). Running the effect gives the error:

Inkscape has received additional data from the script executed. The script did not return an error, but this may indicate the results will not be as expected.
Failed to import the numpy or numpy.linalg modules. These modules are required by this extension. Please install them and try again.

Revision history for this message
Tom Davidson (tjd-mit) wrote :

This extension works fine on my system. (Fedora core 6, Inkscape latest SVN, numpy version 1.0.3 installed just now by yum from Fedora project). Marking incomplete until we can get enough information to confirm the bug.

Changed in inkscape:
status: Triaged → Incomplete
Revision history for this message
prkos (prkos) wrote :

I also got the numpy.linalg error on fedora 7, but it all worked fine after installing numpy 1.0.3

On WinXP I get errors with perspective.py and inkex.py but Im not sure if its related to this bug

Revision history for this message
Tom Davidson (tjd-mit) wrote :

Hi Prkos,
Do you mean you got the original numpy.linalg error ("... ImportError: /usr/lib/libblas.so.3: undefined symbol: _gfortran_st_write ...") or the ('Failed to import numpy or nump.linalg") error that I got ?

Revision history for this message
prkos (prkos) wrote :

I meant the latter: Failed to import numpy.linalg.... Please install it from a website blah blah.....

Something like that :)

Revision history for this message
Tom Davidson (tjd-mit) wrote :

Well, I think that message (numpy not installed, blah blah...) is not a bug, although it would be nice if perspective would check for its dependencies at load time. I'm going to leave this incomplete (hoping it will just die a natural death of expiring) since no one has been able to confirm the original error.

Revision history for this message
Aaron C Spike (acspike) wrote :

Well the extension _does_ check for its deps when it (the extension) is launched, that's where the message comes from. Inkscape doesn't have facilities for checking if python modules are or are not installed. This would be necessary if Inkscape were to disable an extension when it (the Inkscape applicaiton) is launched. It feels odd to suggest that Inkscape itself should become aware of available python modules, because the external extensions are language agnostic. It may be better to create some method for an extension to check its own deps and report that information to inkscape. I suggest each extension come with a separate executable which only checks deps and reports success or failure via exit status code. In the inx file we could have a property for dependency check application. Of course, this could have very negative effects on the start time for the inkscape application.

The original error does not appear to be a bug in Inkscape either. The version of libblas is missing a function needed by numpy.linalg. Likely libblas is too old of a version or it was configured with out support of the needed functionality.

Revision history for this message
prkos (prkos) wrote :

I think this can then be marked as Invalid

Im satisfied with getting the message about whats missing, its easy to fix and its not strictly Inkscape bug.

Changed in inkscape:
status: Incomplete → Invalid
Revision history for this message
Tom Davidson (tjd-mit) wrote :

Agreed that this looks invalid -- regarding Aaron's suggestion about checking for deps, I was going on the nice behavior of LaTeX formula extension, which checks whether latex, dvips, etc are available on the path, and hides itself if they're not.

On the other hand, leaving the extensions in there, with informative errors about missing dependencies helps users discover new features. Low-priority in any event...

Revision history for this message
Aaron C Spike (acspike) wrote :

Right! latex and dvips are programs that can be found in the path by the OS and therefore inkscape. the existence of numpy can only reliably be detected by python. I think this is probably wishlist-able. We'll have to talk to Ted. Giving extensions more flexible means to declare if they can find all their deps is a really good idea. There are numerous problems trying to test even for simple deps in a reliable crossplatform manner.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.