What are you using instead of wx, if I may ask. On Thu, Jun 21, 2012 at 4:34 PM, Sebastian Hilbert < [email protected]> wrote:
> On Thursday, June 21, 2012 04:28:09 PM Tom Tijerina wrote: > > > Thanks so much for your help! If you are the blind leader, you have at > > least traveled the road enough times to remember the path :) > > > > Look at this ticket. > > http://www.pyinstaller.org/ticket/312 > > We have travelled that path as well but rewrote our code to get rid of > pubsub. > > Once wxpython 3.0 will be released we might look at it again. > > Sebastian Hilbert > GNUmed team > > > > > On Thu, Jun 21, 2012 at 4:02 PM, Daniel Hyams <[email protected]> wrote: > > > Also, are you trying to use the arg1 protocol or the kwargs protocol in > > > your application? > > > > > > On Thu, Jun 21, 2012 at 3:58 PM, Daniel Hyams <[email protected]> > wrote: > > >> This is probably the blind leading the blind here. > > >> > > >> To me, your Analysis call is a little strange. Mine looks like this: > > >> a = Analysis([catpath(HOMEPATH,'support','_mountzlib.py'), > > >> > > >> catpath(HOMEPATH,'support','useUnicode.py'), > > >> catpath('..','..',srcdir,'src','main.py')], > > >> pathex=[srcpath]) > > >> > > >> where "catpath" is just a little function that I wrote to concatenate > > >> multiple strings into one path. Note that I only have one of my own > py > > >> files in there, and that's it. No hiddenimports, and no hookspath; I > put > > >> my custom hooks just alongside pyinstallers; I'm not sure if that > makes a > > >> difference or not. > > >> > > >> Also, are you seeing a print statement during the build that says > > >> "wx.lib.pubsub: adding arg1 protocol path"? If not, then the hooks > that > > >> I > > >> gave you are not getting called. > > >> > > >> On Thu, Jun 21, 2012 at 3:31 PM, Tom Tijerina > <[email protected]>wrote: > > >>> I very much appreciate the very quick reply, I tried using what you > have > > >>> and it still didn't work and gave me the same error. I'm assuming > I've > > >>> done > > >>> something wrong. > > >>> > > >>> My 'startme.spec' file is below > > >>> ----------------------------------------- > > >>> # -*- mode: python -*- > > >>> a = Analysis(['C:\\Documents and Settings\\Tom\\Desktop\\ToPy > > >>> v0.001\\startme.py', > > >>> 'C:\\Documents and Settings\\Tom\\Desktop\\ToPy v0.001\\irep.py', > > >>> 'C:\\Documents and > > >>> Settings\\Tom\\Desktop\\ToPy v0.001\\webpro.py'], > > >>> > > >>> pathex=['C:\\DOCUME~1\\Tom\\Desktop\\PYINST~1'], > > >>> hiddenimports=['wx.lib.pubsub.core', > > >>> > > >>> 'wx.lib.pubsub.setuparg1'], > > >>> > > >>> hookspath='C:\\Documents and > > >>> > > >>> Settings\\Tom\\Desktop\\pyinstaller-pyinstaller-2145d84\\newhooks\\') > > >>> pyz = PYZ(a.pure) > > >>> exe = EXE(pyz, > > >>> > > >>> a.scripts, > > >>> a.binaries, > > >>> a.zipfiles, > > >>> a.datas, > > >>> name=os.path.join('dist', 'startme.exe'), > > >>> debug=False, > > >>> strip=None, > > >>> upx=True, > > >>> console=True ) > > >>> > > >>> ------------------------------------------------- > > >>> > > >>> > > >>> and the command im running (as startme.spec is in the same folder) is > > >>> simply > > >>> ---------------------------- > > >>> python pyinstaller.py startme.spec > > >>> ----------------------------- > > >>> > > >>> Am I missing something? I've got that sneaky something simple is > missing > > >>> feeling. I keep trying the same few things over and over again and > all > > >>> its > > >>> doing is making me realize first hand the definition of insanity. I > > >>> don't > > >>> really know or understand wx or pyinstaller enough to know where to > even > > >>> really start. I'm still just learning python. > > >>> > > >>> Thanks again for your help. > > >>> > > >>> On Thu, Jun 21, 2012 at 3:05 PM, Daniel Hyams <[email protected]> > wrote: > > >>>> While I'm not proud of this (it's a complete hack), the following > seems > > >>>> to work for me. This is with the pubsub included with wxpython > 2.8.11 > > >>>> and > > >>>> > > >>>> later, and you must import in your application like this: > > >>>> from wx.lib.pubsub import setuparg1 > > >>>> from wx.lib.pubsub import pub as Publisher > > >>>> > > >>>> I can only verify that this works with the arg1 protocol; it > probably > > >>>> will with kwargs as well, but I have not verified. > > >>>> > > >>>> Anyway, here are the two hooks: > > >>>> > > >>>> hook-wx.lib.pubsub.core.py: > > >>>> ------------------------- cut here ---- > > >>>> import os > > >>>> import sys > > >>>> > > >>>> def hook(mod): > > >>>> pth = str(mod.__path__[0]) > > >>>> > > >>>> if os.path.isdir(pth): > > >>>> # if the user imported setuparg1, this is detected by the > > >>>> > > >>>> hook-wx.lib.pubsub.setuparg1.py hook. That > > >>>> > > >>>> # hook sets sys.wxpubsub to "arg1", and we set the appropriate > > >>>> > > >>>> path here. > > >>>> > > >>>> protocol = getattr(sys,'wxpubsub','kwargs') > > >>>> print "wx.lib.pubsub: Adding %s protocol path"%protocol > > >>>> mod.__path__.append(os.path.normpath(os.path.join(pth, > > >>>> protocol))) > > >>>> > > >>>> return mod > > >>>> > > >>>> ------------------------- cut here ---- > > >>>> > > >>>> And this for hook-wx.lib.pubsub.setuparg1.py: > > >>>> > > >>>> ------------------------- cut here ---- > > >>>> import os > > >>>> import sys > > >>>> > > >>>> # if the user imports setuparg1, we just set an attribute in sys > that > > >>>> allows us to later find out > > >>>> # about this. > > >>>> sys.wxpubsub = "arg1" > > >>>> > > >>>> ------------------------- cut here ---- > > >>>> > > >>>> I told you it was a hack! :O Maybe the pyinstaller folks who know > what > > >>>> they are doing can look at this and determine the correct solution. > > >>>> > > >>>> On Thu, Jun 21, 2012 at 2:48 PM, Tom <[email protected]> > wrote: > > >>>>> Was this ever resolved, I'm having trouble as well. My google-fu > has > > >>>>> failed me the last couple days. I know its something simple I don't > > >>>>> really > > >>>>> see anything in the last 6-8 months but I still cant get it to > work. > > >>>>> > > >>>>> I'm using: > > >>>>> XP Pro SP3 > > >>>>> Python V 2.7.3 > > >>>>> wx.version returns '2.8.12.1 (msw-ansi)' > > >>>>> I have tried both stable pyinstaller and development one from > > >>>>> yesterday (possible version: 2145d84) > > >>>>> > > >>>>> When I switched from importing Publisher to > > >>>>> > > >>>>> I've even tried including this hook below: > > >>>>> import os > > >>>>> > > >>>>> def hook(mod): > > >>>>> pth = str(mod.__path__[0]) > > >>>>> > > >>>>> if os.path.isdir(pth): > > >>>>> mod.__path__.append(os.path.normpath(os.path.join(pth, > > >>>>> > > >>>>> 'kwargs'))) > > >>>>> > > >>>>> return mod > > >>>>> > > >>>>> After changing the publisher import: > > >>>>> from wx.lib.pubsub import setupkwargs > > >>>>> from wx.lib.pubsub import setuparg1 > > >>>>> from wx.lib.pubsub import pub as Publisher > > >>>>> (I have tried every combination of the first two, with both, > without > > >>>>> > > >>>>> one or the other, and with only import Publisher..) > > >>>>> > > >>>>> With one or the other I seem to get: > > >>>>> > > >>>>> C:\Documents and Settings\Tom>"C:\Documents and > > >>>>> Settings\Tom\Desktop\PyPackagers > > >>>>> \pyinstaller-pyinstaller-2145d84\dist\startme.exe" > > >>>>> > > >>>>> Traceback (most recent call last): > > >>>>> File "<string>", line 7, in <module> > > >>>>> File "C:\Documents and > > >>>>> > > >>>>> Settings\Tom\Desktop\pyinstaller-pyinstaller-2145d84\Py > > >>>>> Installer\loader\iu.py", line 431, in importHook > > >>>>> > > >>>>> File "C:\Documents and > > >>>>> > > >>>>> Settings\Tom\Desktop\pyinstaller-pyinstaller-2145d84\Py > > >>>>> Installer\loader\iu.py", line 480, in doimport > > >>>>> > > >>>>> File "C:\Documents and > > >>>>> > > >>>>> Settings\Tom\Desktop\pyinstaller-pyinstaller-2145d84\bu > > >>>>> ild\pyi.win32\startme\out00-PYZ.pyz\wx.lib.pubsub.pub", line 24, in > > >>>>> <module> > > >>>>> > > >>>>> File "C:\Documents and > > >>>>> > > >>>>> Settings\Tom\Desktop\pyinstaller-pyinstaller-2145d84\Py > > >>>>> Installer\loader\iu.py", line 386, in importHook > > >>>>> > > >>>>> File "C:\Documents and > > >>>>> > > >>>>> Settings\Tom\Desktop\pyinstaller-pyinstaller-2145d84\Py > > >>>>> Installer\loader\iu.py", line 480, in doimport > > >>>>> > > >>>>> File "C:\Documents and > > >>>>> > > >>>>> Settings\Tom\Desktop\pyinstaller-pyinstaller-2145d84\bu > > >>>>> ild\pyi.win32\startme\out00-PYZ.pyz\wx.lib.pubsub.core.listener", > line > > >>>>> 13, in <m > > >>>>> odule> > > >>>>> > > >>>>> File "C:\Documents and > > >>>>> > > >>>>> Settings\Tom\Desktop\pyinstaller-pyinstaller-2145d84\Py > > >>>>> Installer\loader\iu.py", line 409, in importHook > > >>>>> ImportError: No module named listenerimpl > > >>>>> > > >>>>> On Tuesday, February 7, 2012 7:12:55 PM UTC-5, marc wrote: > > >>>>>> Hi all; > > >>>>>> > > >>>>>> I can see this has been discussed before in previous emails, but > > >>>>>> after > > >>>>>> reading them, I still cannot resolve this issue. > > >>>>>> I am trying to use pyinstaller to build a Windows executable - > where > > >>>>>> code makes use of : > > >>>>>> > > >>>>>> wx.lib.pubsub import Publisher > > >>>>>> > > >>>>>> ... allowing the model to notify the controller that a change has > > >>>>>> occurred. > > >>>>>> > > >>>>>> However, when the executable is run, I get a "ImportError: cannot > > >>>>>> import name Publisher" error. > > >>>>>> I've tried using all the different imports mentioned on various > > >>>>>> threads, most work from Python, but fail to import once run from a > > >>>>>> Windows executable built with pyinstaller > > >>>>>> > > >>>>>> Could someone please let me know - currently, what's the best work > > >>>>>> around for this issue? I'd really like to get this resolved. > > >>>>>> > > >>>>>> Many thanks for your help, > > >>>>>> Marc > > >>>>>> > > >>>>> -- > > >>>>> > > >>>>> You received this message because you are subscribed to the Google > > >>>>> Groups "PyInstaller" group. > > >>>>> To view this discussion on the web visit > > >>>>> https://groups.google.com/d/msg/pyinstaller/-/9aFhWy6-PcoJ. > > >>>>> > > >>>>> To post to this group, send email to [email protected]. > > >>>>> To unsubscribe from this group, send email to > > >>>>> [email protected]. > > >>>>> For more options, visit this group at > > >>>>> http://groups.google.com/group/pyinstaller?hl=en. > > >>>> > > >>>> -- > > >>>> Daniel Hyams > > >>>> [email protected] > > >>>> > > >>>> -- > > >>>> You received this message because you are subscribed to the Google > > >>>> Groups "PyInstaller" group. > > >>>> To post to this group, send email to [email protected]. > > >>>> To unsubscribe from this group, send email to > > >>>> [email protected]. > > >>>> For more options, visit this group at > > >>>> http://groups.google.com/group/pyinstaller?hl=en. > > >>>> > > >>> -- > > >>> > > >>> You received this message because you are subscribed to the Google > > >>> Groups "PyInstaller" group. > > >>> To post to this group, send email to [email protected]. > > >>> To unsubscribe from this group, send email to > > >>> [email protected]. > > >>> For more options, visit this group at > > >>> http://groups.google.com/group/pyinstaller?hl=en. > > >> > > >> -- > > >> Daniel Hyams > > >> [email protected] > > > > > > -- > > > Daniel Hyams > > > [email protected] > > > > > > -- > > > You received this message because you are subscribed to the Google > Groups > > > "PyInstaller" group. > > > To post to this group, send email to [email protected]. > > > To unsubscribe from this group, send email to > > > [email protected]. > > > For more options, visit this group at > > > http://groups.google.com/group/pyinstaller?hl=en. > > -- > You received this message because you are subscribed to the Google Groups > "PyInstaller" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/pyinstaller?hl=en. > > -- You received this message because you are subscribed to the Google Groups "PyInstaller" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/pyinstaller?hl=en.
