LoginSignup
2
3

More than 1 year has passed since last update.

GR- ISDBT を Ubuntu20.04 環境でビルドしようとしたが

Posted at

GR-ISDBT

ISDB-T (Integrated Services Digital Broadcasting - Terrestrial)
は日本の地デジで採用されている放送方式。

GR-ISDBT は GNURadio 上の ISDB-T の実装。

GNURadio は SDR (Sofrware Defined Radio) の OSS ツールキット。
ラジオ/テレビ、デジタル無線、衛星通信、レーダーなど様々なチャレンジがなされている。

今回は、GR-ISDBT を Ubuntu 20.04 でビルドできるかためしてみたが、うまくいかなかった記録。

環境

Ubuntu 20.04 LTS

ビルドにチャレンジ

ここに書いてある通りにしてみる


$ git clone https://github.com/git-artes/gr-isdbt.git  
$ cd gr-isdbt  
$ mkdir build  
$ cd build  
$ cmake ../ 

としてみるが


-- Build type not specified: defaulting to release.
-- Could NOT find Boost (missing: Boost_INCLUDE_DIR filesystem system) (Required is at least version "1.35")
CMake Error at CMakeLists.txt:78 (message):
  Boost required to compile isdbt

ふむ。boost が必要なのですね。

まずは、
「CMake で Could NOT find Boost と言われる。 @Ubuntu 12.04 & 14.04」
https://qiita.com/HiromiS/items/a05d61a7b8cc6590ebe3
を見て、


$ sudo add-apt-repository ppa:boost-latest/ppa -y

を試してみたが・・・


取得:23 http://jp.archive.ubuntu.com/ubuntu focal-backports/universe amd64 DEP-11 Metadata [1,768 B]
エラー:24 http://ppa.launchpad.net/boost-latest/ppa/ubuntu focal Release                      
  404  Not Found [IP: 91.189.95.85 80]
取得:25 http://security.ubuntu.com/ubuntu focal-security/main amd64 DEP-11 Metadata [24.5 kB]
取得:26 http://security.ubuntu.com/ubuntu focal-security/universe amd64 DEP-11 Metadata [58.3 kB]
取得:27 http://security.ubuntu.com/ubuntu focal-security/multiverse amd64 DEP-11 Metadata [2,464 B]
パッケージリストを読み込んでいます... 完了   
E: リポジトリ http://ppa.launchpad.net/boost-latest/ppa/ubuntu focal Release には Release ファイルがありません。
N: このようなリポジトリから更新を安全に行うことができないので、デフォルトでは更新が無効になっています。
N: リポジトリの作成とユーザ設定の詳細は、apt-secure(8) man ページを参照してください。


うまくいかなかったので今度は
「c++ - installing Boost for CMake in OpenPose in Ubuntu 20.04 - Stack Overflow」

https://stackoverflow.com/questions/65605733/installing-boost-for-cmake-in-openpose-in-ubuntu-20-04
を見て、


$ sudo apt install  libboost-filesystem1.71-dev

としてみた。


$ cmake ../
-- Build type not specified: defaulting to release.
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfig.cmake (found suitable version "1.71.0", minimum required is "1.35") found components: filesystem system 
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1") 
-- Checking for module 'cppunit'
--   No package 'cppunit' found
-- Could NOT find CPPUNIT (missing: CPPUNIT_INCLUDE_DIRS) 
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) 
CMake Error at CMakeLists.txt:129 (find_package):
  By not providing "FindGnuradio.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Gnuradio",
  but CMake did not find one.

  Could not find a package configuration file provided by "Gnuradio"
  (requested version 3.7.2) with any of the following names:

    GnuradioConfig.cmake
    gnuradio-config.cmake

  Add the installation prefix of "Gnuradio" to CMAKE_PREFIX_PATH or set
  "Gnuradio_DIR" to a directory containing one of the above files.  If
  "Gnuradio" provides a separate development package or SDK, be sure it has
  been installed.


-- Configuring incomplete, errors occurred!
See also "/home/nanbuwks/Downloads/gr-isdbt/build/CMakeFiles/CMakeOutput.log".

と出たので cppunit を入れる。
その上で出るエラーに沿って、 doxygen も入れる。


$ sudo apt install libcppunit-dev
$ sudo apt-get install doxygen

どうかな・・・


