[Numpy-discussion] Is anyone knowledgeable about dll deployment on windows ?

Eloi Gaudry eg at fft.be
Sun Nov 29 07:16:03 EST 2009


On 27/11/2009 18:21, David Cournapeau wrote:
> On Fri, Nov 27, 2009 at 11:01 PM, Eloi Gaudry<eg at fft.be>  wrote:
>    
>> David,
>>
>> I know this discussion first took place months ago, but I'd like to know
>> whether or not you find a solution to the SxS assemblies issues using
>> MSVC9.0.
>>      
> Which issue exactly are you talking about ? When python is installed
> for one user (when installed for all users, the C runtime is installed
> in the SxS) ?
>    
Sorry, I was thinking of the "single-user" installation one, where no C 
runtime can be installed to the SxS folder but rather made available 
next to python.exe executable.

>> In case you haven't (the binaries package for windows is built using
>> mingw), I'd like to know if this would be possible to relocate all numpy
>> *.pyd from their original location (i.e. site-packages/numpy/core/,
>> etc.) to the main executable one (i.e. python.exe).
>>      
> This sounds like a very bad idea: if packages start doing that, there
> will quickly be clashes between extensions.
>    
well, the DLLs directory of the nt python install is somehow using the 
very same concept. Moreover this could offer a proper solution to the 
single-user installation C runtime "issue". By making sure every 
binaries are located in the same directory where the C runtime are, one 
doesn't need to install the C runtime libraries in the SxS folder, thus 
no administrative rights are needed at set-up.

> You would need to describe the exact scenario which is failing: how
> python is installed, how you build numpy, what is not working with
> which message, etc...
>    
I'm distributing a software using python as its main interpreter and 
taking advantage of the several python extensions available (such as 
numpy, matplotlib, reportlab, vtk bindings, etc.). Python and its 
extension binaries (*.pyd, *.dll and *.exe) are dynamically built using 
msvc 2008 and thus rely on the SxS assemblies at runtime. As this 
software need to be installed without administrative privileges, I 
cannot install the mandatory runtimes libraries in the shared SxS 
assembly directory (if missing). I then need to directly provide the 
runtime libraries in a private directory of the software I'm 
distributing. Actually, this is why I provide the C runtime libraries in 
the 'bin' directory, where all binaries are stored (python.exe, *.dll, 
vtk*.pyd, etc.).

Eloi
> David
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion at scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>    




More information about the NumPy-Discussion mailing list