[PyInstaller] isolation of LD_LIBRARY_PATH

132 views
Skip to first unread message

mzib...@gmail.com

unread,
May 12, 2010, 5:12:01 AM5/12/10
to pyins...@googlegroups.com
Hello,

could it be possible to implement in PyInstaller something like
"LD_LIBRARY_PATH isolation" at least for Windows platform?


For python development I use PyQt. When PyQt is installed the folder

C:\Python26\Lib\site-packages\PyQt4\bin;

is added to system PATH. But on another system, where is installed
another version of PyQt (Qt), the created binary of my app won't work.
This is because installed PyQt libraries interfere to those bundled.


I'm gettting the following message in onefile mode for my app in such a
situation:

----
Cannot mix incompatible Qt libraries

This application has requested the Runtime to terminate it in an unusual
way.
Please contact the application's support team for more information.
----


The idea is to include to LD_LIBRARY_PATH for executed application only
- path with libraries bundled with created executable
- path of windows system libraries, like:
- %SystemRoot%\system32;
- %SystemRoot%;
- %SystemRoot%\System32\Wbem;


I think this could reduce some disappointment when executing created
binaries on not properly configured Windows systems.

regards
Martin


--
You received this message because you are subscribed to the Google Groups "PyInstaller" group.
To post to this group, send email to pyins...@googlegroups.com.
To unsubscribe from this group, send email to pyinstaller...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/pyinstaller?hl=en.

Giovanni Bajo

unread,
May 12, 2010, 6:07:14 AM5/12/10
to pyins...@googlegroups.com
On Wed, 2010-05-12 at 11:12 +0200, mzib...@gmail.com wrote:
> Hello,
>
> could it be possible to implement in PyInstaller something like
> "LD_LIBRARY_PATH isolation" at least for Windows platform?
>
>
> For python development I use PyQt. When PyQt is installed the folder
>
> C:\Python26\Lib\site-packages\PyQt4\bin;
>
> is added to system PATH. But on another system, where is installed
> another version of PyQt (Qt), the created binary of my app won't work.
> This is because installed PyQt libraries interfere to those bundled.

We will need to investigate this problem futher. If you look at MSDN,
the directory where the application resides is always the *first* being
looked at:

http://msdn.microsoft.com/en-us/library/ms682586(VS.85).aspx

So, I would guess that there is at least one library missing (for some
reason) from your one-dir bundle, and that only library is being
incorrectly found in the user's system. Can you please investigate?

Thanks!

--
Giovanni Bajo :: ra...@develer.com
Develer S.r.l. :: http://www.develer.com

My Blog: http://giovanni.bajo.it
Last post: Grey on black: combining greylisting with blacklists

mzib...@gmail.com

unread,
May 16, 2010, 11:58:55 AM5/16/10
to pyins...@googlegroups.com
Giovanni Bajo píše v St 12. 05. 2010 v 12:07 +0200:
> So, I would guess that there is at least one library missing (for some
> reason) from your one-dir bundle, and that only library is being
> incorrectly found in the user's system. Can you please investigate?

Hi Giovanni,

thanks for the response. You are right. There was missing a file
QtSvg.dll. This file was used from another version of Qt and it raised a
version conflict.

I'm sorry for the inconvenience.
Reply all
Reply to author
Forward
0 new messages