discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] Install UHD for Android


From: Derek Kozel
Subject: Re: [Discuss-gnuradio] Install UHD for Android
Date: Sun, 25 Nov 2018 16:47:03 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.2.1

Hi De Yu,

That wiki page was last updated about four years ago and a quick look shows that it calls for a much older NDK as well as (almost certainly) a much older version of the Android OS than you are using. The UHD respository it links to that has some changes by Tom Rondeau, is over 2000 commits behind the current UHD code base. In all, it sounds as though enough has changed that you will have to do some work to update the instructions.

I was going to recommend that you try updating to the latest UHD codebase and try again, but it looks like there are quite a few changes to UHD to make it build on Android (at least two and a half years ago).

https://github.com/trondeau/uhd/commit/fb8a6b4d3264d3c9848bbafc2424c816f82ffaf5

https://github.com/trondeau/uhd/commit/c9fff42985d6ccdad6acb3272b33c18adeb0b09c

You can try rebasing the android branch on the master branch from Ettus Research. That would give you a lot of improvements and support for newer versions of dependencies.

https://github.com/EttusResearch/uhd


As for the exact errors you're encountering, my first guess is that the NDK has a much newer version of CMAKE than the code is developed for and so various functions aren't being called correctly. Since you probably don't want to use Android 5.0 updating the UHD codebase and the two commits linked above is your best course of action.

I'd recommend doing that and then reaching out to the USRP-users mailing list with the results. I don't know of anyone else running UHD on Android recently.

Regards,
Derek

On 11/23/18 9:24 AM, De_yu wrote:

Hi,

   We were trying to build uhd for android,following this page https://wiki.gnuradio.org/index.php/GRAndDeps#Older_Boost_.281.55.29_for_Android .
I have another UHD(v3.13.1.0-rc1 ) and gnuradio(v3.9.3) on ubuntu 18.04,with NDK r16b and boost 1.67.The text is below,it would be grateful if someone can help me correct the error.

