我正在嘗試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".
我不知道是什麼導致了這個錯誤,所以我用谷歌搜尋並在作者 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,如果使用 apt install gnuradio 安裝,則 Ubuntu 22.04 附帶 GNU Radio 3.10。
我能夠gr-gsm
透過使用在 Ubuntu 22.04 上構建這把叉子從貝克勒。該過程與原始存儲庫相同,但他們在程式碼中添加了一些補丁,使其能夠在帶有 GNU Radio 3.10 的 Ubuntu 22.04 上建置。
我使用預設分支maint-3.10_with_multiarfcn
。