Error of make for gnuradio of next branch - unable to find 'pmt_swig.i'

Hi,

I met such error when I try to make the gnuradio from the source code of
git://gnuradio.org/jblum.git
My swig is already the newest version 2.0.4 and I don’t think this
error
has related to the swig version.

-module gnuradio_core_general -o python/gnuradio_core_general.cc -oh
python/gnuradio_core_general.h gnuradio_core_general.i
~/gnuradio/gnuradio-core/src/lib/runtime/gr_tags.i:26: Error: Unable to
find ‘pmt_swig.i’

Does any have some clues? Thanks,

Alex,
Dreams can come true just believe.

On 11/22/2011 05:41 PM, Alex Z. wrote:

python/gnuradio_core_general.h gnuradio_core_general.i
~/gnuradio/gnuradio-core/src/lib/runtime/gr_tags.i:26: Error: Unable to
find ‘pmt_swig.i’

Does any have some clues? Thanks,

Did you build the branch with cmake?
The autotools build will not work.

-josh

I just use the ./bootstrap and then ./configure and make.
Previously, I used the cmake_gui to configure/generate but then failed
to
make due to some not foudn reference to boost files. Even I changed the
parameter of BOOST_ROOT to the directory of my boost directory, it still
fails.

Currently, if I switch the branch to master, the make is successful.

On Tue, Nov 22, 2011 at 7:51 PM, Josh B. [email protected] wrote:

Did you build the branch with cmake?
The autotools build will not work.

-josh

Alex,
Dreams can come true – just believe.

On 11/22/2011 05:59 PM, Alex Z. wrote:

I just use the ./bootstrap and then ./configure and make.
Previously, I used the cmake_gui to configure/generate but then failed to
make due to some not foudn reference to boost files. Even I changed the
parameter of BOOST_ROOT to the directory of my boost directory, it still
fails.

Thats odd. Can you post the verbose?

Usually cmake finds boost automatically unless its a “custom” boost
install. What OS do you have? Did you install boost from the OS’s
package manager?

Also, I may suggest that you manually set BOOST_LIBRARYDIR and
BOOST_INCLUDEDIR

-Josh

On Tue, Nov 22, 2011 at 8:41 PM, Alex Z. [email protected]
wrote:

python/gnuradio_core_general.h gnuradio_core_general.i

That doesn’t seem like a swig error, but just know that GNU Radio won’t
build with SWIG 2.0. We only build with the 1.3 branch, so make sure you
have that.

Tom

My OS:

lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 11.10
Release: 11.10
Codename: oneiric


I installed all the dependencies (including boost) just using the
command
for ubuntu 11.04:

sudo apt-get -y install git-core autoconf automake libtool g++
python-dev swig
pkg-config libboost-all-dev libfftw3-dev libcppunit-dev libgsl0-dev
libusb-dev sdcc libsdl1.2-dev python-wxgtk2.8 python-numpy
python-cheetah python-lxml doxygen python-qt4 python-qwt5-qt4 libxi-dev

libqt4-opengl-dev libqwt5-qt4-dev libfontconfig1-dev libxrender-dev

I will add the verbose log when I tried again.

On Tue, Nov 22, 2011 at 8:09 PM, Josh B. [email protected] wrote:

Thats odd. Can you post the verbose?

Usually cmake finds boost automatically unless its a “custom” boost
install. What OS do you have? Did you install boost from the OS’s
package manager?

Also, I may suggest that you manually set BOOST_LIBRARYDIR and
BOOST_INCLUDEDIR

-Josh

Alex,
Dreams can come true – just believe.

On 11/22/2011 06:14 PM, Tom R. wrote:

Alex,
Dreams can come true just believe.

That doesn’t seem like a swig error, but just know that GNU Radio won’t
build with SWIG 2.0. We only build with the 1.3 branch, so make sure you
have that.

The error is because on my “next” branch, I am using pmt_swig in
gnuradio core. However, I have not updated the autotools to add pmt_swig
to the swig search path for gnuradio-core.

-josh

Thanks for the reminder.
However, I met this error when I use the swig 1.3.4. Then I update the
swig
to 2.0.4 as I suspect it is due to the version of swig. I will roll back
the swig and try again.

On Tue, Nov 22, 2011 at 8:14 PM, Tom R. [email protected]
wrote:

Alex,

