Thanks Andrew.  I actually am doing an RFNoC cross-compile, so the best of both 
painful worlds.
 
I noticed that I was referencing the folder e300 in some of my commands and 
E310 in others, so that was a big problem.  I blew away both of those 
directories and started over fresh to make sure I wouldn't have those issues 
anymore.  I also noticed that if I ran cmake-gui, gnuradio wasn't pointing to 
the newly build UHD, but was pointing to the one in the cross-compile.  I added 
the CMAKE command flags mentioned in one of the knowledge-bases and now it 
points to the proper location for UHD libraries.
 
Sadly, I can't get past the GR build now due to weird errors that seem to have 
something to do with the cross-compile and recent commits.  If I work off of 
the head, I get errors with the 
gnuradio-runtime/lib/single_threaded_scheduler.cc file complaining about an 
"overload*" operator.
 
If I start stepping back, I start to get them time_spec errors.
Scanning dependencies of target _uhd_swig
[ 56%] Building CXX object 
gr-uhd/swig/CMakeFiles/_uhd_swig.dir/uhd_swigPYTHON_wrap.cxx.o
/opt/gnuradio/e300/src/gnuradio/build-arm/gr-uhd/swig/uhd_swigPYTHON_wrap.cxx: 
In function 'PyObject* _wrap_time_spec_t_get_system_time(PyObject*, PyObject*)':
/opt/gnuradio/e300/src/gnuradio/build-arm/gr-uhd/swig/uhd_swigPYTHON_wrap.cxx:20502:34:
 error: 'get_system_time' is not a member of 'uhd::time_spec_t'
 result = uhd::time_spec_t::get_system_time();
 
 
It feels like I need to use the head of GR, but that something in the 
cross-compile isn't playing nice with the single_threaded_scheduler.cc operator 
overload.  It's never easy...
 
 
--------- Original Message --------- Subject: Re: [USRP-users] E310 
cross-compile issue
From: "Andrew Danowitz" <and...@whitefoxdefense.com>
Date: 9/10/18 12:35 pm
To: "Jason Matusiak" <ja...@gardettoengineering.com>
Cc: "Ettus Mail List" <usrp-users@lists.ettus.com>

 I've never gotten this error on a cross-compile build, but I have gotten it on 
an rfnoc build. In my case, the linker was finding headers from a system 
install of gnuradio and trying to use those instead of the fresh ones generated 
by make. I might uninstall any repository installs of gnuradio or temporarily 
muck with some environment variables so make only finds your local, up-to-date 
header files.

 On Mon, Sep 10, 2018 at 4:51 AM, Jason Matusiak via USRP-users 
<usrp-users@lists.ettus.com> wrote:
  OK, I am having a weird cross-compile issue still.  I am using the latest 
cross-compile files from Philip, but I am getting a weird error that has me 
stumped.
 
Here are the steps I took, maybe I hosed something up along the way.  I am 
worried about:
1 - How I setup the cmakes
2 - enabling RFNOC properly
3 - that I have proper versions of things (I went and rolled back gnuradio to 
v3.7.12.0 due to it having error, maybe I need to do that for gr-ettus as well?)
 
