Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bittools extension fails to compile on Fedora 18 (python 2.7.3, gcc 4.7.2, numpy 1.7.0) #23

Closed
GoogleCodeExporter opened this issue Apr 3, 2015 · 5 comments

Comments

@GoogleCodeExporter
Copy link

I checked out rev. 89 from svn and attempted to build from source in the usual 
way (python setup.py build / sudo python setup.py install), but the build 
choked on the bittools extension. A log is attached. It looks as though the 
problem may be numpy-1.7.0-related. (I just watched someone successfully 
install on an Ubuntu 12.04 system with numpy 1.6.2, same gcc and python.)

Original issue reported on code.google.com by chalkdus...@gmail.com on 10 Apr 2013 at 1:33

Attachments:

@GoogleCodeExporter
Copy link
Author

it defines #define NPY_NO_DEPRECATED_API which is wrong
it should be:
#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION

though it requires 1.6 API, specifically PyArray_CORDER instead of NPY_CORDER, 
so this can't be done.
quickfix is probably to just allow deprecated api by removing the broken define.

Original comment by jtaylor....@googlemail.com on 20 Apr 2013 at 3:33

@GoogleCodeExporter
Copy link
Author

Just for the record book, I am having this same problem. I'm using a Mac OSX 
10.7 with fink (python 2.7.4, numpy 1.7.1, libtiff 4.0.3, pylibtiff rev89). I 
will likely have to downgrade to an older numpy. A coworker had the same 
problem and here are the specific lines you need to change to get this patched. 
Is this a problem in the way pylibtiff is using numpy?

Index: libtiff/src/tif_lzw.c
===================================================================
--- libtiff/src/tif_lzw.c (revision 89)
+++ libtiff/src/tif_lzw.c (working copy)
@@ -45,7 +45,7 @@


 #include <Python.h>
-#define NPY_NO_DEPRECATED_API
+//#define NPY_NO_DEPRECATED_API
 #define PY_ARRAY_UNIQUE_SYMBOL PyArray_API
 #include "numpy/arrayobject.h"

Index: libtiff/src/bittools.c
===================================================================
--- libtiff/src/bittools.c  (revision 89)
+++ libtiff/src/bittools.c  (working copy)
@@ -1,5 +1,5 @@
 #include <Python.h>
-#define NPY_NO_DEPRECATED_API
+// #define NPY_NO_DEPRECATED_API
 #define PY_ARRAY_UNIQUE_SYMBOL PyArray_API
 #include "numpy/arrayobject.h"

Original comment by dho...@gmail.com on 23 Apr 2013 at 9:49

@GoogleCodeExporter
Copy link
Author

I have tried to address this issue in the latest revision (r92). 
As far as I can tell, NPY_CORDER is supported as far back as numpy 1.0. I doubt 
anyone is still using an older version than this but just in case I've added a 
check so it shouldn't break for < v1.0 (at least not for this reason).
It would be great if anyone experiencing this issue can verify that it is fixed 
in this revision.

Original comment by richca...@gmail.com on 20 May 2013 at 2:52

  • Changed state: Accepted

@GoogleCodeExporter
Copy link
Author

[deleted comment]

@GoogleCodeExporter
Copy link
Author

OK, so my first effort at a fix didn't work on v1.3. Second effort (r93) should 
work better.

Original comment by richca...@gmail.com on 21 May 2013 at 10:16

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant