Cross platform deployment.

7 views
Skip to first unread message

Anthony Oliver

unread,
Nov 9, 2011, 10:14:08 AM11/9/11
to mich...@googlegroups.com
Has anyone ever had to deploy their python project cross platform that also includes other libraries (like C based that use Cython).

Looking for a best practices solution if there is one.  As you can imagine packaging for linux and mac aren't a problem, but windows comes into the picture and the fun begins.

Trying to use Innotools for windows deployment, but not playing so nice.

An idea I had was to write my own python installation script (in python) and use py2exe to basically pull down the other libraries I need for installation on windows.  Also  I've been considering using an virtualenv but what I'm deploying is meant to be used as a python module within someone's program which kind of breaks down that virtualenv paradigm.

Any suggestions are appreciated.

Chad Crabtree

unread,
Nov 9, 2011, 11:20:58 AM11/9/11
to mich...@googlegroups.com
I've had good luck in the past of just using py2exe, for just packaging my stuff up, even if it uses C extensions it packages up those into the frozen package.

Are you deploying a desktop app?  A webservice? 

If you are deploying to a dev-env then you should look at using python eggs. 

--
You received this message because you are subscribed to the Google Groups "Michigan Python Users Group" group.
To view this discussion on the web visit https://groups.google.com/d/msg/michipug/-/2PnIr1UHBaYJ.
To post to this group, send email to mich...@googlegroups.com.
To unsubscribe from this group, send email to michipug+u...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/michipug?hl=en.



--
Chad Crabtree

Bruce Webber

unread,
Nov 13, 2011, 7:36:16 PM11/13/11
to Michigan Python Users Group
> Trying to use Innotools for windows deployment, but not playing so nice.

I've had luck with WiX (http://wix.sourceforge.net/) which is an open
source program that creates Windows MSI files. You construct an XML
source file which lists the components to be deployed along with other
options which you then compile into the MSI file.

Constructing the XML file can be a bit of a pain, but Wix includes an
executable called tallow which helps to automate this. I do like the
fact that the source file is text, which means it can be nicely placed
under version control.

I've also used Paver (http://paver.github.com/paver/) to help with
build steps. Paver was created by our own Kevin Dangoor.

rseward

unread,
Nov 14, 2011, 1:56:37 AM11/14/11
to Michigan Python Users Group
Hi,

I have used WIX as well. However it is a Windows only solution as I
understand it.

WIX integrates fairly nicely with SharpDevelop an open source .NET
IDE. However SharpDevelop offers few tools to create your XML
installation files.

I modify the example WIX file for my purposes and have been using the
installer for years.

izpack

http://java-source.net/open-source/installer-generators/izpack

.. is a reasonably nice Java based installer that can be used cross
platform. I have used several open source projects that install using
this on Windows and Linux. However it requires Java to be present in
the right conditions on each platform.

Best of luck,
Rob
Reply all
Reply to author
Forward
0 new messages