On 29/09/2016 21:20, Coyot Linden (Glenn Glazer) wrote:
> Anyone have any thoughts on this?  It's now also showing up in
> download_update:
> 
> LOADER: Running download_update.py
> Traceback (most recent call last):
>  File "download_update.py", line 33, in <module>
>    import os
>  File
> "c:\cygwin64\tmp\pip-build-xzzmth\pyinstaller\PyInstaller\loader\pyimod03_importers.py",
> line 389, in load_module
>  File "InstallerUserMessage.py", line 33, in <module>
>    import Queue
> ImportError: No module named Queue
> Failed to execute script download_update
> 
> I have no idea why Queue would be different than any other Python module.
> 
> Best,
> 
> coyot
> 
> 
> On 9/26/16 10:07, Coyot Linden (Glenn Glazer) wrote:
>> Hi, all.
>>
>> There is a top level script, called SL_Launcher.  This script may
>> decide to launch another script, download_update as a subprocess:
>>
>> download_process = subprocess.Popen([path_to_downloader, ...args to
>> download_update] ...args to subprocess)
>>
>> where path_to_downloader is the pyinstaller created executable in the
>> same directory as the pyinstaller created executable of SL_Launcher.
>>
>> Inside download_update, it imports a module called
>> InstallerUserMessage.py, which isolates all of the Tkinter handling
>> for the various other modules. For test purposes, InstallerUserMessage
>> has a main() that exercises the various methods. For the
>> implementation of a progressbar, it imports Queue.
>>
>> When I run the main() method from InstallerUserMessage, it runs
>> without error.
>>
>> However, when I run SL_Launcher.exe or just download_update.exe, I get:
>>
>> LOADER: Running SL_Launcher.py
>> Traceback (most recent call last):
>>  File "SL_Launcher.py", line 30, in <module>
>>    import InstallerUserMessage
>>  File
>> "c:\cygwin64\tmp\pip-build-xzzmth\pyinstaller\PyInstaller\loader\pyimod03_importers.py",
>> line 389, in load_module
>>  File "InstallerUserMessage.py", line 33, in <module>
>>    import Queue
>> ImportError: No module named Queue
>> Failed to execute script SL_Launcher
>> LOADER: OK.
>> LOADER: Cleaning up Python interpreter.
>> LOADER: Back to parent (RC: -1)
>> LOADER: Doing cleanup
>> LOADER: Freeing archive status for c:\Program Files
>> (x86)\SecondLifeTestCoyotVMP\SL_Launcher.exe
>>
>> or
>>
>> LOADER: Running download_update.py
>> Traceback (most recent call last):
>>  File "download_update.py", line 33, in <module>
>>    import os
>>  File
>> "c:\cygwin64\tmp\pip-build-xzzmth\pyinstaller\PyInstaller\loader\pyimod03_importers.py",
>> line 389, in load_module
>>  File "InstallerUserMessage.py", line 33, in <module>
>>    import Queue
>> ImportError: No module named Queue
>> Failed to execute script download_update
>> LOADER: OK.
>> LOADER: Cleaning up Python interpreter.
>> LOADER: Back to parent (RC: -1)
>> LOADER: Doing cleanup
>> LOADER: Freeing archive status for c:\Program Files
>> (x86)\SecondLifeTestCoyotVMP\download_update.exe
>>
>> The only other error output message is this:
>>
>> LOADER: Error activating the context: ActivateActCtx:
>> An attempt to set the process default activation context failed
>> because the process default activation context was already set.
>>
>> If I add import Queue to SL_Launcher (it is already in
>> download_update), there is no problem with those import statements. 
>> If I reorder the import statements in InstallerUserMessage to put
>> Queue at the end (I typically alphabetize them), it has no problem
>> finding os, sys, threading, time, Tkinter, ttk, and webbrowser, and
>> dies on Queue.
>>
>> By way of environment notes, Windows 7, Python 2.7.11 and pyinstaller
>> 3.2. I am not using any custom spec files. This code works on Mac as
>> Python scripts. 
>>
>> Is there something I need to do to get pyinstaller to find Queue in an
>> imported module?  I find it curious and strange that it found all of
>> other imports but not Queue.
>>
>> Best,
>>
>> coyot 
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "PyInstaller" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to pyinstaller+unsubscr...@googlegroups.com
> <mailto:pyinstaller+unsubscr...@googlegroups.com>.
> To post to this group, send email to pyinstaller@googlegroups.com
> <mailto:pyinstaller@googlegroups.com>.
> Visit this group at https://groups.google.com/group/pyinstaller.
> For more options, visit https://groups.google.com/d/optout.

An interesting little experiment that might throw some light on the
situation:
In [24]: import Queue
In [25]: Queue.__file__
Out[25]: 'c:\\python27\\lib\\Queue.pyc'
In [26]: Queue?
Type:        module
String form: <module 'Queue' from 'c:\python27\lib\Queue.pyc'>
File:        c:\python27\lib\queue.py
Docstring:   A multi-producer, multi-consumer queue.

In [27]: import queue
In [28]: queue.__file__
Out[28]: 'c:\\python27\\lib\\site-packages\\queue\\__init__.pyc'
In [29]: queue?
Type:        module
String form: <module 'queue' from
'c:\python27\lib\site-packages\queue\__init__.pyc'>
File:        c:\python27\lib\site-packages\queue\__init__.py
Docstring:   <no docstring>

https://docs.python.org/2.7/library/queue.html?highlight=queue is worth
a look as opposed to
https://docs.python.org/3.5/library/queue.html?highlight=queue

-- 
Steve (Gadget) Barnes
Any opinions in this message are my personal opinions and do not reflect
those of my employer.

-- 
You received this message because you are subscribed to the Google Groups 
"PyInstaller" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pyinstaller+unsubscr...@googlegroups.com.
To post to this group, send email to pyinstaller@googlegroups.com.
Visit this group at https://groups.google.com/group/pyinstaller.
For more options, visit https://groups.google.com/d/optout.

Reply via email to