[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Discuss-gnuradio] CMake build problem
From: |
matt . nottingham |
Subject: |
Re: [Discuss-gnuradio] CMake build problem |
Date: |
Thu, 26 Apr 2012 19:49:41 +0100 |
Tom Rondeau writes:
> On Thu, Apr 26, 2012 at 7:30 AM, <address@hidden> wrote:
> >
> > Hi,
> >
> > I'm running debian unstable on a AMD64 platform and am running into a
> > problem which starts right at the top of the build process for a newly
> > checkout gnuradio version from git.
> >
> > Below is output from running cmake:
> >
> > [snip]
> > -- Performing Test HAVE_WARN_ALL
> > -- Performing Test HAVE_WARN_ALL - Success
> > -- Performing Test HAVE_WARN_NO_UNINITIALIZED
> > -- Performing Test HAVE_WARN_NO_UNINITIALIZED - Success
> > -- Found PythonLibs:
> > optimized;/usr/lib/python3.2/config/libpython3.2.so;debug;/usr/lib/python3.2/config/libpython3.2.so
> > (found version "2.7.3rc2")
> > -- Found SWIG: /usr/bin/swig2.0 (found version "2.0.4")
> > [snip]
> >
> > So it found that /usr/bin/python is version 2.7.3rc2, but it decides
> > to use version 3.2 to link against. This makes the build process
> > rather sad later on! (Lots of link failures)
> >
> > To get around this I changed in CMakeLists.txt
> >
> > find_package(PythonLibs)
> >
> > to be
> >
> > find_package(PythonLibs 2.7.3)
> >
> > But obviously that'll only work for people running 2.7.3! (I've not
> > played with cmake before now, so there might be a simple way to fix
> > it)
> >
> > I'm running cmake version 2.8.7.
>
> Yes, GNU Radio does not work with Python 3, yet. We will have to make
> sure it checks that the Python version is less than 3.
Getting it to try and link with the default version of python on the
system would also be good.
>
> > However the build process goes further this time, but now breaks with:
> >
> > [ 49%] Built target _runtime_swig_doc_tag
> > [ 49%] Generating doxygen xml for runtime_swig_doc docs
> > [ 49%] Generating runtime_swig_doc.i
> > [ 49%] Generating doxygen xml for general_swig_doc docs
> > [ 49%] Generating general_swig_doc.i
> > [ 49%] Generating doxygen xml for gengen_swig_doc docs
> > [ 49%] Generating gengen_swig_doc.i
[snip]
> > raise member()
> > doxyxml.base.Duplicate
> > make[2]: *** [gnuradio-core/src/lib/swig/gengen_swig_doc.i] Error 1
> > make[1]: ***
> > [gnuradio-core/src/lib/swig/CMakeFiles/_gnuradio_core_filter.dir/all]
> > Error 2
> > make: *** [all] Error 2
> >
> >
> >
> > Which I don't know where to start to fix! However I can tell you that
> > the file its looking for, /home/...../swig/gengen_swig_doc.i doesn't
> > exist, but I don't know what should have created it.
> >
> >
> > Thanks,
> >
> > Matt
>
> I'm assuming you are running a parallel make? Try just running "make"
> with no options and see if that works. This looks like a bug that
> we've had for a while that only shows up on occasion and when running
> large parallel makes. It generally goes away when you run make again.
> We thought we had squashed this one, but it seems to becoming more of
> a problem again.
>
> In the future, you can try something like "make -j8 -k". That will
> finish everything it can, even if there are errors with the doc
> generation. You can then run "make" after that to capture the rest of
> it.
>
> Tom
Yes, I'd been doing a make -j. Rerunning with just 'make' doesn't
appear to work - it fell over agaon in the same place. So I created a
new build directory, ran cmake in the new directory and then make
(with no -j) and it still fails with the above error for
gengen_swig_doc.i
Thanks,
Matt