Alex,
Dreams can come true just believe.

This is my error of make if I use the cmake-gui to configure and
generate
firstly.

xxx@ubuntu:~/build$ sudo make
[sudo] password for xxx:
Sorry, try again.
[sudo] password for xxx:
[ 1%] Built target volk
[ 1%] Built target test_all
[ 2%] Built target volk_profile
Scanning dependencies of target gruel
[ 2%] Building CXX object
gruel/src/lib/CMakeFiles/gruel.dir/msg/msg_accepter.cc.o
[ 2%] Building CXX object
gruel/src/lib/CMakeFiles/gruel.dir/msg/msg_accepter_msgq.cc.o
[ 2%] Building CXX object
gruel/src/lib/CMakeFiles/gruel.dir/msg/msg_queue.cc.o
[ 3%] Building CXX object
gruel/src/lib/CMakeFiles/gruel.dir/pmt/pmt_unv.cc.o
[ 3%] Building CXX object
gruel/src/lib/CMakeFiles/gruel.dir/pmt/pmt.cc.o
[ 3%] Building CXX object
gruel/src/lib/CMakeFiles/gruel.dir/pmt/pmt_io.cc.o
[ 3%] Building CXX object
gruel/src/lib/CMakeFiles/gruel.dir/pmt/pmt_serialize.cc.o
Linking CXX shared library libgruel-3.5.0rc0.so
[ 3%] Built target gruel
Scanning dependencies of target test_gruel
[ 3%] Building CXX object
gruel/src/lib/CMakeFiles/test_gruel.dir/pmt/qa_pmt_unv.cc.o
[ 4%] Building CXX object
gruel/src/lib/CMakeFiles/test_gruel.dir/pmt/qa_pmt_prims.cc.o
Linking CXX executable test_gruel
CMakeFiles/test_gruel.dir/test_gruel.cc.o: In function
boost::filesystem3::operator/(boost::filesystem3::path const&, boost::filesystem3::path const&)': test_gruel.cc:(.text._ZN5boost11filesystem3dvERKNS0_4pathES3_[boost::filesystem3::operator/(boost::filesystem3::path const&, boost::filesystem3::path const&)]+0x29): undefined reference to boost::filesystem3::path::operator/=(boost::filesystem3::path const&)’
CMakeFiles/test_gruel.dir/test_gruel.cc.o: In function main': test_gruel.cc:(.text.startup+0x54): undefined reference to boost::filesystem3::detail::current_path(boost::system::error_code*)’
test_gruel.cc:(.text.startup+0x9a): undefined reference to
boost::filesystem3::detail::status(boost::filesystem3::path const&, boost::system::error_code*)' test_gruel.cc:(.text.startup+0xb6): undefined reference to boost::filesystem3::detail::create_directory(boost::filesystem3::path
const&, boost::system::error_code*)’
CMakeFiles/test_gruel.dir/test_gruel.cc.o: In function
_GLOBAL__sub_I_main': test_gruel.cc:(.text.startup+0x35c): undefined reference to boost::system::generic_category()’
test_gruel.cc:(.text.startup+0x366): undefined reference to
boost::system::generic_category()' test_gruel.cc:(.text.startup+0x370): undefined reference to boost::system::system_category()’
collect2: ld returned 1 exit status
make[2]: *** [gruel/src/lib/test_gruel] Error 1
make[1]: *** [gruel/src/lib/CMakeFiles/test_gruel.dir/all] Error 2
make: *** [all] Error 2

On Tue, Nov 22, 2011 at 8:09 PM, Josh B. [email protected] wrote:

Thats odd. Can you post the verbose?

Usually cmake finds boost automatically unless its a “custom” boost
install. What OS do you have? Did you install boost from the OS’s
package manager?

Also, I may suggest that you manually set BOOST_LIBRARYDIR and
BOOST_INCLUDEDIR

-Josh

Alex,
Dreams can come true – just believe.

On 11/22/2011 06:38 PM, Alex Z. wrote:

This is my error of make if I use the cmake-gui to configure and generate
firstly.

My confusion. I thought you said the error was during configure, not
make.

So, it looks like the gruel unit tests must be linked to boost. This is
interesting because I do not see the issue on my Ubuntu 10.11, and boost
is indirectly linked via gruel. (I head indirectly linking may be a
thing of the past…)

