[PyQt] pyqtdeploy build can't find modules

David Beck dbeck at ualberta.ca
Mon Mar 14 15:22:10 GMT 2016


Hi, Phill

Thanks for getting back to me.

I did what you suggested (edited builder.py, redeployed pyqtdeploy). I fuond the freeze.py and jobs.csv in a directory /private/var/folders/xc/l59x44tx4_bbl7d78cp44fyc0000gn/T/pyqtdeploy-skzdGX/. I ran the freeze.py file manually using the command

python3.5 /private/var/folders/xc/l59x44tx4_bbl7d78cp44fyc0000gn/T/pyqtdeploy-skzdGX/freeze.py /private/var/folders/xc/l59x44tx4_bbl7d78cp44fyc0000gn/T/pyqtdeploy-skzdGX/jobs.csv

This executed successully. Running the new build of pyqtdeploy, however, gets the same “file not found” error as before. 

I notice that /var/ is a symbolic link in my file system to /private/var/, and pyqtdeploy is using the alias rather than the longer “/private/var”. Could that have something to do with it? (Manually running the command above without “private” works fine.)

David


> On Mar 12, 2016, at 7:40 AM, Phil Thompson <phil at riverbankcomputing.com> wrote:
> 
> On 11 Mar 2016, at 6:06 pm, David Beck <dbeck at ualberta.ca> wrote:
>> 
>> I added an __init__.py to the ELFB directory and get the same results. I will try making a completely “flat” version of my project to see if it can be deployed that way (but it makes project management just that little bit messier).
>> 
>> As you suggested, I cloned the Mercurial repository for PyQtDeploy and deployed pyqtdeploy.app successfully. If I try deploy my ELFB.pdy file, I get the output:
>> 
>> Generating code...
>> Creating directory /Users/David/OpenSource/PyQtDeploy/sysroot-macosx/build
>> Creating directory /Users/David/OpenSource/PyQtDeploy/sysroot-macosx/build/resources
>> Creating directory /Users/David/OpenSource/PyQtDeploy/sysroot-macosx/build/resources/eFieldBook_Qt5
>> Creating directory /Users/David/OpenSource/PyQtDeploy/sysroot-macosx/build/resources/eFieldBook_Qt5/palettes
>> Creating directory /Users/David/OpenSource/PyQtDeploy/sysroot-macosx/build/resources/eFieldBook_Qt5/ui
>> Creating directory /Users/David/OpenSource/PyQtDeploy/sysroot-macosx/build/resources/eFieldBook_Qt5/ui/rsrc
>> Creating directory /Users/David/OpenSource/PyQtDeploy/sysroot-macosx/build/resources/collections
>> Creating directory /Users/David/OpenSource/PyQtDeploy/sysroot-macosx/build/resources/encodings
>> Creating directory /Users/David/OpenSource/PyQtDeploy/sysroot-macosx/build/resources/importlib
>> Creating directory /Users/David/OpenSource/PyQtDeploy/sysroot-macosx/build/resources/PyQt5
>> Running 'python3.5 -OO /var/folders/xc/l59x44tx4_bbl7d78cp44fyc0000gn/T/pyqtdeploy-hwtH42/freeze.py /var/folders/xc/l59x44tx4_bbl7d78cp44fyc0000gn/T/pyqtdeploy-hwtH42/jobs.csv'
>> Unable to freeze files
>> No such file or directory
>> 
>> I looked and there is no /pyqtdeploy-hwtH42/freeze.py or jobs.csv at that location. Neither were requested when I was deploying pyqtdeploy.pdy. I don’t know if that is related to my original problem, but it might have something to do with how the Mercurial pyqtdeploy was deployed.
> 
> freeze.py and jobs.csv are created in a temporary directory that is deleted by the time the program terminates. If you edit builder.py and add...
> 
>    temp_dir.setAutoRemove(False)
> 
> ...below the line that creates the QTemporaryDir instance then the directory and its contents should survive. You can then run the freeze.py script manually to see what's going on.
> 
> Phil



More information about the PyQt mailing list