$ cmake ../
-- Build type not specified: defaulting to release.
-- Found Doxygen: /usr/bin/doxygen (found version "1.8.17") found components: doxygen dot 
CMake Error at CMakeLists.txt:129 (find_package):
  By not providing "FindGnuradio.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Gnuradio",
  but CMake did not find one.

  Could not find a package configuration file provided by "Gnuradio"
  (requested version 3.7.2) with any of the following names:

    GnuradioConfig.cmake
    gnuradio-config.cmake

  Add the installation prefix of "Gnuradio" to CMAKE_PREFIX_PATH or set
  "Gnuradio_DIR" to a directory containing one of the above files.  If
  "Gnuradio" provides a separate development package or SDK, be sure it has
  been installed.


-- Configuring incomplete, errors occurred!
See also "/home/nanbuwks/Downloads/gr-isdbt/build/CMakeFiles/CMakeOutput.log".


ふむ。それでは gnuradio-dev を入れればいいかな・・・



$ sudo apt install gnuradio gnuradio-dev  libcppunit-dev liblog4cpp5-dev swig

としてみたところ・・・


$ cmake ../
-- Build type not specified: defaulting to release.
CMake Error at CMakeLists.txt:129 (find_package):
  Could not find a configuration file for package "Gnuradio" that is
  compatible with requested version "3.7.2".

  The following configuration files were considered but not accepted:

    /usr/lib/x86_64-linux-gnu/cmake/gnuradio/GnuradioConfig.cmake, version: 3.8.1.0
    /lib/x86_64-linux-gnu/cmake/gnuradio/GnuradioConfig.cmake, version: 3.8.1.0



-- Configuring incomplete, errors occurred!
See also "/home/nanbuwks/Downloads/gr-isdbt/build/CMakeFiles/CMakeOutput.log".


ふむむ。

../CMakeLists.txt の 129行目、



find_package(Gnuradio "3.7.2" REQUIRED)

Gnuradio のバージョン指定が為されている。試しに以下のようにしてみたのだけれど・・・


find_package(Gnuradio "3.8.1.0" REQUIRED)

$ cmake ../
-- Build type not specified: defaulting to release.
-- Found LOG4CPP: /usr/lib/x86_64-linux-gnu/liblog4cpp.so
-- Checking for module 'gmp'
--   Found gmp, version 6.2.0
-- Found GMP: /usr/lib/x86_64-linux-gnu/libgmpxx.so  
-- Checking for module 'mpir >= 3.0'
--   No package 'mpir' found
-- Could NOT find MPIR (missing: MPIRXX_LIBRARY MPIR_LIBRARY MPIR_INCLUDE_DIR) 
-- Found MPLIB: /usr/lib/x86_64-linux-gnu/libgmpxx.so  
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfig.cmake (found suitable version "1.71.0", minimum required is "1.71.0") found components: date_time program_options filesystem system regex thread unit_test_framework 
-- Found VOLK: Volk::volk  
CMake Warning (dev) at /usr/lib/x86_64-linux-gnu/cmake/gnuradio/GnuradioConfig.cmake:48 (if):
  if given arguments:

    "ON"

  An argument named "ON" appears in a conditional statement.  Policy CMP0012
  is not set: if() recognizes numbers and boolean constants.  Run "cmake
  --help-policy CMP0012" for policy details.  Use the cmake_policy command to
  set the policy and suppress this warning.
Call Stack (most recent call first):
  CMakeLists.txt:129 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) in /usr/lib/x86_64-linux-gnu/cmake/gnuradio/GnuradioConfig.cmake:
  Policy CMP0011 is not set: Included scripts do automatic cmake_policy PUSH
  and POP.  Run "cmake --help-policy CMP0011" for policy details.  Use the
  cmake_policy command to set the policy and suppress this warning.

  The included script

    /usr/lib/x86_64-linux-gnu/cmake/gnuradio/GnuradioConfig.cmake

  affects policy settings.  CMake is implying the NO_POLICY_SCOPE option for
  compatibility, so the effects are applied to the including context.
Call Stack (most recent call first):
  CMakeLists.txt:129 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- 
