Linux , como crear instalacion ?

Francesc Altet falted en pytables.org
Mie Nov 17 09:32:01 CET 2004


A Dimarts 16 Novembre 2004 20:42, qqq qqqq va escriure:
> ¿ Como se hace esto ? , la verdad es que estoy muy
> perdido , se que el PyQT tiene un archivo configure.py
> y que se instala como todos los programas en Linux (
> make y make install ).

Te adjunto un ejemplo de setup.py para un programa hecho con PyQt que usa
las distutils. Puedes modificarlo a tu gusto.

Saludos,

-- 
Francesc Altet

#!/usr/bin/env python
#----------------------------------------------------------------------
# Setup script for the vitables package

import sys, os.path
from distutils.core     import setup
from distutils.command.install_data import install_data
from tables import __version__
from qt import qVersion, PYQT_VERSION_STR

# Check versions
pyVersion = sys.version_info
if pyVersion < (2, 3, 4) :
    print "#################################################################"
    print "You need Python 2.3.4 or greater to install ViTables!. Exiting..."
    print "#################################################################"
    sys.exit(1)

tablesVersion = __version__
if tablesVersion < '0.8' :
    print "#################################################################"
    print "You need PyTables 0.8 or greater to install ViTables!. Exiting..."
    print "#################################################################"
    sys.exit(1)

qtVersion = qVersion()
if qtVersion < '3.2.3' :
    print "#################################################################"
    print "You need Qt 3.2.3 or greater to install ViTables!. Exiting..."
    print "#################################################################"
    sys.exit(1)

pyqtVersion = PYQT_VERSION_STR
if pyqtVersion < '3.12' :
    print "#################################################################"
    print "You need PyQt 3.12 or greater to install ViTables!. Exiting..."
    print "#################################################################"
    sys.exit(1)

# =================================================================

#  Pete Shinner's distutils data file fix... from distutils-sig
#data installer with improved intelligence over distutils
#data files are copied into the project directory instead
#of willy-nilly
class smart_install_data(install_data):
    def run(self):
        #need to change self.install_dir to the library dir
        install_cmd = self.get_finalized_command('install')
        self.install_dir = getattr(install_cmd, 'install_lib')
        return install_data.run(self)

# =================================================================

# The installation directory for data files is rooted into the project
# directory instead of sys.prefix
dataDir = 'vitables'
iconsDir = os.path.join(dataDir, 'icons')
examplesDir = os.path.join(dataDir, 'examples')

setup(name = 'vitables',
    version = "0.1",
    description = 'A viewer for pytables package',
    long_description = """\

ViTables is a GUI for PyTables (a hierarchical database package designed to 
efficently manage very large amounts of data) . It allows to open arbitrarely 
large PyTables files and manipulate its data and metadata in a variety of ways.

""",
      
    author = 'Vicent Mas',
    author_email = 'vmas en pytables.org',
    maintainer = 'Vicent Mas',
    maintainer_email = 'vmas en pytables.org',
    url = 'http://pytables.sourceforge.net/html/ScreenShots.html',
    packages = ['vitables'],
    scripts = ['scripts/vitables'],
    cmdclass = {"install_data":smart_install_data},
    #cmdclass = {},
    data_files = [(iconsDir, ['icons/appearance.png','icons/apply.png',
    'icons/bookmark_add.png','icons/bookmark.png','icons/cancel.png',
    'icons/exit.png','icons/filenew.png','icons/fileopen.png',
    'icons/filesaveas.png','icons/filesave.png',
    'icons/folder_green_open.png','icons/folder_home2.png',
    'icons/folder_open.png','icons/folder.png',
    'icons/gohome.png','icons/help.png','icons/history_clear.png',
    'icons/info.png','icons/inserttable.png','icons/kfm_home.png',
    'icons/list.png','icons/locationbar_erase.png',
    'icons/math_matrix.png','icons/month.png','icons/ok.png',
    'icons/player_back.png','icons/player_end.png',
    'icons/player_play.png','icons/player_start.png',
    'icons/reload_page.png','icons/remove.png']),
    (examplesDir, ['examples/vitablesrc'])]
)

print "\nInstallation complete.\nEnjoy"

------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es


Más información sobre la lista de distribución Python-es