I've attached the command used and the output of cmake. Thanks for your time. Murray
2015-05-09 15:10 GMT+01:00 Tom Rondeau <[email protected]>: > On Fri, May 8, 2015 at 7:57 PM, Murray Thomson <[email protected] > > wrote: > >> Hi, >> >> I've been trying the instructions in the wiki with ubuntu 15.04 and gcc >> 4.8 (4.9 also gave me problems). >> >> I got the following error checking out the android branch from git:// >> git.gnuradio.org/gnuradio.git >> error: The following untracked working tree files would be overwritten by >> checkout: >> volk/CMakeLists.txt >> ....................... >> Aborting >> >> But it worked well with the repo: https://github.com/trondeau/gnuradio/ >> > > > Ok, that should be fixed now. I use the trondeau/gnuradio android branch > as my staging area while working on new stuff. The one on gnuradio's repo > was prior to me rebasing off the latest master, which was before the volk > submodule change. I've just updated gnuradio's repo branch to the latest so > we shouldn't see this problem now. > > > >> >> I also got an error compiling GRAnd. It seems to be related with boost, >> which I cross compiled following the instructions. I've attached the output >> of make, if anyone has the time to have a look at it it would be much >> appreciated. >> >> Thanks, >> Murray >> > > Can you send me the command you used and output of cmake? I'm wondering if > it's picking up a wrong version of Boost. You can force this by passing it > -DBOOST_ROOT=<base of dir when libboost_xxx.a lives in base/lib>. > > Just make sure that PREFIX is set correctly and Boost was installed into > that same PREFIX. > > Tom > > > > >> 2015-05-06 8:29 GMT+01:00 Lin HUANG <[email protected]>: >> >>> Wow, it's so cool! I'll have a try, following your wiki. -Lin >>> >>> 2015-05-06 4:06 GMT+08:00 Tom Rondeau <[email protected]>: >>> >>>> While I have been talking around it for a while, I wanted to better >>>> publicize our work on GNU Radio for Android. We can now build applications >>>> that run GNU Radio flowgraphs on Android (>= 5.0). We build the flowgraph >>>> in C++ and link it through to a Java app for the user interface using the >>>> JNI. I have tried to collect the howtos for getting all of the various >>>> parts up and running here: >>>> >>>> http://gnuradio.org/redmine/projects/gnuradio/wiki/Android >>>> >>>> Last week, we got UHD support working, and I felt this was a big marker >>>> in our progress on the project. To top it off, we now even have ControlPort >>>> support on Android apps, which makes it possible to provide remote control >>>> and run tools like gr-perf-monitorx, from which I'm already finding out new >>>> things about GNU Radio and Android device performance issues. >>>> >>>> There's still a big warning about this being a work in progress, and it >>>> definitely is. However, with the support for all of the various hardware >>>> and tools that we now have, I think we're at a place of usability for a lot >>>> of applications. >>>> >>>> Feel free to ask questions if things in the wiki don't work for you. >>>> I've tried to go through it multiple times and make it as robust as >>>> possible and mostly things should be copy-and-paste. But as things change, >>>> and they do rapidly here, we're likely to continue to need some evolution >>>> of the instructions. >>>> >>>> I will hopefully post some of my simple applications online sometime >>>> soon, as well. >>>> >>>> Tom >>>> >>>> >>>> _______________________________________________ >>>> Discuss-gnuradio mailing list >>>> [email protected] >>>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio >>>> >>>> >>> >>> _______________________________________________ >>> Discuss-gnuradio mailing list >>> [email protected] >>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio >>> >>> >> > > _______________________________________________ > Discuss-gnuradio mailing list > [email protected] > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio > >
user@pc:~/code/gr-grand/build$ echo $PREFIX /opt/grandroid user@pc:~/code/gr-grand/build$ echo $TOOLCHAIN /home/user/code/trgnuradio/gnuradio/cmake/Toolchains/AndroidToolchain.cmake user@pc:~/code/gr-grand/build$ user@pc:~/code/gr-grand/build$ user@pc:~/code/gr-grand/build$ find /opt/grandroid/ -name "libboost*" /opt/grandroid/lib/libboost_unit_test_framework.a /opt/grandroid/lib/libboost_regex.a /opt/grandroid/lib/libboost_thread.a /opt/grandroid/lib/libboost_system.a /opt/grandroid/lib/libboost_prg_exec_monitor.a /opt/grandroid/lib/libboost_program_options.a /opt/grandroid/lib/libboost_atomic.a /opt/grandroid/lib/libboost_filesystem.a /opt/grandroid/lib/libboost_random.a /opt/grandroid/lib/libboost_exception.a /opt/grandroid/lib/libboost_date_time.a /opt/grandroid/lib/libboost_wserialization.a /opt/grandroid/lib/libboost_chrono.a /opt/grandroid/lib/libboost_serialization.a /opt/grandroid/lib/libboost_test_exec_monitor.a user@pc:~/code/gr-grand/build$ user@pc:~/code/gr-grand/build$ user@pc:~/code/gr-grand/build$ cmake -DCMAKE_INSTALL_PREFIX=$PREFIX -DCMAKE_TOOLCHAIN_FILE=$TOOLCHAIN -DPYTHON_EXECUTABLE=/usr/bin/python -DBOOST_ROOT=/opt/grandroid/lib/ ../ -- -->>> Android C Flags: -Wno-psabi --sysroot=/opt/android-toolchain/sysroot -fpic -funwind-tables -finline-limit=64 -fsigned-char -no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -fdata-sections -ffunction-sections -Wa,--noexecstack -- -->>> CMAKE C Flags: -Wno-psabi --sysroot=/opt/android-toolchain/sysroot -fpic -funwind-tables -finline-limit=64 -fsigned-char -no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -fdata-sections -ffunction-sections -Wa,--noexecstack -- -->>> Android C Flags: -Wno-psabi --sysroot=/opt/android-toolchain/sysroot -fpic -funwind-tables -finline-limit=64 -fsigned-char -no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -fdata-sections -ffunction-sections -Wa,--noexecstack -- -->>> CMAKE C Flags: -Wno-psabi --sysroot=/opt/android-toolchain/sysroot -fpic -funwind-tables -finline-limit=64 -fsigned-char -no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -fdata-sections -ffunction-sections -Wa,--noexecstack -Wno-psabi --sysroot=/opt/android-toolchain/sysroot -fpic -funwind-tables -finline-limit=64 -fsigned-char -no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -fdata-sections -ffunction-sections -Wa,--noexecstack -- Build type not specified: defaulting to release. -- Boost version: 1.58.0 -- Found the following Boost libraries: -- filesystem -- system -- Found PkgConfig: /usr/bin/pkg-config (found version "0.28") -- checking for module 'cppunit' -- found cppunit, version 1.13.2 -- Found CPPUNIT: /usr/lib/x86_64-linux-gnu/libcppunit.so;dl -- Found Doxygen: /usr/bin/doxygen (found version "1.8.9.1") Checking for GNU Radio Module: RUNTIME -- checking for module 'gnuradio-runtime' -- package 'gnuradio-runtime' not found * INCLUDES=/opt/grandroid/include * LIBS=/opt/grandroid/lib/libgnuradio-runtime.so -- Found GNURADIO_RUNTIME: /opt/grandroid/lib/libgnuradio-runtime.so GNURADIO_RUNTIME_FOUND = TRUE Checking for GNU Radio Module: VOLK -- checking for module 'volk' -- package 'volk' not found * INCLUDES=/opt/grandroid/include * LIBS=/opt/grandroid/lib/libvolk.so -- Found GNURADIO_VOLK: /opt/grandroid/lib/libvolk.so GNURADIO_VOLK_FOUND = TRUE -- Looking for include file sys/mman.h -- Looking for include file sys/mman.h - found -- Performing Test HAVE_MMAP -- Performing Test HAVE_MMAP - Success -- -- Checking for module SWIG -- Found SWIG version 2.0.12. -- Found SWIG: /usr/bin/swig2.0 -- Could NOT find PythonLibs (missing: PYTHON_LIBRARIES) (found suitable version "2.7.9", minimum required is "2") CMake Warning (dev) at /opt/grandroid/lib/cmake/gnuradio/GrTest.cmake:45 (get_target_property): Policy CMP0026 is not set: Disallow use of the LOCATION target property. Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy command to set the policy and suppress this warning. The LOCATION property should not be read from target "gnuradio-grand". Use the target name directly with add_custom_command, or use the generator expression $<TARGET_FILE>, as appropriate. Call Stack (most recent call first): python/CMakeLists.txt:44 (GR_ADD_TEST) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at /opt/grandroid/lib/cmake/gnuradio/GrTest.cmake:45 (get_target_property): Policy CMP0045 is not set: Error on non-existent target in get_target_property. Run "cmake --help-policy CMP0045" for policy details. Use the cmake_policy command to set the policy and suppress this warning. get_target_property() called with non-existent target "/usr/bin/python". Call Stack (most recent call first): python/CMakeLists.txt:44 (GR_ADD_TEST) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at /opt/grandroid/lib/cmake/gnuradio/GrTest.cmake:45 (get_target_property): Policy CMP0045 is not set: Error on non-existent target in get_target_property. Run "cmake --help-policy CMP0045" for policy details. Use the cmake_policy command to set the policy and suppress this warning. get_target_property() called with non-existent target "/home/user/code/gr-grand/python/qa_accelerometer.py". Call Stack (most recent call first): python/CMakeLists.txt:44 (GR_ADD_TEST) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at /opt/grandroid/lib/cmake/gnuradio/GrTest.cmake:45 (get_target_property): Policy CMP0026 is not set: Disallow use of the LOCATION target property. Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy command to set the policy and suppress this warning. The LOCATION property should not be read from target "gnuradio-grand". Use the target name directly with add_custom_command, or use the generator expression $<TARGET_FILE>, as appropriate. Call Stack (most recent call first): python/CMakeLists.txt:45 (GR_ADD_TEST) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at /opt/grandroid/lib/cmake/gnuradio/GrTest.cmake:45 (get_target_property): Policy CMP0045 is not set: Error on non-existent target in get_target_property. Run "cmake --help-policy CMP0045" for policy details. Use the cmake_policy command to set the policy and suppress this warning. get_target_property() called with non-existent target "/usr/bin/python". Call Stack (most recent call first): python/CMakeLists.txt:45 (GR_ADD_TEST) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at /opt/grandroid/lib/cmake/gnuradio/GrTest.cmake:45 (get_target_property): Policy CMP0045 is not set: Error on non-existent target in get_target_property. Run "cmake --help-policy CMP0045" for policy details. Use the cmake_policy command to set the policy and suppress this warning. get_target_property() called with non-existent target "/home/user/code/gr-grand/python/qa_opensl_source.py". Call Stack (most recent call first): python/CMakeLists.txt:45 (GR_ADD_TEST) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at /opt/grandroid/lib/cmake/gnuradio/GrTest.cmake:45 (get_target_property): Policy CMP0026 is not set: Disallow use of the LOCATION target property. Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy command to set the policy and suppress this warning. The LOCATION property should not be read from target "gnuradio-grand". Use the target name directly with add_custom_command, or use the generator expression $<TARGET_FILE>, as appropriate. Call Stack (most recent call first): python/CMakeLists.txt:46 (GR_ADD_TEST) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at /opt/grandroid/lib/cmake/gnuradio/GrTest.cmake:45 (get_target_property): Policy CMP0045 is not set: Error on non-existent target in get_target_property. Run "cmake --help-policy CMP0045" for policy details. Use the cmake_policy command to set the policy and suppress this warning. get_target_property() called with non-existent target "/usr/bin/python". Call Stack (most recent call first): python/CMakeLists.txt:46 (GR_ADD_TEST) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at /opt/grandroid/lib/cmake/gnuradio/GrTest.cmake:45 (get_target_property): Policy CMP0045 is not set: Error on non-existent target in get_target_property. Run "cmake --help-policy CMP0045" for policy details. Use the cmake_policy command to set the policy and suppress this warning. get_target_property() called with non-existent target "/home/user/code/gr-grand/python/qa_float_array.py". Call Stack (most recent call first): python/CMakeLists.txt:46 (GR_ADD_TEST) This warning is for project developers. Use -Wno-dev to suppress it. -- Configuring done CMake Warning (dev) at lib/CMakeLists.txt:64 (add_dependencies): Policy CMP0046 is not set: Error on non-existent dependency in add_dependencies. Run "cmake --help-policy CMP0046" for policy details. Use the cmake_policy command to set the policy and suppress this warning. The dependency target "gnuradio-runtime_static" of target "gnuradio-grand_static" does not exist. This warning is for project developers. Use -Wno-dev to suppress it. -- Generating done -- Build files have been written to: /home/user/code/gr-grand/build user@pc:~/code/gr-grand/build$ user@pc:~/code/gr-grand/build$ user@pc:~/code/gr-grand/build$ user@pc:~/code/gr-grand/build$ user@pc:~/code/gr-grand/build$ make Scanning dependencies of target gnuradio-grand [ 6%] Building CXX object lib/CMakeFiles/gnuradio-grand.dir/sensor_base.cc.o [ 13%] Building CXX object lib/CMakeFiles/gnuradio-grand.dir/accelerometer_impl.cc.o [ 20%] Building CXX object lib/CMakeFiles/gnuradio-grand.dir/light_sensor_impl.cc.o [ 26%] Building CXX object lib/CMakeFiles/gnuradio-grand.dir/opensl_sink_impl.cc.o [ 33%] Building CXX object lib/CMakeFiles/gnuradio-grand.dir/opensl_source_impl.cc.o [ 40%] Building CXX object lib/CMakeFiles/gnuradio-grand.dir/float_array_impl.cc.o Linking CXX shared library libgnuradio-grand.so CMakeFiles/gnuradio-grand.dir/sensor_base.cc.o:sensor_base.cc:function boost::detail::interruption_checker::interruption_checker(pthread_mutex_t*, pthread_cond_t*): error: undefined reference to 'boost::detail::get_current_thread_data()' CMakeFiles/gnuradio-grand.dir/sensor_base.cc.o:sensor_base.cc:function boost::condition_variable::wait(boost::unique_lock<boost::mutex>&): error: undefined reference to 'boost::this_thread::interruption_point()' CMakeFiles/gnuradio-grand.dir/accelerometer_impl.cc.o:accelerometer_impl.cc:function gr::basic_block::has_msg_port(boost::intrusive_ptr<pmt::pmt_base>): error: undefined reference to 'pmt::eqv(boost::intrusive_ptr<pmt::pmt_base> const&, boost::intrusive_ptr<pmt::pmt_base> const&)' CMakeFiles/gnuradio-grand.dir/accelerometer_impl.cc.o:accelerometer_impl.cc:function gr::basic_block::has_msg_port(boost::intrusive_ptr<pmt::pmt_base>): error: undefined reference to 'pmt::eqv(boost::intrusive_ptr<pmt::pmt_base> const&, boost::intrusive_ptr<pmt::pmt_base> const&)' CMakeFiles/gnuradio-grand.dir/accelerometer_impl.cc.o:accelerometer_impl.cc:function gr::basic_block::has_msg_port(boost::intrusive_ptr<pmt::pmt_base>): error: undefined reference to 'pmt::dict_has_key(boost::intrusive_ptr<pmt::pmt_base> const&, boost::intrusive_ptr<pmt::pmt_base> const&)' CMakeFiles/gnuradio-grand.dir/accelerometer_impl.cc.o:accelerometer_impl.cc:function gr::basic_block::has_msg_handler(boost::intrusive_ptr<pmt::pmt_base>): error: undefined reference to 'pmt::eqv(boost::intrusive_ptr<pmt::pmt_base> const&, boost::intrusive_ptr<pmt::pmt_base> const&)' CMakeFiles/gnuradio-grand.dir/accelerometer_impl.cc.o:accelerometer_impl.cc:function gr::basic_block::has_msg_handler(boost::intrusive_ptr<pmt::pmt_base>): error: undefined reference to 'pmt::eqv(boost::intrusive_ptr<pmt::pmt_base> const&, boost::intrusive_ptr<pmt::pmt_base> const&)' CMakeFiles/gnuradio-grand.dir/accelerometer_impl.cc.o:accelerometer_impl.cc:function std::pair<boost::intrusive_ptr<pmt::pmt_base> const, boost::function<void (boost::intrusive_ptr<pmt::pmt_base>)> >::~pair(): error: undefined reference to 'pmt::intrusive_ptr_release(pmt::pmt_base*)' CMakeFiles/gnuradio-grand.dir/accelerometer_impl.cc.o:accelerometer_impl.cc:function std::pair<boost::intrusive_ptr<pmt::pmt_base> const, boost::function<void (boost::intrusive_ptr<pmt::pmt_base>)> >::~pair(): error: undefined reference to 'pmt::intrusive_ptr_release(pmt::pmt_base*)' CMakeFiles/gnuradio-grand.dir/accelerometer_impl.cc.o:accelerometer_impl.cc:function boost::function1<void, boost::intrusive_ptr<pmt::pmt_base> >::operator()(boost::intrusive_ptr<pmt::pmt_base>) const: error: undefined reference to 'pmt::intrusive_ptr_add_ref(pmt::pmt_base*)' CMakeFiles/gnuradio-grand.dir/accelerometer_impl.cc.o:accelerometer_impl.cc:function boost::function1<void, boost::intrusive_ptr<pmt::pmt_base> >::operator()(boost::intrusive_ptr<pmt::pmt_base>) const: error: undefined reference to 'pmt::intrusive_ptr_release(pmt::pmt_base*)' CMakeFiles/gnuradio-grand.dir/accelerometer_impl.cc.o:accelerometer_impl.cc:function boost::function1<void, boost::intrusive_ptr<pmt::pmt_base> >::operator()(boost::intrusive_ptr<pmt::pmt_base>) const: error: undefined reference to 'pmt::intrusive_ptr_release(pmt::pmt_base*)' CMakeFiles/gnuradio-grand.dir/accelerometer_impl.cc.o:accelerometer_impl.cc:function std::_Rb_tree<boost::intrusive_ptr<pmt::pmt_base>, std::pair<boost::intrusive_ptr<pmt::pmt_base> const, boost::function<void (boost::intrusive_ptr<pmt::pmt_base>)> >, std::_Select1st<std::pair<boost::intrusive_ptr<pmt::pmt_base> const, boost::function<void (boost::intrusive_ptr<pmt::pmt_base>)> > >, pmt::comparator, std::allocator<std::pair<boost::intrusive_ptr<pmt::pmt_base> const, boost::function<void (boost::intrusive_ptr<pmt::pmt_base>)> > > >::_M_insert_(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::pair<boost::intrusive_ptr<pmt::pmt_base> const, boost::function<void (boost::intrusive_ptr<pmt::pmt_base>)> > const&): error: undefined reference to 'pmt::intrusive_ptr_add_ref(pmt::pmt_base*)' CMakeFiles/gnuradio-grand.dir/accelerometer_impl.cc.o:accelerometer_impl.cc:function std::map<boost::intrusive_ptr<pmt::pmt_base>, boost::function<void (boost::intrusive_ptr<pmt::pmt_base>)>, pmt::comparator, std::allocator<std::pair<boost::intrusive_ptr<pmt::pmt_base> const, boost::function<void (boost::intrusive_ptr<pmt::pmt_base>)> > > >::operator[](boost::intrusive_ptr<pmt::pmt_base> const&): error: undefined reference to 'pmt::intrusive_ptr_add_ref(pmt::pmt_base*)' CMakeFiles/gnuradio-grand.dir/accelerometer_impl.cc.o:accelerometer_impl.cc:function gr::basic_block::dispatch_msg(boost::intrusive_ptr<pmt::pmt_base>, boost::intrusive_ptr<pmt::pmt_base>): error: undefined reference to 'pmt::intrusive_ptr_add_ref(pmt::pmt_base*)' collect2: error: ld returned 1 exit status lib/CMakeFiles/gnuradio-grand.dir/build.make:214: recipe for target 'lib/libgnuradio-grand.so' failed make[2]: *** [lib/libgnuradio-grand.so] Error 1 CMakeFiles/Makefile2:123: recipe for target 'lib/CMakeFiles/gnuradio-grand.dir/all' failed make[1]: *** [lib/CMakeFiles/gnuradio-grand.dir/all] Error 2 Makefile:127: recipe for target 'all' failed make: *** [all] Error 2 user@pc:~/code/gr-grand/build$
_______________________________________________ Discuss-gnuradio mailing list [email protected] https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
