Compilando código python em um único exe

Estou tentando compilar código python em um único exe e não consegui fazê-lo corretament

Eu tentei o pyinstaller e este é o arquivo .spec:

# -*- mode: python -*-
a = Analysis([os.path.join(HOMEPATH,'support\\_mountzlib.py'), os.path.join(HOMEPATH,'support\\useUnicode.py'), 'programs\\toolbox.py'],
         pathex=['C:\\Users\\Ronaldo\\Desktop\\Python\\pyinstaller'])
pyz = PYZ(a.pure)
exe = EXE( pyz,
      a.scripts,
      a.binaries,
      a.zipfiles,
      a.datas,
      name=os.path.join('dist', 'program.exe'),
      debug=False,
      strip=False,
      upx=True,
      console=False )

@Pyinstaller compilou bem, criou um único arquivo exe que funcionou, mas aparentemente outros usuários que não tinham a mesma versão do python instalada (2.7.2) não puderam executá-lo. Não dá nenhum erro, simplesmente não inicia. Eu tentei enviando para alguns amigos e também para uma máquina virtual.

Tentei o py2exe. Quando se trata de compilar (com todas as bibliotecas próximas a ele e o restante dos arquivos), ele funciona bem. Tentei compilá-lo em um único arquivo, mas o arquivo exe compilado me deu um erro "toolbox.exe parou de funcionar". Aqui está o relatório de erros, por precaução, pode ser útil:

Problem signature:
  Problem Event Name:   APPCRASH
  Application Name: toolbox.exe
  Application Version:  0.0.0.0
  Application Timestamp:    49180193
  Fault Module Name:    StackHash_0a9e
  Fault Module Version: 0.0.0.0
  Fault Module Timestamp:   00000000
  Exception Code:   c0000005
  Exception Offset: 01b61fcb
  OS Version:   6.1.7601.2.1.0.256.1
  Locale ID:    1033
  Additional Information 1: 0a9e
  Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
  Additional Information 3: 0a9e
  Additional Information 4: 0a9e372d3b4ad19135b953a78882e789

O arquivo setup.py é:

from distutils.core import setup
import py2exe, sys, os

sys.argv.append('py2exe')

setup(
    options = {'py2exe': {'bundle_files': 1}},
    windows = [{'script': "toolbox.py"}],
    zipfile = None,
) single.py file:

E aqui está o single.py

import os, sys, ctypes

ctypes.windll.user32.MessageBoxA(0,
    "curdir: %s\nexedir: %s\nsys.winver: %s" % (
        os.path.abspath(os.curdir),
        os.path.abspath(os.path.dirname(sys.argv[0])),
        sys.winver,
    ), "%s - Message" % os.path.basename(sys.executable), 0x30
)

O programa que escrevi usa os módulos tkinter, sys, random e win32clipboard (pywin). O que estou fazendo de errado? Existem outros compiladores melhores?

Update: Pela dica de Joël, eu compilei com depuração e com o modo console. Ainda não funcionou para usuários que não possuem o python 2.7. Esta é a mensagem de erro:

C:\Users\XXXXX\Desktop>program.exe
Found embedded PKG: C:\Users\XXXXX\Desktop\program.exe
Extracting binaries
Setting up to run child
Setting magic environment var
Creating child process
Waiting for child process to finish...
Found embedded PKG: C:\Users\XXXXX\Desktop\program.exe
workpath: C:/Users/XXXXX/AppData/Local/Temp/_MEI14042/
manifestpath: C:/Users/XXXXX/AppData/Local/Temp/_MEI14042/program.exe.manifest
Activation context created
Activation context activated
C:\Users\XXXXX\AppData\Local\Temp\_MEI14042\python27.dll
Manipulating evironment
PYTHONPATH=C:/Users/XXXXX/AppData/Local/Temp/_MEI14042;C:/Users/XXXXX/Desktop
importing modules from CArchive
extracted iu
extracted struct
extracted archive
Installing import hooks
outPYZ1.pyz

Espero realmente que isso sirva de ajuda para a possível respost

questionAnswers(1)

yourAnswerToTheQuestion