-- Checking for module SWIG
-- Found SWIG version 4.0.1.
-- Found SWIG: /usr/bin/swig4.0  
-- Could NOT find PythonLibs (missing: PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS) (Required is at least version "2")
-- PYTHON_EXECUTABLE not set - using default python3
-- Use -DPYTHON_EXECUTABLE=/path/to/python2 to build for python2.
-- Found PythonInterp: /usr/bin/python (found version "3.8.5") 
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.8.so (found suitable exact version "3.8.5") 
-- User set python executable /usr/bin/python
-- Configuring done
-- Generating done
-- Build files have been written to: /home/nanbuwks/Downloads/gr-isdbt/build

うまくいったのかな?


$ make 

すると果てしない時間がかかって・・・


・
・
・
[ 91%] Building CXX object lib/CMakeFiles/test-isdbt.dir/qa_frequency_deinterleaver.cc.o
[ 92%] Building CXX object lib/CMakeFiles/test-isdbt.dir/qa_ofdm_sym_acquisition.cc.o
[ 94%] Linking CXX executable test-isdbt
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_tmcc_encoder.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt15qa_tmcc_encoder2t1Ev':
qa_tmcc_encoder.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_tmcc_encoder.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_energy_dispersal.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt19qa_energy_dispersal2t1Ev':
qa_energy_dispersal.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_energy_dispersal.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_byte_interleaver.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt19qa_byte_interleaver2t1Ev':
qa_byte_interleaver.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_byte_interleaver.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_carrier_modulation.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt21qa_carrier_modulation2t1Ev':
qa_carrier_modulation.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_carrier_modulation.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_hierarchical_combinator.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt26qa_hierarchical_combinator2t1Ev':
qa_hierarchical_combinator.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_hierarchical_combinator.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_time_interleaver.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt19qa_time_interleaver2t1Ev':
qa_time_interleaver.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_time_interleaver.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_frequency_interleaver.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt24qa_frequency_interleaver2t1Ev':
qa_frequency_interleaver.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_frequency_interleaver.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_pilot_signals.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt16qa_pilot_signals2t1Ev':
qa_pilot_signals.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_pilot_signals.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_tmcc_decoder_1seg.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt20qa_tmcc_decoder_1seg2t1Ev':
qa_tmcc_decoder_1seg.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_tmcc_decoder_1seg.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_ofdm_synchronization_1seg.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt28qa_ofdm_synchronization_1seg2t1Ev':
qa_ofdm_synchronization_1seg.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_ofdm_synchronization_1seg.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_ofdm_synchronization.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt23qa_ofdm_synchronization2t1Ev':
qa_ofdm_synchronization.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_ofdm_synchronization.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_reed_solomon_dec_isdbt.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt25qa_reed_solomon_dec_isdbt2t1Ev':
qa_reed_solomon_dec_isdbt.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_reed_solomon_dec_isdbt.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_byte_deinterleaver.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt21qa_byte_deinterleaver2t1Ev':
qa_byte_deinterleaver.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_byte_deinterleaver.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_energy_descrambler.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt21qa_energy_descrambler2t1Ev':
qa_energy_descrambler.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_energy_descrambler.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_bit_deinterleaver.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt20qa_bit_deinterleaver2t1Ev':
qa_bit_deinterleaver.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_bit_deinterleaver.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_symbol_demapper.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt18qa_symbol_demapper2t1Ev':
qa_symbol_demapper.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_symbol_demapper.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_time_deinterleaver.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt21qa_time_deinterleaver2t1Ev':
qa_time_deinterleaver.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_time_deinterleaver.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_frequency_deinterleaver.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt26qa_frequency_deinterleaver2t1Ev':
qa_frequency_deinterleaver.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_frequency_deinterleaver.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
/usr/bin/ld: CMakeFiles/test-isdbt.dir/qa_ofdm_sym_acquisition.cc.o: in function `_GLOBAL__sub_I__ZN2gr5isdbt23qa_ofdm_sym_acquisition2t1Ev':
qa_ofdm_sym_acquisition.cc:(.text.startup+0x46): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::AppenderMapStorageInitializer()'
/usr/bin/ld: qa_ofdm_sym_acquisition.cc:(.text.startup+0x4d): undefined reference to `log4cpp::Appender::AppenderMapStorageInitializer::~AppenderMapStorageInitializer()'
collect2: error: ld returned 1 exit status
make[2]: *** [lib/CMakeFiles/test-isdbt.dir/build.make:401: lib/test-isdbt] エラー 1
make[1]: *** [CMakeFiles/Makefile2:268: lib/CMakeFiles/test-isdbt.dir/all] エラー 2
make: *** [Makefile:141: all] エラー 2

 うーん、もうちょっとだったのに。やっぱりバージョン誤魔化すのはダメかな。
