Still problems building gr 3.4.2 / Debian

Hi,

After compiling and installing sdcc2.9 from source this problem seems to
be
solved, but now building gr 3.4.2 on a Debian / Jessie (testing) AMD64
machine gives right after confirming the sdcc version another error. It
says
that it does not find libusb, but in fact the packages are installed,
and gr
3.7 uses them just fine.

Any ideas what the reason could be?

Ralph A. Schmid
Mondstr. 10
90762 Frth
+49-171-3631223
[email protected]
http://www.bclog.de/

On Fri, Aug 2, 2013 at 6:27 AM, Ralph A. Schmid, dk5ras
[email protected] wrote:

After compiling and installing sdcc2.9 from source this problem seems to be
solved, but now building gr 3.4.2 on a Debian / Jessie (testing) AMD64
machine gives right after confirming the sdcc version another error. It says
that it does not find libusb, but in fact the packages are installed, and gr
3.7 uses them just fine.

Unless you have a desire run your own FX2 microcontroller code, I
suggest not building the USRP1 firmware and remove the sdcc
requirement from the build. Also, try forcing the use of libusb-1.0.
The older version may be removed in newer distributions.

./configure --with-fusb-tech=libusb1

-TT

Hi,

Unless you have a desire run your own FX2 microcontroller code, I suggest

Never! I’m not a software guy, even not with good old 8051 :slight_smile:

not building the USRP1 firmware and remove the sdcc requirement from the

This will not break USRP1 usability? In fact the only thing I want to
get
running is OpenBTS with the USRP1.

build. Also, try forcing the use of libusb-1.0.
The older version may be removed in newer distributions.

./configure --with-fusb-tech=libusb1

I will give this a try, thank you very much!

-TT

Ralph.

On Fri, Aug 2, 2013 at 10:02 AM, Ralph A. Schmid, dk5ras
[email protected] wrote:

not building the USRP1 firmware and remove the sdcc requirement from the

This will not break USRP1 usability? In fact the only thing I want to get
running is OpenBTS with the USRP1.

You can use the current UHD FX2 firmware (IHX file), which has
remained mostly unchanged since the beginning of the century. OpenBTS
only needs the modified FPGA firmware.

-TT

./configure --with-fusb-tech=libusb1

./configure --with-fusb-tech=libusb-1.0 does the job!

-TT

TNX!!!

Ralph.

Hi,

./configure --with-fusb-tech=libusb-1.0 does the job!

So far, so good, configure runs without errors and announces the
expected
five parts
config
gruel
gnuradio-core
usrp
gr-usrp
to be built, but a make gives me this error:

qa_gri_mmse_fir_interpolator_cc.cc: In member function ‘void
qa_gri_mmse_fir_interpolator_cc::t2_body()’:
qa_gri_mmse_fir_interpolator_cc.cc:96:9: error: ‘intptr_t’ was not
declared
in this scope
qa_gri_mmse_fir_interpolator_cc.cc:96:19: error: expected ‘)’ before
‘float_input’
qa_gri_mmse_fir_interpolator_cc.cc:97:60: error: expected ‘)’ before ‘;’
token
make[9]: *** [qa_gri_mmse_fir_interpolator_cc.lo] Error 1
make[9]: Leaving directory
/home/ras/gnuradio-3.4.2/gnuradio-core/src/lib/filter' make[8]: *** [all] Error 2 make[8]: Leaving directory/home/ras/gnuradio-3.4.2/gnuradio-core/src/lib/filter’
make[7]: *** [all-recursive] Error 1
make[7]: Leaving directory
/home/ras/gnuradio-3.4.2/gnuradio-core/src/lib' make[6]: *** [all] Error 2 make[6]: Leaving directory/home/ras/gnuradio-3.4.2/gnuradio-core/src/lib’
make[5]: *** [all-recursive] Error 1
make[5]: Leaving directory /home/ras/gnuradio-3.4.2/gnuradio-core/src' make[4]: *** [all] Error 2 make[4]: Leaving directory/home/ras/gnuradio-3.4.2/gnuradio-core/src’
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory /home/ras/gnuradio-3.4.2/gnuradio-core' make[2]: *** [all] Error 2 make[2]: Leaving directory/home/ras/gnuradio-3.4.2/gnuradio-core’
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/ras/gnuradio-3.4.2’
make: *** [all] Error 2
ras@dk5ras:~/gnuradio-3.4.2$