Can you try this diff, where I add boost libraries to the test
application: jblum@wiggle:~/src/gnuradio/gruel$ git diff .diff --git a/gruel/src/lib/CMakeL - Pastebin.com

-josh

Just notice someone has asked the same question, but no solution is
found
in the question thread.
http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/2011-June/001420.html

On Tue, Nov 22, 2011 at 8:38 PM, Alex Z. [email protected]
wrote:

Scanning dependencies of target gruel
gruel/src/lib/CMakeFiles/gruel.dir/pmt/pmt_io.cc.o
CMakeFiles/test_gruel.dir/test_gruel.cc.o: In function
boost::system::error_code*)’
`boost::system::system_category()’

On 11/22/2011 05:59 PM, Alex Z. wrote:
Usually cmake finds boost automatically unless its a “custom” boost

Alex,
Dreams can come true – just believe.

Alex,
Dreams can come true – just believe.

I am newbie of this set of code.

To get your code of next branch, I am not sure i should git clone from
this
git://gnuradio.org/jblum.git
or I need to follow this?

git clone gnuradio.git - GNU Radio gnuradio
cd gnuradio
git checkout next

The diff you did is comparing your next branch code with its previous
version or other branch?

On Tue, Nov 22, 2011 at 8:44 PM, Josh B. [email protected] wrote:

is indirectly linked via gruel. (I head indirectly linking may be a

Sorry, try again.
gruel/src/lib/CMakeFiles/gruel.dir/msg/msg_queue.cc.o
Scanning dependencies of target test_gruel
const&, boost::filesystem3::path const&)]+0x29): undefined reference to
CMakeFiles/test_gruel.dir/test_gruel.cc.o: In function
make: *** [all] Error 2

make due to some not foudn reference to boost files. Even I changed the

Also, I may suggest that you manually set BOOST_LIBRARYDIR and
BOOST_INCLUDEDIR

-Josh

Alex,
Dreams can come true – just believe.

Thanks.
I edit the gruel/src/lib/CMakeLists.txt by adding the ${Boost_LIBRARIES}
as
your provided diff. But the same failure of undefined reference to boost
is
still there.
I am wondering if I install the boost correctly. How can I display the
$Boost_LIBRARIES when making?
Also I see the same error in
Boost system library missing, compiling 1.9.8 on Ubuntu - The Battle for Wesnoth Forums, in this tips they
indicate that the versions of their boost include and lib are different,
but I cannot see such info.

On Tue, Nov 22, 2011 at 10:22 PM, Josh B. [email protected] wrote:

git clone gnuradio.git - GNU Radio gnuradio

Scanning dependencies of target gruel
[ 3%] Building CXX object
Linking CXX executable test_gruel
`boost::filesystem3::detail::current_path(boost::system::error_code*)’
test_gruel.cc:(.text.startup+0x366): undefined reference to

still

BOOST_INCLUDEDIR

Alex,
Dreams can come true – just believe.

On 11/22/2011 07:14 PM, Alex Z. wrote:

The diff you did is comparing your next branch code with its previous
version or other branch?

For the purposes of fixing this bug, either branch may be used. Just git
apply <file.diff> or edit the code manually. Read the diff, its just a
simple 1 line change.

-josh

This is the modified file:

include(GrTest)
set(GR_TEST_TARGET_DEPS gruel)
list(APPEND test_gruel_sources test_gruel.cc)
add_executable(test_gruel ${test_gruel_sources})
target_link_libraries(test_gruel gruel ${CPPUNIT_LIBRARIES}
${Boost_LIBRARIES})
GR_ADD_TEST(gruel-test test_gruel)

On Tue, Nov 22, 2011 at 10:47 PM, Alex Z.
[email protected]wrote:

git://gnuradio.org/jblum.git
For the purposes of fixing this bug, either branch may be used. Just git

This is my error of make if I use the cmake-gui to configure and
thing of the past…)
[sudo] password for xxx:
[ 3%] Building CXX object
[ 3%] Building CXX object
const&, boost::filesystem3::path const&)]+0x29): undefined reference
`boost::filesystem3::detail::create_directory(boost::filesystem3::path
make[2]: *** [gruel/src/lib/test_gruel] Error 1

Previously, I used the cmake_gui to configure/generate but then

Alex,
Dreams can come true – just believe.

Alex,
Dreams can come true – just believe.