Gnuradio 3.7.2 をビルドしないといけないかな?
とりあえず Ubuntu パッケージ版の Gnuradio を削除。



$ sudo apt purge  gnuradio gnuradio-dev liblog4cpp5-dev swig
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  freeglut3 libboost-date-time-dev libboost-filesystem-dev libboost-program-options-dev libboost-regex-dev libboost-system-dev libboost-test-dev libboost-thread-dev
  libgmp-dev libgmpxx4ldbl libgnuradio-analog3.8.1 libgnuradio-audio3.8.1 libgnuradio-blocks3.8.1 libgnuradio-channels3.8.1 libgnuradio-digital3.8.1 libgnuradio-dtv3.8.1
  libgnuradio-fec3.8.1 libgnuradio-fft3.8.1 libgnuradio-filter3.8.1 libgnuradio-pmt3.8.1 libgnuradio-qtgui3.8.1 libgnuradio-runtime3.8.1 libgnuradio-trellis3.8.1
  libgnuradio-uhd3.8.1 libgnuradio-video-sdl3.8.1 libgnuradio-vocoder3.8.1 libgnuradio-wavelet3.8.1 libgnuradio-zeromq3.8.1 libgsl23 libgslcblas0 libgsm1-dev liblog4cpp5v5
  libqwt-qt5-6 librtlsdr0 libuhd3.15.0 libvolk2-bin libvolk2-dev libvolk2.2 python3-bs4 python3-click-plugins python3-html5lib python3-lxml python3-networkx python3-opengl
  python3-pyqt5.qtopengl python3-pyqtgraph python3-soupsieve python3-webencodings python3-zmq rtl-sdr swig4.0 uhd-host
これを削除するには 'sudo apt autoremove' を利用してください。
以下のパッケージは「削除」されます:
  gnuradio* gnuradio-dev* liblog4cpp5-dev* swig*

次に、ここを見て


$  sudo add-apt-repository ppa:gnuradio/gnuradio-releases-3.7
 Latest legacy 3.7 maintenance release of GNU Radio
 詳しい情報: https://launchpad.net/~gnuradio/+archive/ubuntu/gnuradio-releases-3.7
[ENTER] を押すと続行します。Ctrl-c で追加をキャンセルできます。

ヒット:1 http://archive.ubuntulinux.jp/ubuntu focal InRelease
ヒット:2 http://jp.archive.ubuntu.com/ubuntu focal InRelease                   
取得:3 http://jp.archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB]    
.
.
.
エラー:29 http://ppa.launchpad.net/boost-latest/ppa/ubuntu focal Release
  404  Not Found [IP: 91.189.95.85 80]
エラー:30 http://ppa.launchpad.net/gnuradio/gnuradio-releases-3.7/ubuntu focal Release
  404  Not Found [IP: 91.189.95.85 80]
パッケージリストを読み込んでいます... 完了
E: リポジトリ http://ppa.launchpad.net/boost-latest/ppa/ubuntu focal Release には Release ファイルがありません。
N: このようなリポジトリから更新を安全に行うことができないので、デフォルトでは更新が無効になっています。
N: リポジトリの作成とユーザ設定の詳細は、apt-secure(8) man ページを参照してください。
E: リポジトリ http://ppa.launchpad.net/gnuradio/gnuradio-releases-3.7/ubuntu focal Release には Release ファイルがありません。
N: このようなリポジトリから更新を安全に行うことができないので、デフォルトでは更新が無効になっています。
N: リポジトリの作成とユーザ設定の詳細は、apt-secure(8) man ページを参照してください。

うーむ、ソースからビルドしないとダメかな?

を読んでみると

Right now, it's compatible with GNU Radio 3.7 only. You may use our docker for 3.7 to check it out: https://github.com/git-artes/docker-gnuradio/tree/master/gnuradio-releases-37.

なんて書いてますね!

これは Docker 使ったほうがずっと楽そうですね! 上記のようにあれこれやってきましたが、あきらめて Docker を使って改めてチャレンジすることにします。

2
3
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3