2011-06-20 4 views
4

J'ai récemment créé un script en utilisant PyQt et quelques autres paquets que je voudrais distribuer à d'autres personnes, et j'ai essayé de le mettre dans un exe en utilisant PyInstaller.Comment créer des modules hook pour PyInstaller?

Le problème que je rencontre cependant est le "Importé échoué, ne peut pas trouver" que je rassemble est lié au fait que j'ai besoin de créer des fichiers hook pour certains modules. J'ai essayé de suivre le guide limité sur le manuel PyInstaller mais cela ne semble pas fonctionner comme j'ai essayé. Des idées? Le fichier .exe généré échoue à l'étape 'from import obspy.core import *', donc il est probable que les importations qui se produisent avant qu'il ne se passent bien.

Mes importations pour le script sont les suivantes:

import os.path 
import sys 
import string 
import fnmatch 

import numpy as np 

from PyQt4.QtCore import * 
from PyQt4.QtGui import * 
from obspy.core import read 
from matplotlib.figure import Figure 
from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas 
from matplotlib.backends.backend_qt4agg import NavigationToolbar2QTAgg as  NavigationToolbar 
from matplotlib.widgets import MultiCursor 
from obspy.signal import rotate 
from obspy.signal import filter 

Répondre

0

La règle n ° 1 est qu'un script python ne peut pas avoir le même nom qu'un module (c.-à-mail.py causerait des problèmes d'importation d'un module nommé ' courrier'). Je suppose que vous avez peut-être un script appelé obspy.py ou un fichier .pyc avec ce nom.

En ce qui concerne la configuration d'importation pour un module personnalisé, c'est ce qui fonctionne pour moi.

Créez un module nommé Foo avec un widget nommé Barre. Dans le fichier nommé Foo/__ init__.py, la liste des modules à importer:

import Bar 

Puis dans votre script:

From Foo import Bar 

print Bar.helloworld

Questions connexes