I uninstalled gnuradio 3.7 before that, not knowing if this may make a
difference or not.

With best regards

Ralph.

Try this patch.

https://github.com/ttsou/gnuradio/commit/22a461fc094

The include requirement was introduced with one of the newer GCC
versions.

OK, so maybe on my Kubuntu 12.04 LTS this was not an issue, due to older
GCC, I will check it, thanks a lot!

Ralph.

On Fri, Aug 2, 2013 at 1:46 PM, Ralph A. Schmid, dk5ras
[email protected] wrote:

qa_gri_mmse_fir_interpolator_cc.cc: In member function ‘void
qa_gri_mmse_fir_interpolator_cc::t2_body()’:
qa_gri_mmse_fir_interpolator_cc.cc:96:9: error: ‘intptr_t’ was not declared
in this scope
qa_gri_mmse_fir_interpolator_cc.cc:96:19: error: expected ‘)’ before
‘float_input’
qa_gri_mmse_fir_interpolator_cc.cc:97:60: error: expected ‘)’ before ‘;’
token

Try this patch.

https://github.com/ttsou/gnuradio/commit/22a461fc094

The include requirement was introduced with one of the newer GCC
versions.

-TT

./configure --with-fusb-tech=libusb1

Still the message “Unable to find dependency libusb.” appears.

Ralph.

Now I get further, but here I get stuck:

make[6]: Leaving directory
/home/ras/gnuradio-3.4.2/usrp/firmware/src/common' Making all in usrp2 make[6]: Entering directory/home/ras/gnuradio-3.4.2/usrp/firmware/src/usrp2’
sdcc -mmcs51 --no-xinit-opt --code-loc 0x0000 --code-size 0x1800 –
xram-loc 0x1800 --xram-size 0x0800 -Wl ‘-b USBDESCSEG = 0xE000’ -L
…/…/lib libfx2.lib -o eeprom_boot.ihx eeprom_boot.rel eeprom_init.rel
_startup.rel
sh: 1: aslink: not found
make[6]: *** [eeprom_boot.ihx] Error 1
make[6]: Leaving directory
/home/ras/gnuradio-3.4.2/usrp/firmware/src/usrp2' make[5]: *** [all-recursive] Error 1 make[5]: Leaving directory/home/ras/gnuradio-3.4.2/usrp/firmware/src’
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory /home/ras/gnuradio-3.4.2/usrp/firmware' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory/home/ras/gnuradio-3.4.2/usrp’
make[2]: *** [all] Error 2
make[2]: Leaving directory /home/ras/gnuradio-3.4.2/usrp' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory/home/ras/gnuradio-3.4.2’
make: *** [all] Error 2
ras@dk5ras:~/gnuradio-3.4.2$

Ralph.

On Fri, Aug 2, 2013 at 5:09 PM, Tom T. [email protected] wrote:

That’s the very old USRP2 driver - disable it. Disable volk too
(multiple dependencies) since you won’t be using it anyways.

‘–disable-volk’ and ‘–disable-usrp2’

I spoke too soon. That’s not a usrp2 error (though usrp2 should be
disabled anyways). You can disable the firmware build for the USRP1 by
removing it from the Makefile.

https://github.com/ttsou/gnuradio/commit/7881cb54af7

-TT

I already have sent an email, but it seems lost - or it will arrive
late,
then sorry for the double.

After applying the patch, make clean, ./configure with all the options
(of
course without USRP2 and without volk) and make still the same error.

Seems to be another issue…

Ralph.

On Fri, Aug 2, 2013 at 5:13 PM, Ralph A. Schmid [email protected]
wrote:

make[6]: Leaving directory
/home/ras/gnuradio-3.4.2/usrp/firmware/src/common' Making all in usrp2 make[6]: Entering directory /home/ras/gnuradio-3.4.2/usrp/firmware/src/usrp2’
sdcc -mmcs51 --no-xinit-opt --code-loc 0x0000 --code-size 0x1800 –
xram-loc 0x1800 --xram-size 0x0800 -Wl ‘-b USBDESCSEG = 0xE000’ -L
…/…/lib libfx2.lib -o eeprom_boot.ihx eeprom_boot.rel eeprom_init.rel

That’s the very old USRP2 driver - disable it. Disable volk too
(multiple dependencies) since you won’t be using it anyways.

‘–disable-volk’ and ‘–disable-usrp2’

-TT

I already have sent an email, but it seems lost - or it will arrive
late,
then sorry for the double.

After applying the patch, make clean, ./configure with all the options
(of
course without USRP2 and without volk) and make still the same error.

Seems to be another issue…

Ralph.

OK,
volk and usrp2 are disabled anyway, then I did the patches, make
clean, configure with all options, make, and get this one:

test -f basename '_startup.a51' || ln -s ‘_startup.a51’ .
test -f …/common/basename '_startup.a51' -o
! -f dirname '_startup.a51'/…/common/basename '_startup.a51'
|| ln -s dirname '_startup.a51'/…/common/basename '_startup.a51' …/common/basename '_startup.a51'
sdas8051 -plosgff basename '_startup.a51'
sdcc -mmcs51 --no-xinit-opt --code-loc 0x0000 --code-size 0x1800 –
xram-loc 0x1800 --xram-size 0x0800 -Wl ‘-b USBDESCSEG = 0xE000’ -L
…/…/lib libfx2.lib -o eeprom_boot.ihx eeprom_boot.rel eeprom_init.rel
_startup.rel
sh: 1: aslink: not found
make[6]: *** [eeprom_boot.ihx] Error 1
make[6]: Leaving directory
/home/ras/gnuradio-3.4.2/usrp/firmware/src/usrp2' make[5]: *** [all-recursive] Error 1 make[5]: Leaving directory/home/ras/gnuradio-3.4.2/usrp/firmware/src’
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory /home/ras/gnuradio-3.4.2/usrp/firmware' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory/home/ras/gnuradio-3.4.2/usrp’
make[2]: *** [all] Error 2
make[2]: Leaving directory /home/ras/gnuradio-3.4.2/usrp' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory/home/ras/gnuradio-3.4.2’
make: *** [all] Error 2
ras@dk5ras:~/gnuradio-3.4.2$

Not so easy :slight_smile:

Thank you vor your assistance!

Ralph.

I already have sent an email, but it seems lost - or it will arrive
late,
then sorry for the double.

After applying the patch, make clean, ./configure with all the options
(of
course without USRP2 and without volk) and make still the same error.

Seems to be another issue…

Ralph.

On Fri, Aug 2, 2013 at 9:27 PM, Ralph A. Schmid [email protected]
wrote:

make[5]: Leaving directory
/home/ras/gnuradio-3.4.2/usrp/firmware/src' make[4]: *** [all-recursive] Error 1 make[4]: Leaving directory /home/ras/gnuradio-3.4.2/usrp/firmware’
make[3]: *** [all-recursive] Error 1

Did you rerun bootstrap? The idea is to avoid building the firmware
entirely. If the build enters the ‘usrp/firmware’ directly, then
something didn’t go right.

-TT

Bootstrap gives this error:

ras@dk5ras:~/gnuradio-3.4.2$ ./bootstrap
configure.ac:24: warning: AM_INIT_AUTOMAKE: two- and three-
arguments forms are deprecated. For more info, see:
configure.ac:24:

