Building external c modules with mingw64 / numpy

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Building external c modules with mingw64 / numpy

Schnizer, Pierre

Dear all,

 

               I built  an external c-module (pygsl) using mingw 64 from msys2 mingw64-gcc compiler.

 

This  built required  some changes  to numpy.distutils to get the

“python setup.py config”

and

“python setup.py build”

working. In this process  I replaced  2 files in numpy.distutils  from numpy git repository:

-          numpy.dist_utils.misc_utils.py version ec0e046 on 14 Dec 2016

-          numpy.dist_utils. mingw32ccompiler.py version ec0e046 on 14 Dec 2016

 

mingw32ccompiler.py required to be modified to get it work

n  preprocessor  had to be defined  as I am using  setup.py config

n  specifying the runtime library search path to the linker

n  include path  of the vcrtruntime

 

I attached a patch reflecting the changes  I had to make  to file mingw32ccompile.py

If this information is useful I am  happy to answer questions

 

Sincerely yours

               Pierre

 

PS  Version infos:            

Python:

Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 bit (AMD64)] on win32

 

Numpy:

>> help(numpy.version)

Help on module numpy.version in numpy:

DATA

    full_version = '1.12.0'

    git_revision = '561f1accf861ad8606ea2dd723d2be2b09a2dffa'

    release = True

    short_version = '1.12.0'

    version = '1.12.0'

 

gcc.exe (Rev2, Built by MSYS2 project) 6.2.0

 

 




Helmholtz-Zentrum Berlin für Materialien und Energie GmbH

Mitglied der Hermann von Helmholtz-Gemeinschaft Deutscher Forschungszentren e.V.

Aufsichtsrat: Vorsitzender Dr. Karl Eugen Huthmacher, stv. Vorsitzende Dr. Jutta Koch-Unterseher
Geschäftsführung: Prof. Dr. Anke Rita Kaysser-Pyzalla, Thomas Frederking

Sitz Berlin, AG Charlottenburg, 89 HRB 5583

Postadresse:
Hahn-Meitner-Platz 1
D-14109 Berlin

http://www.helmholtz-berlin.de

_______________________________________________
NumPy-Discussion mailing list
[hidden email]
https://mail.scipy.org/mailman/listinfo/numpy-discussion

python_numpy_mingw_git.diff (3K) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Building external c modules with mingw64 / numpy

ralfgommers


On Sat, Jan 21, 2017 at 9:23 PM, Schnizer, Pierre <[hidden email]> wrote:

Dear all,

 

               I built  an external c-module (pygsl) using mingw 64 from msys2 mingw64-gcc compiler.

 

This  built required  some changes  to numpy.distutils to get the

“python setup.py config”

and

“python setup.py build”

working. In this process  I replaced  2 files in numpy.distutils  from numpy git repository:

-          numpy.dist_utils.misc_utils.py version ec0e046 on 14 Dec 2016

-          numpy.dist_utils. mingw32ccompiler.py version ec0e046 on 14 Dec 2016

 

mingw32ccompiler.py required to be modified to get it work

n  preprocessor  had to be defined  as I am using  setup.py config

n  specifying the runtime library search path to the linker

n  include path  of the vcrtruntime

 

I attached a patch reflecting the changes  I had to make  to file mingw32ccompile.py

If this information is useful I am  happy to answer questions


Thanks for the patch Pierre. For future reference: a pull request on GitHub or a link to a Gist is preferred for us and usually gets you a response quicker.

Regarding your question in the patch on including Python's install directory: that shouldn't be necessary, and I'd be wary of applying your patch without understanding why the current numpy.distutils code doesn't work for you. But if your patch works for you then it can't hurt I think.

Cheers,
Ralf

 

 

Sincerely yours

               Pierre

 

PS  Version infos:            

Python:

Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 bit (AMD64)] on win32

 

Numpy:

>> help(numpy.version)

Help on module numpy.version in numpy:

DATA

    full_version = '1.12.0'

    git_revision = '561f1accf861ad8606ea2dd723d2be2b09a2dffa'

    release = True

    short_version = '1.12.0'

    version = '1.12.0'

 

gcc.exe (Rev2, Built by MSYS2 project) 6.2.0

 

 




Helmholtz-Zentrum Berlin für Materialien und Energie GmbH

Mitglied der Hermann von Helmholtz-Gemeinschaft Deutscher Forschungszentren e.V.

Aufsichtsrat: Vorsitzender Dr. Karl Eugen Huthmacher, stv. Vorsitzende Dr. Jutta Koch-Unterseher
Geschäftsführung: Prof. Dr. Anke Rita Kaysser-Pyzalla, Thomas Frederking

