Re: [Py2exe-users] Re: msvcr71.dll missing

Michael Foord <mike@...> writes:
> Tony Meyer wrote:
>
>>[Thomas Heller]
>>
>>>> Would it be useful to print a list of dlls which were found to be
>>>> needed as binary dependencies but not included automatically by
>>>> py2exe?
>>>>
>>
>>+1 - I think something like your example list would be great.
>>
>>[Fuzzy]
>>
>>> What would also be good is running the same test on a clean windows
>>> XP (windows 98/NT/Me ??) install and seeing which aren't available
>>> as standard (and so might need to be 'made available').
>>>
>>
>>If you have the time and resources to do this, then I agree that this would
>> be a useful addition.
> Yes.... it's also the crux of the matter. Knowing that the Python DLL
> accesses a lot of system DLLs is *interesting* but not *useful*. The
> useful thing is knowing which ones you might need to make available to
> your users :-(
>
> I'm aware that it's more work. Hmmm...... OTOH no one has reported any
> problems with missing DLLs *except* the ones related to MSVC 7 (which
> would make sense).
>
> If I *can* arrange a clean (XP) install to do some testing on, then I
> will. I'll have to speak sweetly to our IT guy here.
Let me say this: The list of dlls needed as binary dependencies is only
the first level, and the scanning that py2exe does stops here. You
could use dependencywalker to find out more - it will scan dependencies
down to the leaves.
Lets say your program uses opengl, so py2exe would display opengl32.dll.
Running dependencywalker on opengl32.dll brings up more dependencies: On
my system, the first level it shows for opengl32.dll is: msvcrt.dll
ntdll.dll kernel32.dll advapi32.dll gdi32.dll glu32.dll ddraw.dll
user32.dll. I assume this list would look different if I was running
windows 98, for example.
IMO you can *not*, from this list, select some dlls and copy them to the
user system. Some dlls come as matched set, some are depending on the
host windows system (XP/2k/NT/98/95), some need to be registered, and so
on and so on. It cannot be py2exe's problem to sort all these things
out, py2exe should only list what's required and the developer must find
out how this can be solved.
For the opengl example, the app developer should then find out how
opengl must be installed, and maybe use innosetup or wise or whatever to
do this on the target system.
Thomas

Thread view

[Thomas Heller]
>> Would it be useful to print a list of dlls which were found to be
>> needed as binary dependencies but not included automatically by
>> py2exe?
+1 - I think something like your example list would be great.
[Fuzzy]
> What would also be good is running the same test on a clean
> windows XP (windows 98/NT/Me ??) install and seeing which
> aren't available as standard (and so might need to be 'made
> available').
If you have the time and resources to do this, then I agree that this would
be a useful addition. However, I can see that it would be extremely time
consuming to do so. A wiki, perhaps, to share the load? The dependencies
list without this would still be great, I think, and wouldn't inconvenience
anyone that didn't need it.
=Tony.Meyer

Tony Meyer wrote:
>[Thomas Heller]
>
>
>>>Would it be useful to print a list of dlls which were found to be
>>>needed as binary dependencies but not included automatically by
>>>py2exe?
>>>
>>>
>
>+1 - I think something like your example list would be great.
>
>[Fuzzy]
>
>
>>What would also be good is running the same test on a clean
>>windows XP (windows 98/NT/Me ??) install and seeing which
>>aren't available as standard (and so might need to be 'made
>>available').
>>
>>
>
>If you have the time and resources to do this, then I agree that this would
>be a useful addition.
>
Yes.... it's also the crux of the matter. Knowing that the Python DLL
accesses a lot of system DLLs is *interesting* but not *useful*. The
useful thing is knowing which ones you might need to make available to
your users :-(
I'm aware that it's more work. Hmmm...... OTOH no one has reported any
problems with missing DLLs *except* the ones related to MSVC 7 (which
would make sense).
If I *can* arrange a clean (XP) install to do some testing on, then I
will. I'll have to speak sweetly to our IT guy here.
Regards,
Fuzzyman
http://www.voidspace.org.uk/python
> However, I can see that it would be extremely time
>consuming to do so. A wiki, perhaps, to share the load? The dependencies
>list without this would still be great, I think, and wouldn't inconvenience
>anyone that didn't need it.
>
>=Tony.Meyer
>
>
>
>-------------------------------------------------------
>SF.Net email is sponsored by: Tell us your software development plans!
>Take this survey and enter to win a one-year sub to SourceForge.net
>Plus IDC's 2005 look-ahead and a copy of this survey
>Click here to start! http://www.idcswdc.com/cgi-bin/survey?id=105hix
>_______________________________________________
>Py2exe-users mailing list
>Py2exe-users@...
>https://lists.sourceforge.net/lists/listinfo/py2exe-users
>
>
>
>
>

Michael Foord <mike@...> writes:
> Tony Meyer wrote:
>
>>[Thomas Heller]
>>
>>>> Would it be useful to print a list of dlls which were found to be
>>>> needed as binary dependencies but not included automatically by
>>>> py2exe?
>>>>
>>
>>+1 - I think something like your example list would be great.
>>
>>[Fuzzy]
>>
>>> What would also be good is running the same test on a clean windows
>>> XP (windows 98/NT/Me ??) install and seeing which aren't available
>>> as standard (and so might need to be 'made available').
>>>
>>
>>If you have the time and resources to do this, then I agree that this would
>> be a useful addition.
> Yes.... it's also the crux of the matter. Knowing that the Python DLL
> accesses a lot of system DLLs is *interesting* but not *useful*. The
> useful thing is knowing which ones you might need to make available to
> your users :-(
>
> I'm aware that it's more work. Hmmm...... OTOH no one has reported any
> problems with missing DLLs *except* the ones related to MSVC 7 (which
> would make sense).
>
> If I *can* arrange a clean (XP) install to do some testing on, then I
> will. I'll have to speak sweetly to our IT guy here.
Let me say this: The list of dlls needed as binary dependencies is only
the first level, and the scanning that py2exe does stops here. You
could use dependencywalker to find out more - it will scan dependencies
down to the leaves.
Lets say your program uses opengl, so py2exe would display opengl32.dll.
Running dependencywalker on opengl32.dll brings up more dependencies: On
my system, the first level it shows for opengl32.dll is: msvcrt.dll
ntdll.dll kernel32.dll advapi32.dll gdi32.dll glu32.dll ddraw.dll
user32.dll. I assume this list would look different if I was running
windows 98, for example.
IMO you can *not*, from this list, select some dlls and copy them to the
user system. Some dlls come as matched set, some are depending on the
host windows system (XP/2k/NT/98/95), some need to be registered, and so
on and so on. It cannot be py2exe's problem to sort all these things
out, py2exe should only list what's required and the developer must find
out how this can be solved.
For the opengl example, the app developer should then find out how
opengl must be installed, and maybe use innosetup or wise or whatever to
do this on the target system.
Thomas

Thomas Heller wrote:
>Michael Foord <mike@...> writes:
>[snip..]
>
>>Yes.... it's also the crux of the matter. Knowing that the Python DLL
>>accesses a lot of system DLLs is *interesting* but not *useful*. The
>>useful thing is knowing which ones you might need to make available to
>>your users :-(
>>
>>I'm aware that it's more work. Hmmm...... OTOH no one has reported any
>>problems with missing DLLs *except* the ones related to MSVC 7 (which
>>would make sense).
>>
>>If I *can* arrange a clean (XP) install to do some testing on, then I
>>will. I'll have to speak sweetly to our IT guy here.
>>
>>
>
>Let me say this: The list of dlls needed as binary dependencies is only
>the first level, and the scanning that py2exe does stops here. You
>could use dependencywalker to find out more - it will scan dependencies
>down to the leaves.
>
>
>
I now understand that you've implemented a more generic solution than
just resolving binary dependencies for the basic py2exe system. Sounds
very good.
It would be nice to resolve the *basic* dependencies - but I realise
there are OS specific issues etc. Hopefully it's something we can
starting getting onto the Wiki. If I can get hold of a basic machine
I'll do either a clean windows 98 or a clean XP install and do some testing.
I think I understand some of the 'dll hell' issues as well now. Thanks.
Regards,
Fuzzy
http://www.voidspace.org.uk/python
>Lets say your program uses opengl, so py2exe would display opengl32.dll.
>Running dependencywalker on opengl32.dll brings up more dependencies: On
>my system, the first level it shows for opengl32.dll is: msvcrt.dll
>ntdll.dll kernel32.dll advapi32.dll gdi32.dll glu32.dll ddraw.dll
>user32.dll. I assume this list would look different if I was running
>windows 98, for example.
>
>IMO you can *not*, from this list, select some dlls and copy them to the
>user system. Some dlls come as matched set, some are depending on the
>host windows system (XP/2k/NT/98/95), some need to be registered, and so
>on and so on. It cannot be py2exe's problem to sort all these things
>out, py2exe should only list what's required and the developer must find
>out how this can be solved.
>
>For the opengl example, the app developer should then find out how
>opengl must be installed, and maybe use innosetup or wise or whatever to
>do this on the target system.
>
>Thomas
>
>
>
>-------------------------------------------------------
>SF.Net email is sponsored by: Tell us your software development plans!
>Take this survey and enter to win a one-year sub to SourceForge.net
>Plus IDC's 2005 look-ahead and a copy of this survey
>Click here to start! http://www.idcswdc.com/cgi-bin/survey?id=105hix
>_______________________________________________
>Py2exe-users mailing list
>Py2exe-users@...
>https://lists.sourceforge.net/lists/listinfo/py2exe-users
>
>
>
>
>