Compile error with gnuradio trunk for armv7-a

I used to be able to build trunk with Openembedded, but “recently”
I’ve run into this message:

gnuradio_swig_py_runtime.cc:130:20: error: Python.h: No such file or
directory

The complete build log is here:

http://tinderbox.openembedded.net/public/logs/729906.txt

Does this ring a bell with anyone?

Phiip

Philip B. wrote:

Hi Philip,

I have never seen this error, nor am I an old hardcore gnuradio guy, but
I briefly took a peak at the make- log… And I found something
interesting, which might have something to do with the problem.

gnuradio_swig_py_runtime.cc:130:20: error: Python.h: No such file or
directory
gnuradio_swig_py_runtime.cc:3022:4: error: #error “This python version
requires swig to be run with the ‘-classic’ option”
gnuradio_swig_py_runtime.cc:3026:3: error: #error “This python version
requires swig to be run with the ‘-nomodern’ option”
gnuradio_swig_py_runtime.cc:3029:3: error: #error “This python version
requires swig to be run with the ‘-nomodernargs’ option”
gnuradio_swig_py_gengen.cc:130:20: error: Python.h: No such file or
directory
gnuradio_swig_py_gengen.cc:3217:4: error: #error “This python version
requires swig to be run with the ‘-classic’ option”
gnuradio_swig_py_gengen.cc:3221:3: error: #error “This python version
requires swig to be run with the ‘-nomodern’ option”
gnuradio_swig_py_gengen.cc:3224:3: error: #error “This python version
requires swig to be run with the ‘-nomodernargs’ option”

I found these lines in the end of the log, and my sugestion would be to
try to rebuild swig with the flags indicated above.

On the other hand there are some other errors further down the log-
file, but they may resolve if you rebuild swig.

Hope this helps, cheers
Mattias K.

On Thu, Aug 14, 2008 at 6:24 AM, Mattias K. [email protected] wrote:

Openembedded-Hotels, Villen, Unterkünfte in Leipzig
gnuradio_swig_py_runtime.cc:130:20: error: Python.h: No such file or
requires swig to be run with the ‘-classic’ option"

Hope this helps, cheers
Mattias K.

My gut is telling me that the failure to find the Python.h file messes
up the python version check. I did upgrade swig from 1.3.31 to 1.3.36
with no improvement.

I’m guessing there is some change in the autofoo. I tried to go back
in revs until it compiled again, back I got back to the point where
the build was fixed for gcc 4.3.1 without finding the rev that
introduced the problem.

Philip

Philip B. wrote:

I used to be able to build trunk with Openembedded, but “recently”

gnuradio_swig_py_runtime.cc:130:20: error: Python.h: No such file or
requires swig to be run with the ‘-classic’ option"
but they may resolve if you rebuild swig.
a binary dist of swig, I’d say try with the source and give the appropriate
flags to configure… Otherwise I assume that you have located the files the
compiler is complaining about, or are they just missing?

Compiled it of course. This is all done inside open emebedded. I need
to work out why it used to work and fails now. I was hoping someone
would go “ah ha, try this …” Pyhton.h exists, but the include paths
are no longer correct.

Well, there you have it; just add the path where Python.h is located.
That’s a quick 'n dirty solution. Hope you didn’t take any offense about
the stupid questions (and the even more stupid solution ;)), I just had
to ask. I think I’m out of ideas, if you don’t simply change the
include- statements in the source to match where they are… Which would
be my way of fixing it.

Hope you find a better way to fix this, cheers
Mattias

Philip
Check the definition of PYTHON_CPPFLAGS in
gnuradio-core/src/lib/swig/Makefile.

Does it point somewhere reasonable? I assume you’re cross-compiling.
You’ll need to provide suitable paths on the configure command line
since we
can’t figure it out by running the BUILD system python.

./configure PYTHON_CPPFLAGS= PYTHON_LDFLAGS= …

See config/gr_python.m4 for the details.

Eric