[Numpy-discussion] Any plans for windows 64-bit installer for 1.7?

David Cournapeau cournape@gmail....
Mon Feb 4 18:53:27 CST 2013


On Tue, Feb 5, 2013 at 12:27 AM, Ondřej Čertík <ondrej.certik@gmail.com> wrote:
> On Mon, Feb 4, 2013 at 3:49 PM, Christoph Gohlke <cgohlke@uci.edu> wrote:
>> On 2/4/2013 12:59 PM, David Cournapeau wrote:
>>> On Mon, Feb 4, 2013 at 8:27 PM, Ondřej Čertík <ondrej.certik@gmail.com> wrote:
>>>> On Sun, Feb 3, 2013 at 2:57 AM, David Cournapeau <cournape@gmail.com> wrote:
>>>>> On Sun, Feb 3, 2013 at 12:28 AM,  <josef.pktd@gmail.com> wrote:
>>>>>> On Sat, Feb 2, 2013 at 6:14 PM, Matthew Brett <matthew.brett@gmail.com> wrote:
>>>>>>> Hi,
>>>>>>>
>>>>>>> I see there is no Windows 64 bit installer for the 1.7 rc1.
>>>>>>
>>>>>> related:
>>>>>> Is there any chance to get newer mingw or mingw-w64 support "soonish"?
>>>>>
>>>>> The problem has no solution until we can restrict support to windows 7
>>>>> and above. Otherwise, any acceptable solution would require user to be
>>>>> an admin.
>>>>
>>>> The installer is built with this VM/scripts:
>>>
>>> I am not sure whether you're replying to my observation or just giving
>>> a status update: with mingw-w64 (or recent mingw), the built installer
>
> I was just giving a general status, sorry about not being clear.
>
>>> will depend on several .dll (libgcc_s_sjil.dll) that we can't easily
>>> distribute. The only place we can realistically put them is in
>>> C:\Python$VERSION (or wherever python happens to be installed), and I
>>> think it is a very bad idea to install dll from NumPy there. In
>>> Windows 2008 and above, one can refer in .pyd where to look for dlls
>>> in another directory which is private to numpy.
>
> Yes.
>
>>>
>>> David
>>
>> If I understand correctly the problem is distributing dependency/runtime
>> DLLs with a package and ensuring the DLLs are found by Windows when the
>> pyd extensions are imported?
>> For numpy-MKL and other packages I include/install the extra DLLs in the
>> package directories and, if necessary, (i) append the package directory
>> to os.environ['PATH'] or (ii) "pre-load" the DLLs into the process using
>> Ctypes, both early in the package's main __init__.py. No admin rights
>> are required.
>
> So that seems to be the only option. Is there any other solution?

I don't think it is an acceptable solution in general: modifying the
PATH in a package is a big no-no, even worse than adding the dll in
$prefix. I have not thought about pre-loading, but if it works, that
may be a workaround. That's a very ugly workaround, though...

David


More information about the NumPy-Discussion mailing list