build failure in v1.2.x branch

I can’t seem to build v1.2.x branch right now on CentOS6. This has not been a problem before. I get the following error message while trying to build the freetype2 stuff:

creating build/temp.linux-x86_64-2.7/CXX

gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -DPY_ARRAY_UNIQUE_SYMBOL=MPL_ARRAY_API -DPYCXX_ISO_CPP_LIB=1 -I/usr/local/include -I/usr/include -I/nas/home/broot/centos6/lib/python2.7/site-packages/numpy/core/include -I/usr/include/freetype2 -I/usr/local/include -I/usr/include -I. -I/home/broot/.local_centos6/include/python2.7 -c src/ft2font.cpp -o build/temp.linux-x86_64-2.7/src/ft2font.o

src/ft2font.cpp: In member function ‘Py::Object FT2Image::py_as_array(const Py::Tuple&)’:
src/ft2font.cpp:388: error: ‘PyArray_UBYTE’ was not declared in this scope
src/ft2font.cpp: In member function ‘Py::Object FT2Font::get_path()’:

src/ft2font.cpp:626: error: ‘PyArray_DOUBLE’ was not declared in this scope
src/ft2font.cpp:632: error: ‘PyArray_UINT8’ was not declared in this scope
error: command ‘gcc’ failed with exit status 1

It looks like we're using the "old" Numpy API there. Did you recently update Numpy by any chance? I hadn't realised these APIs had been turned off yet, but maybe they are in git master. In any event, we should update these to the new APIs (NPY_UBYTE instead of PyArray_UBYTE etc.).

Cheers,
Mike

···

On 12/04/2012 09:46 AM, Benjamin Root wrote:

I can't seem to build v1.2.x branch right now on CentOS6. This has not been a problem before. I get the following error message while trying to build the freetype2 stuff:

creating build/temp.linux-x86_64-2.7/CXX
gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -DPY_ARRAY_UNIQUE_SYMBOL=MPL_ARRAY_API -DPYCXX_ISO_CPP_LIB=1 -I/usr/local/include -I/usr/include -I/nas/home/broot/centos6/lib/python2.7/site-packages/numpy/core/include -I/usr/include/freetype2 -I/usr/local/include -I/usr/include -I. -I/home/broot/.local_centos6/include/python2.7 -c src/ft2font.cpp -o build/temp.linux-x86_64-2.7/src/ft2font.o
src/ft2font.cpp: In member function 'Py::Object FT2Image::py_as_array(const Py::Tuple&)':
src/ft2font.cpp:388: error: 'PyArray_UBYTE' was not declared in this scope
src/ft2font.cpp: In member function 'Py::Object FT2Font::get_path()':
src/ft2font.cpp:626: error: 'PyArray_DOUBLE' was not declared in this scope
src/ft2font.cpp:632: error: 'PyArray_UINT8' was not declared in this scope
error: command 'gcc' failed with exit status 1

------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d

_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
matplotlib-devel List Signup and Options

Not since Nov. 5th (which was a fix for a bug I reported in numpy master. So, I was using numpy 1.8.0 dev branch.

Cheers!
Ben Root

···

On Tue, Dec 4, 2012 at 10:43 AM, Michael Droettboom <mdroe@…31…> wrote:

  It looks like we're using the "old"

Numpy API there. Did you recently update Numpy by any chance? I
hadn’t realised these APIs had been turned off yet, but maybe they
are in git master. In any event, we should update these to the
new APIs (NPY_UBYTE instead of PyArray_UBYTE etc.).

  Cheers,

  Mike

I think I see what's happened. I accidentally committed a #define in there when I was experimenting last week with removing deprecated Numpy APIs. It didn't cause things to break for me, but it looks like it could break things for more recent Numpy's. I've just gone ahead and reverted my change. Let me know if that fixes things for you when you get a chance.

Cheers,
Mike

···

On 12/04/2012 10:50 AM, Benjamin Root wrote:

On Tue, Dec 4, 2012 at 10:43 AM, Michael Droettboom <mdroe@...31... > <mailto:mdroe@…31…>> wrote:

    It looks like we're using the "old" Numpy API there. Did you
    recently update Numpy by any chance? I hadn't realised these APIs
    had been turned off yet, but maybe they are in git master. In any
    event, we should update these to the new APIs (NPY_UBYTE instead
    of PyArray_UBYTE etc.).

    Cheers,
    Mike

Not since Nov. 5th (which was a fix for a bug I reported in numpy master. So, I was using numpy 1.8.0 dev branch.

Cheers!
Ben Root

Looks like that was the problem. The build is now successful.

Thanks!
Ben Root

···

On Tue, Dec 4, 2012 at 1:10 PM, Michael Droettboom <mdroe@…31…> wrote:

  I think I see what's happened.  I

accidentally committed a #define in there when I was experimenting
last week with removing deprecated Numpy APIs. It didn’t cause
things to break for me, but it looks like it could break things
for more recent Numpy’s. I’ve just gone ahead and reverted my
change. Let me know if that fixes things for you when you get a
chance.

  Cheers,

  Mike

Hi all,

I'm trying to build matplotlib 1.3.1 from source on a Windows 8.1 machine
via Cygwin. It seems I'm gettting similar errors to what Ben was above:

In file included from src/file_compat.h:7:0,
                 from src/ft2font.cpp:7:
src/ft2font.cpp: In member function ‘Py::Object FT2Image::py_as_array(const
Py::Tuple&)’:
src/ft2font.cpp:397:83: error: ‘PyArray_UBYTE’ was not declared in this
scope
     PyArrayObject *A = (PyArrayObject *) PyArray_SimpleNewFromData(2,
dimensions, PyArray_UBYTE, _buffer);

Is there any other possible explanations for this issue? I'm using Numpy
1.7.2.

Thanks,
Greg

···

--
View this message in context: http://matplotlib.1069221.n5.nabble.com/build-failure-in-v1-2-x-branch-tp39933p43087.html
Sent from the matplotlib - devel mailing list archive at Nabble.com.

Turns out I had turned off the deprecated Numpy API a year or so ago after I
updated Numpy. By removing my definition of the non deprecated Numpy Version
at the end of my ndarraytypes.h file, I was able to get the git version of
matplotlib to compile and install successfully.

Hope this helps anyone else seeing similar errors.

-Greg

···

--
View this message in context: http://matplotlib.1069221.n5.nabble.com/build-failure-in-v1-2-x-branch-tp39933p43096.html
Sent from the matplotlib - devel mailing list archive at Nabble.com.