gr-gsm 프로그램을 설치하는 방법은 무엇입니까?

gr-gsm 프로그램을 설치하는 방법은 무엇입니까?

gr-gsm내 시스템에 이름이 지정된 프로그램을 설치하려고 합니다 . 그래서 저는 공식 가이드를 따랐습니다.여기cmake ..하지만 (설치 가이드를 따르는 동안) 명령을 입력하면 이 오류가 반환됩니다.

CMake Error at swig/CMakeLists.txt:37 (include):
  include could not find requested file:                                                                         
                                                                                                                 
    GrSwig                                                                                                       
                                                                                                                 
                                                                                                                 
CMake Error at swig/CMakeLists.txt:51 (GR_SWIG_MAKE):
  Unknown CMake command "GR_SWIG_MAKE".

이 오류의 원인이 무엇인지 모르기 때문에 Google에서 작성자 git repo에 대한 스레드를 찾았습니다. 그러나 그것은 별로 도움이 되지 않습니다. 그래서 저는 여기서 여러분의 도움을 구하고 있습니다. 어떻게든 이 오류를 해결하도록 도와주세요.

이 명령은 cmake ..다음과 같은 결과를 제공합니다.

$ cmake ..
-- The CXX compiler identification is GNU 11.3.0
-- The C compiler identification is GNU 11.3.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Build type not specified: defaulting to release.
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.2") 
-- Checking for module 'gmp'
--   Found gmp, version 6.2.1
-- Found GMP: /usr/lib/x86_64-linux-gnu/libgmpxx.so  
-- Using GMP.
-- Found MPLIB: /usr/lib/x86_64-linux-gnu/libgmpxx.so  
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.74.0/BoostConfig.cmake (found suitable version "1.74.0", minimum required is "1.74.0") found components: date_time program_options system regex thread unit_test_framework 
-- Found Volk: Volk::volk  
-- User set python executable /usr/bin/python3
-- Found PythonInterp: /usr/bin/python3 (found version "3.10.4") 
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.10.so (found suitable exact version "3.10.4") 
-- Checking for module 'sndfile'
--   Found sndfile, version 1.0.31
-- Found SNDFILE: /usr/lib/x86_64-linux-gnu/libsndfile.so  
-- Checking for module 'fftw3f >= 3.0'
--   Found fftw3f , version 3.3.8
-- Found FFTW3f: /usr/lib/x86_64-linux-gnu/libfftw3f.so  
-- Found Git: /usr/bin/git  
-- Extracting version information from git describe...
-- Found Doxygen: /usr/bin/doxygen (found version "1.9.1") found components: doxygen dot 
CMake Warning (dev) at /usr/share/cmake-3.23/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (PkgConfig)                                     
  does not match the name of the calling package (Libosmocore).  This can                                        
  lead to problems in calling code that expects `find_package` result                                            
  variables (e.g., `_FOUND`) to follow a certain pattern.                                                        
Call Stack (most recent call first):                                                                             
  /usr/share/cmake-3.23/Modules/FindPkgConfig.cmake:99 (find_package_handle_standard_args)                       
  cmake/Modules/FindLibosmocore.cmake:2 (INCLUDE)                                                                
  CMakeLists.txt:132 (find_package)                                                                              
This warning is for project developers.  Use -Wno-dev to suppress it.                                            
                                                                                                                 
-- Checking for module 'libosmocore'
--   Found libosmocore, version 1.6.0
CMake Warning (dev) at /usr/share/cmake-3.23/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args`                                                 
  (libosmocore) does not match the name of the calling package (Libosmocore).                                    
  This can lead to problems in calling code that expects `find_package`                                          
  result variables (e.g., `_FOUND`) to follow a certain pattern.                                                 
Call Stack (most recent call first):                                                                             
  cmake/Modules/FindLibosmocore.cmake:32 (find_package_handle_standard_args)                                     
  CMakeLists.txt:132 (find_package)                                                                              
This warning is for project developers.  Use -Wno-dev to suppress it.                                            
                                                                                                                 
-- Found libosmocore: /usr/lib/x86_64-linux-gnu/libosmocore.so  
CMake Warning (dev) at /usr/share/cmake-3.23/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (PkgConfig)                                     
  does not match the name of the calling package (Libosmocodec).  This can                                       
  lead to problems in calling code that expects `find_package` result                                            
  variables (e.g., `_FOUND`) to follow a certain pattern.                                                        
Call Stack (most recent call first):                                                                             
  /usr/share/cmake-3.23/Modules/FindPkgConfig.cmake:99 (find_package_handle_standard_args)                       
  cmake/Modules/FindLibosmocodec.cmake:1 (INCLUDE)                                                               
  CMakeLists.txt:133 (find_package)                                                                              
This warning is for project developers.  Use -Wno-dev to suppress it.                                            
                                                                                                                 
-- Checking for module 'libosmocodec'
--   Found libosmocodec, version 1.6.0
CMake Warning (dev) at /usr/share/cmake-3.23/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args`                                                 
  (libosmocodec) does not match the name of the calling package                                                  
  (Libosmocodec).  This can lead to problems in calling code that expects                                        
  `find_package` result variables (e.g., `_FOUND`) to follow a certain                                           
  pattern.                                                                                                       
