Невозможно импортировать имя uhd в GNU Radio Python
Я успешно установил GNU Radio в Ubuntu 14.04. Я проверил установку, и она вернулась на 100%. Тем не менее, когда я запускаю его с кодом Python. Вернул ошибку такую как
File "/home/gnuradio-3.7.5/gr-digital/examples/narrowband/uhd_interface.py", line 23, in <module>
from gnuradio import gr, uhd
ImportError: cannot import name uhd
В чем моя ошибка? Не могли бы вы помочь мне решить это? Спасибо
Мой импорт
from gnuradio import *
from gnuradio import gr, digital
from gnuradio import eng_notation
from gnuradio.eng_option import eng_option
from optparse import OptionParser
# from current dir
from receive_path import receive_path
from transmit_path import transmit_path
from uhd_interface import uhd_transmitter
from uhd_interface import uhd_receiver
2 ответа
Вероятно, это так, потому что ваш GNU Radio был собран без поддержки UHD, поэтому gr-uhd
Компонент недоступен.
Это часто встречающееся препятствие, поэтому у меня есть "верный" метод:
- удалить все возможно сломанные версии GNU Radio и UHD
- установить их чисто из источника
Ее как идти:
/home/gnuradio-3.7.5/gr-digital/examples/narrowband/uhd_interface.py
Судя по твоему пути, ты сам собираешь GNU Radio из рук. Кстати, это ужасный путь; /home/
зарезервировано для домашних каталогов пользователей, и пользователь не должен называться gnuradio-3.7.5
, как имена пользователей с .
просят неприятностей.
Так
cd /home/gnuradio-3.7.5/build
sudo make uninstall
следует удалить все, что было построено из источника.
Затем убедитесь, что нет конфликтующей установки Ubuntu
sudo apt-get remove gnuradio uhd-host libuhd003
Затем используйте pybombs для установки всего:
#assuming you have git installed:
git clone --recursive git://github.com/pybombs/pybombs
cd pybombs
./pybombs install gnuradio uhd
Это задаст вам несколько вопросов, среди них каталог префиксов, в который pybombs установит GNU Radio, и все необходимое, что не поставляется самой Ubuntu. Я рекомендую оставить значение по умолчанию (просто нажмите enter), а затем, после того как pybombs закончит скачивать, собирать и устанавливать все, запустить
./pybombs env
echo "source {directory that everything got installed to}/setup_env.sh" >> ~/.bashrc
Затем у вас есть хорошая, недавняя установка GNU Radio, которая содержит gr-uhd
, Обратите внимание, что вы не должны устанавливать gnuradio или uhd из Ubuntu; UHD-версия Ubuntu настолько старая, что не поддерживает ни одну из текущих серий USRP.
Если после успешной установки программного обеспечения вы все еще получаете ошибки, из-за которых GNU Radio не может найти устройство USRP, см. Этот раздел вопросов и ответов.
Ты пытался from gnuradio import*
или же import gnuradio
? Если это не сработает, то вы должны вручную проверить это в библиотеке gnuradio, если такая функция существует. Также проверьте, правильно ли вы установили версию для Python 2.7.