Here were my steps followed by the error at the end:
997 mkdir /opt/gnuradio/E310
998 sh ./oecore-x86_64-armv7ahf-neon-toolchain-nodistro.0.sh 
999 cd /opt/gnuradio/E310/
1004 unset LD_LIBRARY_PATH
1005 source ./environment-setup-armv7ahf-neon-oe-linux-gnueabi 
1006 echo $CC
1007 mkdir src
1008 cd src/
1009 git clone https://github.com/EttusResearch/uhd.git
1010 cd uhd/host && mkdir build && cd build
1011 cmake -DCMAKE_TOOLCHAIN_FILE=../host/cmake/Toolchains/oe-sdk_cross.cmake 
-DCMAKE_INSTALL_PREFIX=/usr -DENABLE_E300=ON -DENABLE_RFNOC=ON ..
1013 make -j8
1014 make install DESTDIR=/opt/gnuradio/E310
1015 cd ../../
1016 cd ..
1018 git clone --recursive https://github.com/gnuradio/gnuradio.git
1020 cd gnuradio/
1026 git checkout v3.7.12.0
1027 mkdir build
1028 cd build/
1029 cmake -Wno-dev 
-DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchains/oe-sdk_cross.cmake 
-DCMAKE_INSTALL_PREFIX=/usr -DENABLE_GR_VOCODER=OFF -DENABLE_GR_ATSC=OFF 
-DENABLE_GR_DTV=OFF -DENABLE_DOXYGEN=OFF ../
1030 make -j8
1031 make -j4 install DESTDIR=/opt/gnuradio/E310
1032 cd ../../
1034 git clone https://github.com/EttusResearch/gr-ettus.git
1035 cd gr-ettus/
1037 mkdir build
1038 cd build && cmake -Wno-dev 
-DCMAKE_TOOLCHAIN_FILE=../../uhd/host/cmake/Toolchains/oe-sdk_cross.cmake 
-DCMAKE_INSTALL_PREFIX=/usr -DENABLE_DOXYGEN=OFF 
-DUHD_DIR=/opt/gnuradio/e300/usr/lib/cmake/uhd 
-DUHD_INCLUDE_DIRS=/opt/gnuradio/e300/usr/include 
-DUHD_LIBRARIES=/opt/gnuradio/e300/usr/lib ../
1039 make -j4
 
 And then I get the build error for gr-ettus:
 [ 90%] Building CXX object 
swig/CMakeFiles/_ettus_swig.dir/ettus_swigPYTHON_wrap.cxx.o
[ 92%] Linking CXX executable test-ettus
[ 92%] Built target test-ettus
/opt/gnuradio/E310/src/gr-ettus/build/swig/ettus_swigPYTHON_wrap.cxx: In 
function 'PyObject* _wrap_time_spec_t_get_system_time(PyObject*, PyObject*)':
/opt/gnuradio/E310/src/gr-ettus/build/swig/ettus_swigPYTHON_wrap.cxx:18100:34: 
error: 'get_system_time' is not a member of 'uhd::time_spec_t'
result = uhd::time_spec_t::get_system_time();
^~~~~~~~~~~~~~~
make[2]: *** [swig/CMakeFiles/_ettus_swig.dir/ettus_swigPYTHON_wrap.cxx.o] 
Error 1
make[1]: *** [swig/CMakeFiles/_ettus_swig.dir/all] Error 2
make: *** [all] Error 2
  
 
 
Philip thought that maybe I was using too old of a version of UHD, but I am 
using the head (hash 6013a), as well as the head of gr-ettus (hash 4ef12).  It 
seems like there is a mismatch somewhere, but I am not sure how to resolve 
this.  Could there be a problem with the cross-compile tools not being able to 
build things?



_______________________________________________
 USRP-users mailing list
 USRP-users@lists.ettus.com
 http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
  


 
Information contained, linked, or attached to this email and all verbal 
communications from WhiteFox Defense to your entity in the prior 30 days 
constitute proprietary and confidential information unless otherwise indicated 
and is therefore subject to obligations in any executed confidentiality 
agreements. Further, this email is intended solely for the use of the 
individual or entity to whom they are addressed. If you are not the intended 
recipient and this message has been addressed to you in error, please promptly 
notify i...@whitefoxdefense.com and destroy all copies of the message and any 
attachments. This email and attachments may contain technical data as defined 
in the International Traffic In Arms Regulations (ITAR) 22 CFR 120.10 or the 
Export Administration Regulations (EAR) 15 CFR Parts 730 - 780.  Export of this 
material may be controlled by these regulations and may not be exported or 
transferred to non-U.S. persons without prior written approval from the U.S. 
government.
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to