address@hidden:/opt/grandroid$ cd uhd
address@hidden:/opt/grandroid/uhd$ git checkout android
Already on 'android'
Your branch is up to date with 'origin/android'.
address@hidden:/opt/grandroid/uhd$ cd host/build/
address@hidden:/opt/grandroid/uhd/host/build$ cmake -DCMAKE_INSTALL_PREFIX=$PREFIX \
>       -DCMAKE_TOOLCHAIN_FILE=$TOOLCHAIN \
>       -DBOOST_ROOT=$PREFIX \
>       -DLIBUSB_INCLUDE_DIRS=$PREFIX/include/libusb \
>       -DLIBUSB_LIBRARIES=$PREFIX/lib/libusb1.0.so \
>       -DPYTHON_EXECUTABLE=/usr/bin/python \
>       -DENABLE_STATIC_LIBS=True -DENABLE_USRP1=False \
>       -DENABLE_USRP2=False -DENABLE_B100=False \
>       -DENABLE_X300=False -DENABLE_OCTOCLOCK=False \
>       -DENABLE_TESTS=False -DENABLE_ORC=False \
>       ../
-- 
-- Configuring the python interpreter...
-- Python interpreter: /usr/bin/python
-- Override with: -DPYTHON_EXECUTABLE=<path-to-python>
-- Using UHD Images Directory: OFF
-- Building Static Libraries: True
-- Build type not specified: defaulting to release.
-- 
-- Configuring Boost C++ Libraries...
-- Boost version: 1.65.1
-- Found the following Boost libraries:
--   chrono
--   date_time
--   filesystem
--   program_options
--   regex
--   system
--   unit_test_framework
--   serialization
--   atomic
--   thread
-- Boost include directories: /usr/include
-- Boost library directories: /usr/lib/x86_64-linux-gnu
-- Boost libraries: /usr/lib/x86_64-linux-gnu/libboost_chrono.so;/usr/lib/x86_64-linux-gnu/libboost_date_time.so;/usr/lib/x86_64-linux-gnu/libboost_filesystem.so;/usr/lib/x86_64-linux-gnu/libboost_program_options.so;/usr/lib/x86_64-linux-gnu/libboost_regex.so;/usr/lib/x86_64-linux-gnu/libboost_system.so;/usr/lib/x86_64-linux-gnu/libboost_unit_test_framework.so;/usr/lib/x86_64-linux-gnu/libboost_serialization.so;/usr/lib/x86_64-linux-gnu/libboost_atomic.so;/usr/lib/x86_64-linux-gnu/libboost_thread.so;/usr/lib/x86_64-linux-gnu/libpthread.so
-- 
-- Python checking for Python version 2.6 or greater
-- Python checking for Python version 2.6 or greater - found
-- 
-- Python checking for Mako templates 0.4 or greater
-- Python checking for Mako templates 0.4 or greater - found
-- 
-- Configuring LibUHD support...
--   Dependency Boost_FOUND = 1
--   Dependency HAVE_PYTHON_PLAT_MIN_VERSION = TRUE
--   Dependency HAVE_PYTHON_MODULE_MAKO = TRUE
--   Enabling LibUHD support.
--   Override with -DENABLE_LIBUHD=ON/OFF
-- 
-- Configuring LibUHD - C API support...
--   Dependency ENABLE_LIBUHD = ON
--   Enabling LibUHD - C API support.
--   Override with -DENABLE_C_API=ON/OFF
-- 
-- Configuring Examples support...
--   Dependency ENABLE_LIBUHD = ON
--   Enabling Examples support.
--   Override with -DENABLE_EXAMPLES=ON/OFF
-- 
-- Configuring Utils support...
--   Dependency ENABLE_LIBUHD = ON
--   Enabling Utils support.
--   Override with -DENABLE_UTILS=ON/OFF
-- 
-- Configuring Tests support...
--   Dependency ENABLE_LIBUHD = ON
--   Disabling Tests support.
--   Override with -DENABLE_TESTS=ON/OFF
-- 
-- Configuring Manual support...
--   Dependency DOXYGEN_FOUND = YES
--   Enabling Manual support.
--   Override with -DENABLE_MANUAL=ON/OFF
-- 
-- 
-- Configuring API/Doxygen support...
--   Dependency DOXYGEN_FOUND = YES
--   Enabling API/Doxygen support.
--   Override with -DENABLE_DOXYGEN=ON/OFF
-- 
-- 
-- 
-- Configuring Man Pages support...
--   Dependency GZIP_FOUND = TRUE
--   Dependency NOT_WIN32 = TRUE
--   Enabling Man Pages support.
--   Override with -DENABLE_MAN_PAGES=ON/OFF
-- 
-- Configuring high resolution timing...
--   High resolution timing supported through clock_gettime.
-- 
-- 
-- Processing NI-RIO FPGA LVBITX Bitstreams...
--   Using x300.lvbitx_base for codegen
--   Using x310.lvbitx_base for codegen
-- 
-- 
-- Configuring USB support...
--   Dependency ENABLE_LIBUHD = ON
--   Dependency LIBUSB_FOUND = TRUE
--   Enabling USB support.
--   Override with -DENABLE_USB=ON/OFF
-- USB support enabled via libusb.
-- 
-- Configuring interface address discovery...
--   Interface address discovery not supported.
-- Checking for module 'libgps'
--   No package 'libgps' found
-- Checking for module 'libgps >= 3.11'
--   No package 'libgps' found
-- Could NOT find LIBGPS (missing: LIBGPS_LIBRARY LIBGPS_INCLUDE_DIR) 
-- 
-- Configuring GPSD support...
--   Dependency ENABLE_LIBUHD = ON
--   Dependency ENABLE_GPSD = 
--   Dependency LIBGPS_FOUND = FALSE
--   Disabling GPSD support.
--   Override with -DENABLE_GPSD=ON/OFF
-- 
-- Configuring USRP1 support...
--   Dependency ENABLE_LIBUHD = ON
--   Dependency ENABLE_USB = ON
--   Disabling USRP1 support.
--   Override with -DENABLE_USRP1=ON/OFF
-- 
-- Configuring USRP2 support...
--   Dependency ENABLE_LIBUHD = ON
--   Disabling USRP2 support.
--   Override with -DENABLE_USRP2=ON/OFF
-- 
-- Configuring B100 support...
--   Dependency ENABLE_LIBUHD = ON
--   Dependency ENABLE_USB = ON
--   Disabling B100 support.
--   Override with -DENABLE_B100=ON/OFF
-- 
-- Configuring E100 support...
--   Dependency ENABLE_LIBUHD = ON
--   Dependency LINUX = TRUE
--   Disabling E100 support.
--   Override with -DENABLE_E100=ON/OFF
-- Could NOT find UDev (missing: UDEV_INCLUDE_DIR UDEV_LIBS) 
-- 
-- Configuring E300 support...
--   Dependency ENABLE_LIBUHD = ON
--   Disabling E300 support.
--   Override with -DENABLE_E300=ON/OFF
-- 
-- Configuring X300 support...
--   Dependency ENABLE_LIBUHD = ON
--   Disabling X300 support.
--   Override with -DENABLE_X300=ON/OFF
-- 
-- Configuring B200 support...
--   Dependency ENABLE_LIBUHD = ON
--   Dependency ENABLE_USB = ON
--   Enabling B200 support.
--   Override with -DENABLE_B200=ON/OFF
-- 
-- Configuring OctoClock support...
--   Dependency ENABLE_LIBUHD = ON
--   Disabling OctoClock support.
--   Override with -DENABLE_OCTOCLOCK=ON/OFF
-- 
-- Configuring priority scheduling...
--   Priority scheduling not supported.
-- 
-- Configuring module loading...
--   Module loading supported through dlopen.
CMake Error at lib/utils/CMakeLists.txt:121 (FILE):
  FILE FILE([TO_CMAKE_PATH|TO_NATIVE_PATH] path result) must be called with
  exactly three arguments.
