Hi Antonio,

indeed, my own tests also hinted that enthought packages don't get 
included completely by pyinstaller, with or without my patch. I think it 
has to do with the way they are packaged.
You said you copied the enthought subfolder into the exe dir? That might 
actually be part of the problem, because if any *.pyd files in 
subfolders have a dependency on a MS assembly, this assembly has to be 
next to the *.pyd files. Can you try duplicating the Microsoft.VC90.CRT 
folder (or its contents) and put one into each subfolder with *.pyd 
files? No idea if it works, but it might be worth a try.

Regards,

Florian Höch

Antonio Valentino schrieb:
> On 28 Lug, 21:07, Florian Höch <[email protected]> wrote:
>> That's good news to some extent. I've just added an updated patch for
>> pyinstaller (same ticket), bindepend.py <file> can now show dependent
>> assemblies. Also, when building, assembly files are put into their own
>> subfolder (good idea to clear both build and dist directories first so
>> you don't get duplicates from a build with the previous patch). You can
>> then after building look at all the dependencies of the DLLs with
>> bindepend.py, maybe this gives a hint at whats going wrong.
> 
> Hi Florian,
> I have still not tested your new patch.
> 
> Anyway after a further analysis I can confirm that the problem is due
> to enthought components, or at least my installation of such
> components.
> 
> I generated MSI intallers from source using the MinGW compiler and v.
> 5.1.4 and swig 1.3.39 for win32.
> 
> Packages are:
> 
> * EnthoughtBase 3.0.3
> * Traits 3.2.0
> * TraitsGUI 3.2.0
> * TraitsBackendQt 3.2.0
> * Enable 3.2.0
> * Chaco 3.2.0
> 
> the test program is:
> 
> https://svn.enthought.com/enthought/browser/Chaco/trunk/examples/cursor_tool_demo.py
> 
> with the following two lines added before the first enthought import:
> 
> from enthought.etsconfig.api import ETSConfig
> ETSConfig.toolkit = 'qt4'
> 
> 
> Note: pyinstaller seems to have problems with enthought packages so I
> copied the site-packages/enthought folder into the dist/
> cursor_tool_demo.
> 
> Now I'm going to apply your patch for further testing.
> 
> 
> Best regards.
> 
> --
> Antonio Valentino
> 
>>> Florian,
>>> testing the patched pyinstaller on an "hello world" program doesn't
>>> give any error.
>>> Also a minimal PyQt4 app seems to work fine so the problem must be
>>> elseware:
>>> numpy,
>>> gdal,
>>> enthought
>>> Do you have any idea of how to solve this kind of problem?
>>> Do you think a "dependency walker" program could help in this case?
>>> Many thanks for you precious help
>>> --
>>> Antonio Valentino
>>>> Antonio Valentino schrieb:
>>>>> On 28 Lug, 15:20, Florian Höch <[email protected]> wrote:
>>>>>> It should work without any changes, but maybe clear/delete the build
>>>>>> directory.
>>>>> Yes. Done.
>>>>>> You can check if pyinstaller finds the needed assembly files for Python
>>>>>> 2.6 by looking at the output of Build.py (it should print some debug
>>>>>> messages like 'I: Found manifest <path>' and 'I: <filename> part of
>>>>>> assembly <name> dependency of <otherfile>').
>>>>> OK
>>>>> I: Found manifest C:\WINDOWS\WinSxS\Manifests
>>>>> \x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-
>>>>> ww_d08d0375.manifest
>>>>> I: SRCPATH: C:\WINDOWS\WinSxS\Manifests
>>>>> \x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-
>>>>> ww_d08d0375.manifest
>>>>> I: Microsoft.VC90.CRT.manifest part of assembly Microsoft.VC90.CRT
>>>>> dependency of C:\WINDOWS\system32\python26.dll
>>>>> I: SRCPATH: C:\WINDOWS\WinSxS
>>>>> \x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-
>>>>> ww_d08d0375\msvcr90.dll
>>>>> I: msvcr90.dll part of assembly Microsoft.VC90.CRT dependency of C:
>>>>> \WINDOWS\system32\python26.dll
>>>>> I: SRCPATH: C:\WINDOWS\WinSxS
>>>>> \x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-
>>>>> ww_d08d0375\msvcp90.dll
>>>>> I: msvcp90.dll part of assembly Microsoft.VC90.CRT dependency of C:
>>>>> \WINDOWS\system32\python26.dll
>>>>> I: SRCPATH: C:\WINDOWS\WinSxS
>>>>> \x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-
>>>>> ww_d08d0375\msvcm90.dll
>>>>> I: msvcm90.dll part of assembly Microsoft.VC90.CRT dependency
>>>>>> Are you doing an one-dir or one-file build? In the former case, the
>>>>> one-dir
>>>>>> files Microsoft.VC90.CRT.manifest, msvcm90.dll, msvcp90.dll and
>>>>>> msvcr90.dll should appear in your dist/exe directory when you build, in
>>>>>> the latter case, they will be added to the exe itself - you can check
>>>>>> that with pyinstaller/ArchiveViewer.py <path_to_your_exe>.
>>>>> OK
>>>>> C:\asigrid\gsdview-0.5.x-valentino\win32\dist\gsdview>dir m*
>>>>>  Il volume nell'unità C non ha etichetta.
>>>>>  Numero di serie del volume: 1457-A32A
>>>>>  Directory di C:\asigrid\gsdview-0.5.x-valentino\win32\dist\gsdview
>>>>> 07/11/2007  02.23             1.857 Microsoft.VC90.CRT.manifest
>>>>> 13/04/2008  19.13            59.904 MPR.dll
>>>>> 06/11/2007  21.23           224.768 msvcm90.dll
>>>>> 09/12/2008  15.24           499.712 MSVCP71.dll
>>>>> 07/11/2007  02.19           568.832 msvcp90.dll
>>>>> 09/12/2008  15.24           348.160 MSVCR71.dll
>>>>> 07/11/2007  02.19           655.872 msvcr90.dll
>>>>>                7 File      2.359.105 byte
>>>>>                0 Directory   1.800.060.928 byte disponibili
>>>>> It seems to be all correct but the error dialog keeps popping up :(.
>>>>> thanks again
>>>>> --
>>>>> Antonio Valentino- Nascondi testo citato
>>>> - Mostra testo citato -- Nascondi testo citato
>> - Mostra testo citato -
> > 


--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to