Sitz Berlin, AG Charlottenburg, 89 HRB 5583

Postadresse:
Hahn-Meitner-Platz 1
D-14109 Berlin

http://www.helmholtz-berlin.de

_______________________________________________
NumPy-Discussion mailing list
[hidden email]
https://mail.scipy.org/mailman/listinfo/numpy-discussion



_______________________________________________
NumPy-Discussion mailing list
[hidden email]
https://mail.scipy.org/mailman/listinfo/numpy-discussion
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Building external c modules with mingw64 / numpy

Schnizer, Pierre

Dear Ralf,

 

                I made some further improvements as one problem was related to my setup file.

I will use numpy git repository to cross check it and then report again.

 

Sincerely yours

                Pierre

 

 

Von: NumPy-Discussion [mailto:[hidden email]] Im Auftrag von Ralf Gommers
Gesendet: Dienstag, 14.
Februar 2017 11:00
An: Discussion of Numerical Python <[hidden email]>
Betreff: Re: [Numpy-discussion] Building external c modules with mingw64 / numpy

 

 

 

On Sat, Jan 21, 2017 at 9:23 PM, Schnizer, Pierre <[hidden email]> wrote:

Dear all,

 

               I built  an external c-module (pygsl) using mingw 64 from msys2 mingw64-gcc compiler.

 

This  built required  some changes  to numpy.distutils to get the

“python setup.py config”

and

“python setup.py build”

working. In this process  I replaced  2 files in numpy.distutils  from numpy git repository:

-          numpy.dist_utils.misc_utils.py version ec0e046 on 14 Dec 2016

-          numpy.dist_utils. mingw32ccompiler.py version ec0e046 on 14 Dec 2016

 

mingw32ccompiler.py required to be modified to get it work

n  preprocessor  had to be defined  as I am using  setup.py config

n  specifying the runtime library search path to the linker

n  include path  of the vcrtruntime

 

I attached a patch reflecting the changes  I had to make  to file mingw32ccompile.py

If this information is useful I am  happy to answer questions

 

Thanks for the patch Pierre. For future reference: a pull request on GitHub or a link to a Gist is preferred for us and usually gets you a response quicker.

Regarding your question in the patch on including Python's install directory: that shouldn't be necessary, and I'd be wary of applying your patch without understanding why the current numpy.distutils code doesn't work for you. But if your patch works for you then it can't hurt I think.

 

Cheers,

Ralf

 

 

Sincerely yours

               Pierre

 

PS  Version infos:            

Python:

Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 bit (AMD64)] on win32

 

Numpy:

>> help(numpy.version)

Help on module numpy.version in numpy:

DATA

    full_version = '1.12.0'

    git_revision = '561f1accf861ad8606ea2dd723d2be2b09a2dffa'

    release = True

    short_version = '1.12.0'

    version = '1.12.0'

 

gcc.exe (Rev2, Built by MSYS2 project) 6.2.0

 

 

 



Helmholtz-Zentrum Berlin für Materialien und Energie GmbH

Mitglied der Hermann von Helmholtz-Gemeinschaft Deutscher Forschungszentren e.V.

Aufsichtsrat: Vorsitzender Dr. Karl Eugen Huthmacher, stv. Vorsitzende Dr. Jutta Koch-Unterseher
Geschäftsführung: Prof. Dr. Anke Rita Kaysser-Pyzalla, Thomas Frederking

Sitz Berlin, AG Charlottenburg, 89 HRB 5583

Postadresse:
Hahn-Meitner-Platz 1
D-14109 Berlin

http://www.helmholtz-berlin.de


_______________________________________________
NumPy-Discussion mailing list
[hidden email]
https://mail.scipy.org/mailman/listinfo/numpy-discussion

 




Helmholtz-Zentrum Berlin für Materialien und Energie GmbH

Mitglied der Hermann von Helmholtz-Gemeinschaft Deutscher Forschungszentren e.V.

Aufsichtsrat: Vorsitzender Dr. Karl Eugen Huthmacher, stv. Vorsitzende Dr. Jutta Koch-Unterseher
Geschäftsführung: Prof. Dr. Anke Rita Kaysser-Pyzalla, Thomas Frederking

Sitz Berlin, AG Charlottenburg, 89 HRB 5583

Postadresse:
Hahn-Meitner-Platz 1
D-14109 Berlin

http://www.helmholtz-berlin.de

_______________________________________________
NumPy-Discussion mailing list
[hidden email]
https://mail.scipy.org/mailman/listinfo/numpy-discussion
Loading...