Call Stack (most recent call first):
  lib/CMakeLists.txt:56 (INCLUDE)
  lib/CMakeLists.txt:76 (INCLUDE_SUBDIRECTORY)


CMake Error at lib/utils/CMakeLists.txt:122 (STRING):
  STRING sub-command REPLACE requires at least four arguments.
Call Stack (most recent call first):
  lib/CMakeLists.txt:56 (INCLUDE)
  lib/CMakeLists.txt:76 (INCLUDE_SUBDIRECTORY)


-- Could NOT find UDev (missing: UDEV_INCLUDE_DIR UDEV_LIBS) 
-- 
-- ######################################################
-- # UHD enabled components                              
-- ######################################################
--   * LibUHD
--   * LibUHD - C API
--   * Examples
--   * Utils
--   * Manual
--   * API/Doxygen
--   * Man Pages
--   * USB
--   * B200
-- 
-- ######################################################
-- # UHD disabled components                             
-- ######################################################
--   * Tests
--   * GPSD
--   * USRP1
--   * USRP2
--   * B100
--   * E100
--   * E300
--   * X300
--   * OctoClock
-- 
-- Building version: 003.009.003-517-gc9fff429
-- Using install prefix: 
-- Configuring incomplete, errors occurred!
See also "/opt/grandroid/uhd/host/build/CMakeFiles/CMakeOutput.log".
See also "/opt/grandroid/uhd/host/build/CMakeFiles/CMakeError.log".

Best regards,
De Yu


_______________________________________________
Discuss-gnuradio mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

reply via email to

[Prev in Thread] Current Thread [Next in Thread]