Call Stack (most recent call first):                                                                             
  cmake/Modules/FindLibosmocodec.cmake:31 (find_package_handle_standard_args)                                    
  CMakeLists.txt:133 (find_package)                                                                              
This warning is for project developers.  Use -Wno-dev to suppress it.                                            
                                                                                                                 
-- Found libosmocodec: /usr/lib/x86_64-linux-gnu/libosmocodec.so  
-- Checking for module 'libosmocoding'
--   Found libosmocoding, version 1.6.0
CMake Warning (dev) at /usr/share/cmake-3.23/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args`                                                 
  (libosmocoding) does not match the name of the calling package                                                 
  (Libosmocoding).  This can lead to problems in calling code that expects                                       
  `find_package` result variables (e.g., `_FOUND`) to follow a certain                                           
  pattern.                                                                                                       
Call Stack (most recent call first):                                                                             
  cmake/Modules/FindLibosmocoding.cmake:31 (find_package_handle_standard_args)                                   
  CMakeLists.txt:134 (find_package)                                                                              
This warning is for project developers.  Use -Wno-dev to suppress it.                                            
                                                                                                                 
-- Found libosmocoding: /usr/lib/x86_64-linux-gnu/libosmocoding.so  
CMake Warning (dev) at /usr/share/cmake-3.23/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (PkgConfig)                                     
  does not match the name of the calling package (Libosmogsm).  This can lead                                    
  to problems in calling code that expects `find_package` result variables                                       
  (e.g., `_FOUND`) to follow a certain pattern.                                                                  
Call Stack (most recent call first):                                                                             
  /usr/share/cmake-3.23/Modules/FindPkgConfig.cmake:99 (find_package_handle_standard_args)                       
  cmake/Modules/FindLibosmogsm.cmake:1 (INCLUDE)                                                                 
  CMakeLists.txt:135 (find_package)                                                                              
This warning is for project developers.  Use -Wno-dev to suppress it.                                            
                                                                                                                 
-- Checking for module 'libosmogsm'
--   Found libosmogsm, version 1.6.0
CMake Warning (dev) at /usr/share/cmake-3.23/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (libosmogsm)                                    
  does not match the name of the calling package (Libosmogsm).  This can lead                                    
  to problems in calling code that expects `find_package` result variables                                       
  (e.g., `_FOUND`) to follow a certain pattern.                                                                  
Call Stack (most recent call first):                                                                             
  cmake/Modules/FindLibosmogsm.cmake:31 (find_package_handle_standard_args)                                      
  CMakeLists.txt:135 (find_package)                                                                              
This warning is for project developers.  Use -Wno-dev to suppress it.                                            
                                                                                                                 
-- Found libosmogsm: /usr/lib/x86_64-linux-gnu/libosmogsm.so  
-- Loading build date Tue, 26 Jul 2022 01:54:05 into constants...
-- Loading version v0.42.2-99-g2de47e28 into constants...
-- Using install prefix: /usr/local
-- Building for version: v0.42.2-99-g2de47e28 / 1.0.0git
-- No C++ unit tests... skipping
-- Found SWIG: /usr/bin/swig4.0 (found version "4.0.2")  
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.10.so (found version "3.10.4") 
CMake Error at swig/CMakeLists.txt:37 (include):
  include could not find requested file:                                                                         
                                                                                                                 
    GrSwig                                                                                                       
                                                                                                                 
                                                                                                                 
CMake Error at swig/CMakeLists.txt:51 (GR_SWIG_MAKE):
  Unknown CMake command "GR_SWIG_MAKE".                                                                          
                                                                                                                 
                                                                                                                 
-- Configuring incomplete, errors occurred!
See also "/home/kali/gr-gsm/build/CMakeFiles/CMakeOutput.log".
See also "/home/kali/gr-gsm/build/CMakeFiles/CMakeError.log".

답변1

osmocom.org의 원래 저장소는 GNU Radio 3.9만 지원하며 Ubuntu 22.04는 apt install gnuradio로 설치하는 경우 GNU Radio 3.10과 함께 제공됩니다.

gr-gsm다음을 사용하여 Ubuntu 22.04에서 빌드할 수 있었습니다.이 포크~에서베커러. 프로세스는 원본 저장소와 동일하지만 GNU Radio 3.10을 사용하여 Ubuntu 22.04에서 빌드할 수 있도록 코드에 일부 패치를 추가했습니다.

저는 기본 브랜치를 사용했습니다 maint-3.10_with_multiarfcn.

관련 정보