Audiotool "Snack" mit Py2exe compilieren

Gute Links und Tutorials könnt ihr hier posten.
Benutzeravatar
snakeseven
User
Beiträge: 405
Registriert: Freitag 7. Oktober 2005, 14:37
Wohnort: Berlin
Kontaktdaten:

Audiotool "Snack" mit Py2exe compilieren

Beitragvon snakeseven » Sonntag 25. Dezember 2005, 12:58

Lange hatte ich Probleme Scripte, die auf die Library des Audiopaketes "Snack" http://www.speech.kth.se/snack/ zurückgreifen, zu compilieren. Falls es anderen auch so geht, hier die Lösung:

Das Script wie gewohnt mit Py2exe compilieren. Py2exe generiert einen Ordner "dist". In diesem Ordner befindet sich ein Ordner "tcl". Dort hinein aus dem Verzeichnis ".../Python24/tcl/" den Ordner "snacklib" kopieren. tksnack.pyc wird von Py2exe ins library-Zip gepackt, muß also nicht mitkopiert werden. Danach müßte die Anwendung als EXE lauffähig sein. Mit dem folgenden Tool läßt sich Py2exe komfortabel aus dem Interpreter heraus starten:

Code: Alles auswählen

"""
makeExe.py
- Simple Python script to automate the creation
  of Python executables using py2exe.

(c) 2004 Premshree Pillai (24/01/04)
http://www.qiksearch.com/
"""

## Run this file from Python root dir

import sys
import re

def getFileName():
   global fileName
   fileName = raw_input("Enter file name (rel or abs path, eg., python/file.py): ")
   try:
      fp = open(fileName)
      fp.close()
   except IOError:
      print "File does not exist!"
      getFileName()

getFileName()

package = re.split(":",fileName)
package = re.split("/",package[len(package) - 1])
package = re.split(".py",package[len(package) - 1])
package = package[0]

def getSetupName():
   global setupName
   setupName = raw_input("Enter name of setup file (or <enter> for default): ")
   if(setupName == ''):
      setupName = "setup.py"
   try:
      fp = open(setupName)
      fp.close()
      flag = raw_input("Setup file exists! Rewrite (0=no; else <enter>)? ")
      if(flag == "1"):
         getSetupName()
   except IOError:
      setupName = setupName

getSetupName()

fp = open(setupName,"w")
temp = """from distutils.core import setup
import py2exe
setup(name = "%s",
     windows = ["%s"],
)""" % (package,fileName)
fp.write(temp)
fp.close()

sys.argv.append("py2exe")
execfile(setupName)

fp = open(setupName,"w")
temp = ""
fp.write(temp)
fp.close()

print "\n", "Executable created!"
print "Press <enter> to exit..."
if(raw_input()):
   exit
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Sonntag 25. Dezember 2005, 15:28

Ich hab das ganze Mal nach "Links und Tutorials" verschoben, da es ja sowas wie ein kleines Tutorial ist.
My god, it's full of CARs! | Leonidasvoice vs Modvoice

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder