Установите TinyOS на Ubuntu

Я должен использовать TinyOS для своего небольшого проекта, поэтому я установил TinyOS в 64-разрядную версию Ubuntu 14.04. По сути, я следовал инструкциям Саида в его видео на YouTube, TinyOS Tutorial # 1 - Как установить TinyOS в Ubuntu, однако у меня возникли следующие проблемы:

  1. После установки TinyOS, я получил следующее сообщение об ошибке:

    Errors were encountered while processing: 
     /var/cache/apt/archives/tinyos-tools_1.4.2-tinyprod1_amd64.deb 
     /var/cache/apt/archives/msp430-binutils-tinyos_2.21.1-20110821_amd64.deb 
     /var/cache/apt/archives/msp430-gcc-tinyos_4.5.3-20110821_amd64.deb 
     /var/cache/apt/archives/msp430-libc-tinyos_20110612-20110821_amd64.deb 
     /var/cache/apt/archives/msp430mcu-tinyos_20110613-20110821_amd64.deb 
    E: Sub-process /usr/bin/dpkg returned an error code (1) 
    

    В видео на YouTube Саид сказал, что если при установке возникли ошибки, в файле sources.list добавьте следующее:

    deb http://tinyos.stanford.edu/tinyos/dists/ubuntu kramic main  
    

    вместо

    deb http://tinyos.stanford.edu/tinyos/dists/ubuntu lucid main  
    

    Я сделал, но это также не работает.

  2. Я сделал файл tinyos.sh как инструкцию на YouTube. В моей папке tinyos-release-tinyos-2_1_2 есть tinyos.sh, но при открытии нового терминала я получаю следующую ошибку:

    bash: /opt/tinyos-release-tinyos-2_1_2/tinyos.sh: No such file or directory 
    
  3. После sudo gedit ~/.bashrc, Я делаю source ~/.bashrc как в инструкции, но source ~/.bashrc никогда не работает со мной.

  4. В файле bashrc я добавляю TOSROOT, TOSDIR, CLASSPATH, MAKERULES так же, как в инструкции. Тогда, кажется, не работает. Когда я сделал cd TOSROOT в /opt/tinyos-release-tinyos-2_1_2Я получил следующую ошибку:

    bash: cd: /opt/tinyos-release-tinyos-2_1_2: No such file or directory 
    

Из-за этого я не могу двигаться дальше. Также я не смог переустановить tinyos-2.1.2 для переустановки. Когда я сделал sudo apt-get remove tinyos-2.1.2 Я получил следующие ошибки:

You might want to run 'apt-get -f install' to correct these: 
The following packages have unmet dependencies: 
 deputy-tinyos : Depends: tinyos-tools but it is not going to be installed 
 msp430-tinyos : Depends: msp430-binutils-tinyos but it is not going to be installed 
                 Depends: msp430-gcc-tinyos but it is not going to be installed 
                 Depends: msp430-libc-tinyos but it is not going to be installed 
                 Depends: msp430mcu-tinyos but it is not going to be installed 
 tinyos-required-avr : Depends: tinyos-tools but it is not going to be installed 
 tinyos-required-msp430 : Depends: tinyos-tools but it is not going to be installed 
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

1 ответ

Установите TinyOS в Ubuntu 14.04

  1. Посетите TinyOS (TinyProd) репозиторий разработки Debian и следуйте этим инструкциям:

    1. Расскажите apt о ключе подписи TinyProd.

      wget -O - http://tinyprod.net/repos/debian/tinyprod.key | sudo apt-key add -
      
    2. Добавьте две новые строки в /etc/apt/sources.list.d/tinyprod-debian.list:

      sudo -s
      cd /etc/apt/sources.list.d
      echo "deb http://tinyprod.net/repos/debian wheezy main" >> tinyprod-debian.list
      echo "deb http://tinyprod.net/repos/debian msp430-46 main" >> tinyprod-debian.list
      
    3. Установите новые пакеты:

      sudo apt-get update  
      sudo apt-get install nesc tinyos-tools  
      

      На этом этапе я не устанавливал ни msp430-46, ни avr-tinyos, на случай, если вы захотите установить их позже, после того, как протестируете установку TinyOS.

  2. Получите код из репозитория релизов TinyOS:

    wget http://github.com/tinyos/tinyos-release/archive/tinyos-2_1_2.tar.gz  
    tar xf tinyos-2_1_2.tar.gz  
    

    Это извлечет фактический код TinyOS в папку с именем tinyos-release-tinyos-2_1_2 внутри каталога, в котором была выполнена команда. Не стесняйтесь переименовать эту папку в tinyos-main.

  3. Вам нужно будет добавить некоторые переменные окружения в вашу оболочку. Следующий файл включает в себя необходимые. Замените местозаполнитель путем, по которому вы решили разместить код в предыдущем разделе (рекомендуется полный путь).

    # Here we setup the environment
    # variables needed by the tinyos 
    # make system
    
    export TOSROOT="<local-tinyos-path>"
    export TOSDIR="$TOSROOT/tos"
    export CLASSPATH=$CLASSPATH:$TOSROOT/support/sdk/java
    export MAKERULES="$TOSROOT/support/make/Makerules"
    export PYTHONPATH=$PYTHONPATH:$TOSROOT/support/sdk/python
    
    echo "setting up TinyOS on source path $TOSROOT"
    

    Предположим, вы назвали этот файл tinyos.env. Теперь есть как минимум две возможности сделать эти переменные доступными в вашей оболочке:

    1. Поместите его как пользователь root в /etc/profile.d/
    2. Поместите это в <local-tinyos-path> и добавьте следующую строку в ваш.bashrc

      source <local-tinyos-path>/tinyos.env  
      

После завершения установки TinyOS вы можете проверить ее успешность, выполнив некоторые из этих команд:

tos-bsl                 tos-ident-flags         tos-serial-debug
tos-build-deluge-image  tos-install-jni         tos-set-symbols
tos-channelgen          tos-locate-jre          tos-storage-at45db
tos-check-env           tos-mote-key            tos-storage-pxa27xp30
tos-decode-flid         tos-mviz                tos-storage-stm25p
tos-deluge              tos-ramsize             tos-write-buildinfo
tos-dump.py             tos-serial-configure    tos-write-image

Эти инструкции были скопированы с автоматической установки - TinyOS Wiki и успешно выполнены на Ubuntu 14.04, работающей в VirtualBox. Я сделал все это, потому что команды в учебнике по вашему вопросу имеют по крайней мере одну ошибку.

deb http://tinyos.stanford.edu/tinyos/dists/ubuntu kramic main 

должно быть:

deb http://tinyos.stanford.edu/tinyos/dists/ubuntu karmic main

И учебник в вашем вопросе может быть устаревшим, потому что он так устарел. Другая причина заключается в том, что я предполагаю, что мне понадобится целый день, чтобы набрать все команды в видео YouTube и запустить их по одной за раз, поэтому я скопировал / вставил инструкции из вики TinyOS в терминале, чтобы сэкономить время.

Другие вопросы по тегам