Question

I want to create an executable file from pyqtgraph,

finally I tried this tutorial

http://www.pyqtgraph.org/Bundling%20applications%20with%20PyQtGraph_R16.pdf

After the first run of the compiled code in the example the tutorial says that there should be an error message like

Traceback (most recent call last):
File "simpleApp.pyw", line 6, in <module>
File "pyqtgraph\__init__.pyc", line 107, in <module>
File "pyqtgraph\__init__.pyc", line 89, in importAll
WindowsError: [Error 3] The system cannot find the path specified:
'D:\\xxxxxx\\SandBox\\src\\dist\\library.zip\\pyqtgraph\\graphicsItems/*.*'

But I got that

 File "pyqtgraph_test.pyw", line 8, in <module>
 File "pyqtgraph\__init__.pyc", line 177, in <module>
 File "pyqtgraph\__init__.pyc", line 167, in importAll
 File "pyqtgraph\__init__.pyc", line 159, in importModules
 Traceback (most recent call last):
 File "pyqtgraph\__init__.pyc", line 155, in importModules
 File "pyqtgraph\graphicsItems\PlotDataItem.pyc", line 4, in <module>
 File "pyqtgraph\graphicsItems\PlotCurveItem.pyc", line 4, in <module>
 File "scipy\stats\__init__.pyc", line 320, in <module>
 File "scipy\stats\stats.pyc", line 246, in <module>
 File "scipy\stats\distributions.pyc", line 16, in <module>
 File "scipy\optimize\__init__.pyc", line 148, in <module>
 File "scipy\optimize\_root.pyc", line 20, in <module>
 File "scipy\optimize\nonlin.pyc", line 122, in <module>
 File "scipy\sparse\__init__.pyc", line 193, in <module>
 File "scipy\sparse\csgraph\__init__.pyc", line 148, in <module>
 File "scipy\sparse\csgraph\_shortest_path.pyc", line 12, in <module>
 File "scipy\sparse\csgraph\_shortest_path.pyc", line 10, in __load
 File "_shortest_path.pyx", line 18, in init scipy.sparse.csgraph._shortest_path                
 (scipy\sparse           \csgraph\_shortest_path.c:14224)
 ImportError: No module named _validation
 File "pyqtgraph_test.pyw", line 8, in <module>
 File "pyqtgraph\__init__.pyc", line 177, in <module>
 File "pyqtgraph\__init__.pyc", line 167, in importAll
 File "pyqtgraph\__init__.pyc", line 159, in importModules
 Traceback (most recent call last):
 File "pyqtgraph\__init__.pyc", line 155, in importModules
 File "pyqtgraph\graphicsItems\PlotItem\__init__.pyc", line 1, in <module>
 File "pyqtgraph\graphicsItems\PlotItem\PlotItem.pyc", line 32, in <module>
 File "pyqtgraph\graphicsItems\PlotDataItem.pyc", line 4, in <module>
 File "pyqtgraph\graphicsItems\PlotCurveItem.pyc", line 4, in <module>
 File "scipy\stats\__init__.pyc", line 320, in <module>
 File "scipy\stats\stats.pyc", line 245, in <module>
 ImportError: cannot import name futil
 File "pyqtgraph_test.pyw", line 8, in <module>
 File "pyqtgraph\__init__.pyc", line 177, in <module>
 File "pyqtgraph\__init__.pyc", line 167, in importAll
 File "pyqtgraph\__init__.pyc", line 159, in importModules
 Traceback (most recent call last):
 File "pyqtgraph\__init__.pyc", line 155, in importModules
 File "pyqtgraph\graphicsItems\HistogramLUTItem.pyc", line 10, in <module>
 File "pyqtgraph\graphicsItems\GradientEditorItem.pyc", line 8, in <module>
 File "pyqtgraph\colormap.pyc", line 2, in <module>
 File "scipy\interpolate\__init__.pyc", line 160, in <module>
 File "scipy\interpolate\ndgriddata.pyc", line 10, in <module>
 File "scipy\interpolate\interpnd.pyc", line 12, in <module>
 File "scipy\interpolate\interpnd.pyc", line 10, in __load
 File "interpnd.pyx", line 1, in init scipy.interpolate.interpnd (scipy\interpolate\interpnd.c:22803)
 File "scipy\spatial\__init__.pyc", line 87, in <module>
 File "scipy\spatial\kdtree.pyc", line 8, in <module>
 File "scipy\sparse\__init__.pyc", line 193, in <module>
 File "scipy\sparse\csgraph\__init__.pyc", line 148, in <module>
 File "scipy\sparse\csgraph\_shortest_path.pyc", line 12, in <module>
 File "scipy\sparse\csgraph\_shortest_path.pyc", line 10, in __load
 File "_shortest_path.pyx", line 18, in init scipy.sparse.csgraph._shortest_path (scipy\sparse   
 \csgraph\_shortest_path.c:14224)
 ImportError: No module named _validation
 File "pyqtgraph_test.pyw", line 8, in <module>
 File "pyqtgraph\__init__.pyc", line 177, in <module>
 File "pyqtgraph\__init__.pyc", line 167, in importAll
 File "pyqtgraph\__init__.pyc", line 159, in importModules
 Traceback (most recent call last):
 File "pyqtgraph\__init__.pyc", line 155, in importModules
 File "pyqtgraph\graphicsItems\GraphicsLayout.pyc", line 6, in <module>
 File "pyqtgraph\graphicsItems\PlotItem\__init__.pyc", line 1, in <module>
 File "pyqtgraph\graphicsItems\PlotItem\PlotItem.pyc", line 32, in <module>
 File "pyqtgraph\graphicsItems\PlotDataItem.pyc", line 4, in <module>
 File "pyqtgraph\graphicsItems\PlotCurveItem.pyc", line 4, in <module>
 File "scipy\stats\__init__.pyc", line 320, in <module>
 File "scipy\stats\stats.pyc", line 245, in <module>
 ImportError: cannot import name futil
 File "pyqtgraph_test.pyw", line 8, in <module>
 File "pyqtgraph\__init__.pyc", line 177, in <module>
 File "pyqtgraph\__init__.pyc", line 167, in importAll
 File "pyqtgraph\__init__.pyc", line 159, in importModules
 Traceback (most recent call last):
 File "pyqtgraph\__init__.pyc", line 155, in importModules
 File "pyqtgraph\graphicsItems\PlotCurveItem.pyc", line 4, in <module>
 File "scipy\stats\__init__.pyc", line 320, in <module>
 File "scipy\stats\stats.pyc", line 245, in <module>
 ImportError: cannot import name futil
 File "pyqtgraph_test.pyw", line 8, in <module>
 File "pyqtgraph\__init__.pyc", line 177, in <module>
 File "pyqtgraph\__init__.pyc", line 167, in importAll
 File "pyqtgraph\__init__.pyc", line 159, in importModules
 Traceback (most recent call last):
 File "pyqtgraph\__init__.pyc", line 155, in importModules
 File "pyqtgraph\graphicsItems\GradientEditorItem.pyc", line 8, in <module>
 File "pyqtgraph\colormap.pyc", line 2, in <module>
 File "scipy\interpolate\__init__.pyc", line 160, in <module>
 File "scipy\interpolate\ndgriddata.pyc", line 10, in <module>
 File "scipy\interpolate\interpnd.pyc", line 12, in <module>
 File "scipy\interpolate\interpnd.pyc", line 10, in __load
 File "interpnd.pyx", line 1, in init scipy.interpolate.interpnd (scipy\interpolate\interpnd.c:22803)
 File "scipy\spatial\__init__.pyc", line 87, in <module>
 File "scipy\spatial\kdtree.pyc", line 8, in <module>
 File "scipy\sparse\__init__.pyc", line 193, in <module>
 File "scipy\sparse\csgraph\__init__.pyc", line 148, in <module>
 File "scipy\sparse\csgraph\_shortest_path.pyc", line 12, in <module>
 File "scipy\sparse\csgraph\_shortest_path.pyc", line 10, in __load
 File "_shortest_path.pyx", line 18, in init scipy.sparse.csgraph._shortest_path (scipy\sparse   
 \csgraph\_shortest_path.c:14224)
 ImportError: No module named _validation
 File "pyqtgraph_test.pyw", line 8, in <module>
 File "pyqtgraph\__init__.pyc", line 177, in <module>
 File "pyqtgraph\__init__.pyc", line 167, in importAll
 File "pyqtgraph\__init__.pyc", line 159, in importModules
 Traceback (most recent call last):
 File "pyqtgraph\__init__.pyc", line 155, in importModules
 File "pyqtgraph\graphicsItems\ScatterPlotItem.pyc", line 7, in <module>
 File "scipy\stats\__init__.pyc", line 320, in <module>
 File "scipy\stats\stats.pyc", line 245, in <module>
 ImportError: cannot import name futil
 File "pyqtgraph_test.pyw", line 8, in <module>
 File "pyqtgraph\__init__.pyc", line 178, in <module>
 File "pyqtgraph\__init__.pyc", line 167, in importAll
 File "pyqtgraph\__init__.pyc", line 159, in importModules
 Traceback (most recent call last):
 File "pyqtgraph\__init__.pyc", line 155, in importModules
 File "pyqtgraph\widgets\PlotWidget.pyc", line 10, in <module>
 File "pyqtgraph\graphicsItems\PlotItem\__init__.pyc", line 1, in <module>
 File "pyqtgraph\graphicsItems\PlotItem\PlotItem.pyc", line 32, in <module>
 File "pyqtgraph\graphicsItems\PlotDataItem.pyc", line 4, in <module>
 File "pyqtgraph\graphicsItems\PlotCurveItem.pyc", line 4, in <module>
 File "scipy\stats\__init__.pyc", line 320, in <module>
 File "scipy\stats\stats.pyc", line 245, in <module>
 ImportError: cannot import name futil
 File "pyqtgraph_test.pyw", line 8, in <module>
 File "pyqtgraph\__init__.pyc", line 178, in <module>
 File "pyqtgraph\__init__.pyc", line 167, in importAll
 File "pyqtgraph\__init__.pyc", line 159, in importModules
 Traceback (most recent call last):
 File "pyqtgraph\__init__.pyc", line 155, in importModules
 File "pyqtgraph\widgets\GradientWidget.pyc", line 4, in <module>
 File "pyqtgraph\graphicsItems\GradientEditorItem.pyc", line 8, in <module>
 File "pyqtgraph\colormap.pyc", line 2, in <module>
 File "scipy\interpolate\__init__.pyc", line 160, in <module>
 File "scipy\interpolate\ndgriddata.pyc", line 10, in <module>
 File "scipy\interpolate\interpnd.pyc", line 12, in <module>
 File "scipy\interpolate\interpnd.pyc", line 10, in __load
 File "interpnd.pyx", line 1, in init scipy.interpolate.interpnd (scipy\interpolate\interpnd.c:22803)
 File "scipy\spatial\__init__.pyc", line 87, in <module>
 File "scipy\spatial\kdtree.pyc", line 8, in <module>
 File "scipy\sparse\__init__.pyc", line 193, in <module>
 File "scipy\sparse\csgraph\__init__.pyc", line 148, in <module>
 File "scipy\sparse\csgraph\_shortest_path.pyc", line 12, in <module>
 File "scipy\sparse\csgraph\_shortest_path.pyc", line 10, in __load
 File "_shortest_path.pyx", line 18, in init scipy.sparse.csgraph._shortest_path (scipy\sparse   
 \csgraph\_shortest_path.c:14224)
 ImportError: No module named _validation
 File "pyqtgraph_test.pyw", line 8, in <module>
 File "pyqtgraph\__init__.pyc", line 178, in <module>
 File "pyqtgraph\__init__.pyc", line 167, in importAll
 File "pyqtgraph\__init__.pyc", line 159, in importModules
 Traceback (most recent call last):
 File "pyqtgraph\__init__.pyc", line 155, in importModules
 File "pyqtgraph\widgets\GraphicsLayoutWidget.pyc", line 2, in <module>
 File "pyqtgraph\graphicsItems\GraphicsLayout.pyc", line 6, in <module>
 File "pyqtgraph\graphicsItems\PlotItem\__init__.pyc", line 1, in <module>
 File "pyqtgraph\graphicsItems\PlotItem\PlotItem.pyc", line 32, in <module>
 File "pyqtgraph\graphicsItems\PlotDataItem.pyc", line 4, in <module>
 File "pyqtgraph\graphicsItems\PlotCurveItem.pyc", line 4, in <module>
 File "scipy\stats\__init__.pyc", line 320, in <module>
 File "scipy\stats\stats.pyc", line 245, in <module>
 ImportError: cannot import name futil
 File "pyqtgraph_test.pyw", line 8, in <module>
 File "pyqtgraph\__init__.pyc", line 178, in <module>
 File "pyqtgraph\__init__.pyc", line 167, in importAll
 File "pyqtgraph\__init__.pyc", line 159, in importModules
 Traceback (most recent call last):
 File "pyqtgraph\__init__.pyc", line 155, in importModules
 File "pyqtgraph\widgets\HistogramLUTWidget.pyc", line 8, in <module>
 File "pyqtgraph\graphicsItems\HistogramLUTItem.pyc", line 10, in <module>
 File "pyqtgraph\graphicsItems\GradientEditorItem.pyc", line 8, in <module>
 File "pyqtgraph\colormap.pyc", line 2, in <module>
 File "scipy\interpolate\__init__.pyc", line 160, in <module>
 File "scipy\interpolate\ndgriddata.pyc", line 10, in <module>
 File "scipy\interpolate\interpnd.pyc", line 12, in <module>
 File "scipy\interpolate\interpnd.pyc", line 10, in __load
 File "interpnd.pyx", line 1, in init scipy.interpolate.interpnd (scipy\interpolate\interpnd.c:22803)
 File "scipy\spatial\__init__.pyc", line 87, in <module>
 File "scipy\spatial\kdtree.pyc", line 8, in <module>
 File "scipy\sparse\__init__.pyc", line 193, in <module>
 File "scipy\sparse\csgraph\__init__.pyc", line 148, in <module>
 File "scipy\sparse\csgraph\_shortest_path.pyc", line 12, in <module>
 File "scipy\sparse\csgraph\_shortest_path.pyc", line 10, in __load
 File "_shortest_path.pyx", line 18, in init scipy.sparse.csgraph._shortest_path (scipy\sparse   
 \csgraph\_shortest_path.c:14224)
 ImportError: No module named _validation
 Traceback (most recent call last):
 File "pyqtgraph_test.pyw", line 8, in <module>
 File "pyqtgraph\__init__.pyc", line 180, in <module>
 File "pyqtgraph\imageview\__init__.pyc", line 6, in <module>
 File "pyqtgraph\imageview\ImageView.pyc", line 20, in <module>
 File "pyqtgraph\imageview\ImageViewTemplate_pyqt.pyc", line 159, in <module>
 File "pyqtgraph\widgets\PlotWidget.pyc", line 10, in <module>
 File "pyqtgraph\graphicsItems\PlotItem\__init__.pyc", line 1, in <module>
 File "pyqtgraph\graphicsItems\PlotItem\PlotItem.pyc", line 32, in <module>
 File "pyqtgraph\graphicsItems\PlotDataItem.pyc", line 4, in <module>
 File "pyqtgraph\graphicsItems\PlotCurveItem.pyc", line 4, in <module>
 File "scipy\stats\__init__.pyc", line 320, in <module>
 File "scipy\stats\stats.pyc", line 245, in <module>
 ImportError: cannot import name futil

What am i doing wrong ?

Was it helpful?

Solution

Every version of scipy seems to have a different set of bugs that make py2exe fail. For the latest version (0.12.0), I have found that I need these two lines somewhere in my program so that py2exe will include them in the build:

from scipy.stats import futil
from scipy.sparse.csgraph import _validation

For some reason it does not seem to work to simply put these in the py2exe 'includes' option in the setup script.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top