472,354 Members | 2,098 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,354 software developers and data experts.

Creating Installer or Executable in Python

I have a small project which has around 10 .py files and I run this
project using command line arguments. I have to distribute this
project to somebody.

I was wondering how can I make an executable or some kind of
installer, so that end user doesn't need to compile and worry if he/
she has Python installed or not ?

Every help is greatly appreciated.

Thanks,

Nov 14 '07 #1
7 3432
A few candidate solutions:

http://nsis.sourceforge.net/Main_Page
http://www.jrsoftware.org/isinfo.php

DanielJohnson wrote:
I have a small project which has around 10 .py files and I run this
project using command line arguments. I have to distribute this
project to somebody.

I was wondering how can I make an executable or some kind of
installer, so that end user doesn't need to compile and worry if he/
she has Python installed or not ?

Every help is greatly appreciated.

Thanks,


--
Shane Geiger
IT Director
National Council on Economic Education
sg*****@ncee.net | 402-438-8958 | http://www.ncee.net

Leading the Campaign for Economic and Financial Literacy
Nov 14 '07 #2
Thanks for telling about py2exe.

Is there any utility that will help to make it as a .deb or .rpm file
(for Linux)?

Nov 14 '07 #3
On 14 Nov, 16:17, DanielJohnson <diffuse...@gmail.comwrote:
Thanks for telling about py2exe.
Also note that you should build an MSI installer e.g. using InnoSetup
after applying py2exe.

You could skip the py2exe part and only use InnoSetup to create an
MSI. Most likely your client will not care if the executable file is
called .py/.pyw/.pyc or .exe. Windows users are generally ignorant to
the contents of the Program Files folder. They will not understand
what is there and certainly not care what is there. Therefore, the
only thing that really matters is to make it easy to install and run
the program.

That is:

1. Create an MSI that makes it easy to install the software (including
runtime and dependencies).

2. Use autorun if you ship a DVD or CD-ROM. The installer should start
automatically when the disc is placed in the player.

3. Make sure an icon on the "Start Menu" launches the program.
If you have done that, 99.9% of all clients will be happy. The latter
0.01% is stupid enough to think it matters if the suffix of the
executable is called .exe or not. Never mind these morons, just ship
an .exe that does nothing except to spawn your Python program and
exit.

Is there any utility that will help to make it as a .deb or .rpm file
(for Linux)?
There is a tool called cx_Freeze which is similar to py2exe, except
that it works on several platforms, including Linux. You will have to
build the .deb or .rpm using other tools afterwards.


Nov 14 '07 #4
I'd second InnoSetup for Windows installers, it's easy and powerful (and
free). However, I don't think it can create actual .MSI files, only
..EXE installers. I wish it would create .MSIs, since those are easier
to automatically deploy for large user groups.

I'm not aware of any free tools for building MSIs, but I'd love to find
one.

- Adam
-----Original Message-----
From: py***************************************@python.o rg
[mailto:py***************************************@p ython.org] On
Behalf
Of sturlamolden
Sent: Wednesday, November 14, 2007 9:54 AM
To: py*********@python.org
Subject: Re: Creating Installer or Executable in Python

On 14 Nov, 16:17, DanielJohnson <diffuse...@gmail.comwrote:
Thanks for telling about py2exe.
Also note that you should build an MSI installer e.g. using InnoSetup
after applying py2exe.

You could skip the py2exe part and only use InnoSetup to create an
MSI. Most likely your client will not care if the executable file is
called .py/.pyw/.pyc or .exe. Windows users are generally ignorant to
the contents of the Program Files folder. They will not understand
what is there and certainly not care what is there. Therefore, the
only thing that really matters is to make it easy to install and run
the program.

That is:

1. Create an MSI that makes it easy to install the software (including
runtime and dependencies).

2. Use autorun if you ship a DVD or CD-ROM. The installer should start
automatically when the disc is placed in the player.

3. Make sure an icon on the "Start Menu" launches the program.
If you have done that, 99.9% of all clients will be happy. The latter
0.01% is stupid enough to think it matters if the suffix of the
executable is called .exe or not. Never mind these morons, just ship
an .exe that does nothing except to spawn your Python program and
exit.

Is there any utility that will help to make it as a .deb or .rpm
file
(for Linux)?
There is a tool called cx_Freeze which is similar to py2exe, except
that it works on several platforms, including Linux. You will have to
build the .deb or .rpm using other tools afterwards.


--
http://mail.python.org/mailman/listinfo/python-list
Nov 14 '07 #5
On Nov 14, 9:17 am, DanielJohnson <diffuse...@gmail.comwrote:
Thanks for telling about py2exe.

Is there any utility that will help to make it as a .deb or .rpm file
(for Linux)?
You'll probably want to take a look at PyInstaller. It can be found
here:

http://pyinstaller.python-hosting.com/

Mike

Nov 14 '07 #6


Adam Pletcher wrote:
I'd second InnoSetup for Windows installers, it's easy and powerful (and
free). However, I don't think it can create actual .MSI files, only
.EXE installers. I wish it would create .MSIs, since those are easier
to automatically deploy for large user groups.

I'm not aware of any free tools for building MSIs, but I'd love to find
one.
I just learned about this one within the last week, wix
http://wix.sourceforge.net/

PHP.net uses it for their Windows installers.

-Shawn
>
- Adam
>-----Original Message-----
From: py***************************************@python.o rg
[mailto:py***************************************@p ython.org] On
Behalf
>Of sturlamolden
Sent: Wednesday, November 14, 2007 9:54 AM
To: py*********@python.org
Subject: Re: Creating Installer or Executable in Python