AM_005fINIT_005fAUTOMAKE-invocation
python: can’t open file ‘gen/volk_register.py’: [Errno 2] No such file
or
directory
mv: cannot stat `gen/lib/Makefile.am’: No such file or directory
ras@dk5ras:~/gnuradio-3.4.2$

After that a make brings up this:

make all-am
make[5]: Entering directory /home/ras/gnuradio-3.4.2/gr-usrp/apps' /bin/bash ../../libtool --tag=CXX --mode=link g++ -g -O2 -Wall - Woverloaded-virtual -pthread -o usrp_rx_cfile usrp_rx_cfile.o /home/ras/gnuradio-3.4.2/gnuradio-core/src/lib/libgnuradio-core.la /home/ras/gnuradio-3.4.2/usrp/host/lib/libusrp.la ../../gr- usrp/src/libgnuradio-usrp.la -L/usr/lib -lboost_program_options - lboost_filesystem -lltdl libtool: link: g++ -g -O2 -Wall -Woverloaded-virtual -pthread -o .libs/usrp_rx_cfile usrp_rx_cfile.o /home/ras/gnuradio-3.4.2/gnuradio- core/src/lib/.libs/libgnuradio-core.so /home/ras/gnuradio-3.4.2/usrp/host/lib/.libs/libusrp.so ../../gr- usrp/src/.libs/libgnuradio-usrp.so -L/usr/lib -lboost_program_options - lboost_filesystem /usr/lib/x86_64-linux-gnu/libltdl.so -pthread -Wl,-rpath -Wl,/usr/local/lib64 /usr/bin/ld: usrp_rx_cfile.o: undefined reference to symbol '_ZN5boost6system15system_categoryEv' /usr/bin/ld: note: '_ZN5boost6system15system_categoryEv' is defined in DSO /usr/lib/libboost_system.so.1.53.0 so try adding it to the linker command line /usr/lib/libboost_system.so.1.53.0: could not read symbols: Invalid operation collect2: error: ld returned 1 exit status make[5]: *** [usrp_rx_cfile] Error 1 make[5]: Leaving directory /home/ras/gnuradio-3.4.2/gr-usrp/apps’
make[4]: *** [all] Error 2
make[4]: Leaving directory /home/ras/gnuradio-3.4.2/gr-usrp/apps' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory /home/ras/gnuradio-3.4.2/gr-usrp’
make[2]: *** [all] Error 2
make[2]: Leaving directory /home/ras/gnuradio-3.4.2/gr-usrp' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory /home/ras/gnuradio-3.4.2’
make: *** [all] Error 2
ras@dk5ras:~/gnuradio-3.4.2$

OK, pulled fresh copy frokm git, no errors with bootstrap, but still
this
one:

/usr/bin/ld: usrp_rx_cfile.o: undefined reference to symbol
‘_ZN5boost6system15system_categoryEv’
/usr/bin/ld: note: ‘_ZN5boost6system15system_categoryEv’ is defined in
DSO
/usr/lib/libboost_system.so.1.53.0 so try adding it to the linker
command
line
/usr/lib/libboost_system.so.1.53.0: could not read symbols: Invalid
operation
collect2: error: ld returned 1 exit status
make[5]: *** [usrp_rx_cfile] Error 1
make[5]: Leaving directory /home/ras/gnuradio-3.4.2/gr-usrp/apps' make[4]: *** [all] Error 2 make[4]: Leaving directory/home/ras/gnuradio-3.4.2/gr-usrp/apps’
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory /home/ras/gnuradio-3.4.2/gr-usrp' make[2]: *** [all] Error 2 make[2]: Leaving directory/home/ras/gnuradio-3.4.2/gr-usrp’
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/ras/gnuradio-3.4.2’
make: *** [all] Error 2
ras@dk5ras:~/gnuradio-3.4.2$

Now I will go to bed, maybe new day, new luck :slight_smile:

Thanks a lot for your patience!!

Ralph.

I already have sent an email, but it seems lost - or it will arrive
late,
then sorry for the double.

After applying the patch, make clean, ./configure with all the options
(of
course without USRP2 and without volk) and make still the same error.

Seems to be another issue…

Ralph.