On 14 Nov, 16:17, DanielJohnson <diffuse...@gmail.comwrote:
>>Thanks for telling about py2exe.
Also note that you should build an MSI installer e.g. using InnoSetup
after applying py2exe.

You could skip the py2exe part and only use InnoSetup to create an
MSI. Most likely your client will not care if the executable file is
called .py/.pyw/.pyc or .exe. Windows users are generally ignorant to
the contents of the Program Files folder. They will not understand
what is there and certainly not care what is there. Therefore, the
only thing that really matters is to make it easy to install and run
the program.

That is:

1. Create an MSI that makes it easy to install the software (including
runtime and dependencies).

2. Use autorun if you ship a DVD or CD-ROM. The installer should start
automatically when the disc is placed in the player.

3. Make sure an icon on the "Start Menu" launches the program.
If you have done that, 99.9% of all clients will be happy. The latter
0.01% is stupid enough to think it matters if the suffix of the
executable is called .exe or not. Never mind these morons, just ship
an .exe that does nothing except to spawn your Python program and
exit.

>>Is there any utility that will help to make it as a .deb or .rpm
file
>>(for Linux)?
There is a tool called cx_Freeze which is similar to py2exe, except
that it works on several platforms, including Linux. You will have to
build the .deb or .rpm using other tools afterwards.


--
http://mail.python.org/mailman/listinfo/python-list
Nov 14 '07 #7
Shane Geiger <sg*****@ncee.netwrote:
DanielJohnson wrote:
I have a small project which has around 10 .py files and I run this
project using command line arguments. I have to distribute this
project to somebody.

I was wondering how can I make an executable or some kind of
installer, so that end user doesn't need to compile and worry if he/
she has Python installed or not ?

A few candidate solutions:

http://nsis.sourceforge.net/Main_Page
http://www.jrsoftware.org/isinfo.php
I've used py2exe and nsis quite a few times - works well.

Note that py2exe can bundle your app into a single exe which you can
just run which may be good enough (no need for an installer).

--
Nick Craig-Wood <ni**@craig-wood.com-- http://www.craig-wood.com/nick
Nov 15 '07 #8

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: Harald Schneider | last post by:
Hi, I ran in some problems with Gordon's Installer, after upgrading to Python 2.3.2: After starting the executable it brings up a ImportError: No module named wxPython.wx Before upgrading,...
1
by: Ajay Bakhshi | last post by:
Hi, I have Python-2.2.3/ Mcmillian Installer: _5b5_5 System: HP 11.11 64 bit. Installer + Python were build with 64 bit support (Compiler flag: +DD64) I have a Python file...
1
by: Pierre Rouleau | last post by:
Hi all, When building a exe for a Python application under Windows XP with The McMillan installer, the insttaltion succeeds but when I run the resulting executable the application tracebacks...
1
by: Chris | last post by:
I would like to be able to "package-up" a Python application on my development platform (Linux) so that it can be easily distributed and installed on Windows and UNIX e.g. HP-UX, AIX etc. I'd...
4
by: mrmakent | last post by:
3 quick questions for the newsgroup: 1. Does anyone know why McMillan Installer 5b5 does not work with Python 2.4 under Linux (works with Python 2.3 just fine), and how to fix it? 2. Will...
1
by: Jon H | last post by:
I'm trying to create an installer application that can be run from a web page. I know visual basic pretty well, but I haven't work with asp.net very long. Is there a simple way to do this? When...
4
by: John Salerno | last post by:
Well, now that I can time my laundry, I need to make it runnable. I tried looking for info on the freeze module in the help file, but it didn't seem to come up with much. According to the Python...
1
by: Bernard Lebel | last post by:
Hello, I'd like to know how one can create a Windows installer executable. I have this bunch modules, html files, pictures and directories that I'd like to install in various places on a disk...
12
by: chardish | last post by:
Hello, I'm trying to build an executable with py2exe, but unfortunately the version I have is 0.6.6, which has a rather annoying bug that doesn't let you rename the executable file if you bundle...
2
by: Kemmylinns12 | last post by:
Blockchain technology has emerged as a transformative force in the business world, offering unprecedented opportunities for innovation and efficiency. While initially associated with cryptocurrencies...
0
by: antdb | last post by:
Ⅰ. Advantage of AntDB: hyper-convergence + streaming processing engine In the overall architecture, a new "hyper-convergence" concept was proposed, which integrated multiple engines and...
1
by: Matthew3360 | last post by:
Hi there. I have been struggling to find out how to use a variable as my location in my header redirect function. Here is my code. header("Location:".$urlback); Is this the right layout the...
0
by: AndyPSV | last post by:
HOW CAN I CREATE AN AI with an .executable file that would suck all files in the folder and on my computerHOW CAN I CREATE AN AI with an .executable file that would suck all files in the folder and...
0
hi
by: WisdomUfot | last post by:
It's an interesting question you've got about how Gmail hides the HTTP referrer when a link in an email is clicked. While I don't have the specific technical details, Gmail likely implements measures...
1
by: Matthew3360 | last post by:
Hi, I have been trying to connect to a local host using php curl. But I am finding it hard to do this. I am doing the curl get request from my web server and have made sure to enable curl. I get a...
0
Oralloy
by: Oralloy | last post by:
Hello Folks, I am trying to hook up a CPU which I designed using SystemC to I/O pins on an FPGA. My problem (spelled failure) is with the synthesis of my design into a bitstream, not the C++...
0
by: Carina712 | last post by:
Setting background colors for Excel documents can help to improve the visual appeal of the document and make it easier to read and understand. Background colors can be used to highlight important...
0
BLUEPANDA
by: BLUEPANDA | last post by:
At BluePanda Dev, we're passionate about building high-quality software and sharing our knowledge with the community. That's why we've created a SaaS starter kit that's not only easy to use but also...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.