Среда Arduino в linux

Установил программу от сюда http://www.calculate-linux.ru/packages/dev-embedded/arduino со всеми рекомендациями изложенными здесь http://playground.arduino.cc//Linux/Gentoo, программа запускается , плата nano v 5 тоже определяется, но есть проблема при заливке скетча в плату пишет :

cannot run programm "avr-g++" ; java.io.IOEception; error=2; no such file or directory

я так понимаю надо пакет avr-g++ , а его нет, в portage тоже, поиск ничего не дает
vlakar # eix avr-g++
Совпадений не найдено.

подскажите куда смотреть?

vlakar написал(а): cannot

vlakar написал(а):
cannot run programm "avr-g++" ; java.io.IOEception; error=2; no such file or directory

должен быть установлен crossdev toolchain, а не найденный executable относится к cross-avr/gcc

vr13 написал(а): vlakar

vr13 написал(а):
vlakar написал(а):
cannot run programm "avr-g++" ; java.io.IOEception; error=2; no such file or directory

должен быть установлен crossdev toolchain, а не найденный executable относится к cross-avr/gcc

Этот ? sys-devel/bfin-toolchain

Нет. Если кратко, то emerge

Нет. Если кратко, то

emerge crossdev && crossdev -t avr

eegorov написал(а): Нет. Если

eegorov написал(а):
Нет. Если кратко, то

emerge crossdev && crossdev -t avr

Это я уже сделал по рекомендациям от сюда
http://belgorod.lug.ru/wiki/Программирование_микроконтроллеров_AVR_в_Gentoo_Linux

теперь вроде компилится но опять ошибка:
/usr/libexec/gcc/avr/ld: cannot open linker script file ldscripts/avr5.x: Нет такого файла или каталога
collect2: ошибка: выполнение ld завершилось с кодом возврата 1

Что еще сделать ?

Да, есть такой баг.

Да, есть такой баг. Внимательно изучи https://bugs.gentoo.org/show_bug.cgi?id=147155

eegorov написал(а):Да, есть

eegorov написал(а):
Да, есть такой баг. Внимательно изучи https://bugs.gentoo.org/show_bug.cgi?id=147155

Там все по аглицки :-(( а у меня с ним туго, вряд ли разберусь
может где по русски есть ?

погромизд, как же ты

погромизд, как же ты спбрался погромировать ?

Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)

slepnoga

slepnoga написал(а):
погромизд, как же ты спбрался погромировать ?

А что, учится грех ?

Прошу прощенья за

Прошу прощенья за назойливость но очень надо
после долгого рысканья в нете вроде предыдущую проблему победил, но осталась эта
/usr/libexec/gcc/avr/ld: cannot find crtm168.o Нет такого файла или каталога
collect2: ошибка: выполнение ld завершилось с кодом возврата 1

Я так понимаю где-то на что-то надо ссылку сделать, подскажите, а то совсем запутался.

Поставить crossdev-20120913 и

Поставить crossdev-20120913 и пересобрать тулчейн

crossdev -t avr

eegorov написал(а):Поставить

eegorov написал(а):
Поставить crossdev-20120913 и пересобрать тулчейн

crossdev -t avr

Вот с ним беда

vlakar # emerge crossdev-20120913
WARNING: One or more repositories have missing repo_name entries:
/usr/local/portage/profiles/repo_name
NOTE: Each repo_name entry should be a plain text file containing a
unique name for the repository on the first line.
Local copy of remote index is up-to-date and will be used.
!!! 'crossdev-20120913' is not a valid package atom.
!!! Please check ebuild(5) for full details.

Вот что у меня установлено
lakar@vlakar ~ $ ls /usr/bin | grep avr
avr-addr2line
avr-ar
avr-as
avr-c++
avr-c++-4.7.2
avr-c++filt
avr-cpp
avr-cpp-4.7.2
avrdude
avr-elfedit
avr-emerge
avr-fix-root
avr-g++
avr-g++-4.7.2
avr-gcc
avr-gcc-4.7.2
avr-gcc-ar
avr-gcc-nm
avr-gcc-ranlib
avr-gcov
avr-gcov-4.7.2
avr-gdb
avr-gprof
avr-ld
avr-ld.bfd
avr-man
avr-nm
avr-objcopy
avr-objdump
avr-pkg-config
avr-ranlib
avr-readelf
avr-run
avr-size
avr-strings
avr-strip
emerge-avr

Это версия из нестабильной

Это версия из нестабильной ветки. Ее надо предварительно размаскировать. Можешь попробовать запустить

emerge -av =crossdev-20120913 

и внимательно прочитать, что напишет emerge. После установки тулчейн пересобрать все равно необходимо.

Боюсь, дальше разжевывать у меня терпения не хватит. В треде есть вся необходимая информация для решения твоей проблемы, поэтому я откланиваюсь.
Удачи!

eegorov написал(а): Это

eegorov написал(а):
Это версия из нестабильной ветки. Ее надо предварительно размаскировать. Можешь попробовать запустить

emerge -av =crossdev-20120913 

и внимательно прочитать, что напишет emerge. После установки тулчейн пересобрать все равно необходимо.

Боюсь, дальше разжевывать у меня терпения не хватит. В треде есть вся необходимая информация для решения твоей проблемы, поэтому я откланиваюсь.
Удачи!

Спасибо за помощь !!!!!!!
все решилось после выполнения Вашей рекомендации

.

vlakar написал(а):
eegorov написал(а):
Да, есть такой баг. Внимательно изучи https://bugs.gentoo.org/show_bug.cgi?id=147155

Там все по аглицки :-(( а у меня с ним туго, вряд ли разберусь
может где по русски есть ?

Тяжкое наследие империи, над которой никогда не заходило солнце..

:wq
--
Live free or die

Для тебя самым простым будет

Для тебя самым простым будет https://bugs.gentoo.org/show_bug.cgi?id=147155#c45
Но это не самый правильный путь.

vlakar написал(а): eegorov

vlakar написал(а):
eegorov написал(а):
Нет. Если кратко, то

emerge crossdev && crossdev -t avr

Это я уже сделал по рекомендациям от сюда
http://belgorod.lug.ru/wiki/Программирование_микроконтроллеров_AVR_в_Gentoo_Linux

теперь вроде компилится но опять ошибка:
/usr/libexec/gcc/avr/ld: cannot open linker script file ldscripts/avr5.x: Нет такого файла или каталога
collect2: ошибка: выполнение ld завершилось с кодом возврата 1

Что еще сделать ?

Волею судеб пришлось опять заниматься этой установкой, но рекомендации по ссылке не доступны по этому прошу помощи, вроде все делаю так же
USE="-openmp" crossdev -t avr -s4 -S --without-headers
а в ответ
* binutils failed :(
* If you file a bug, please attach the following logfiles:
* /var/log/portage/cross-avr-info.log
* /var/log/portage/cross-avr-binutils.log.xz
* /var/calculate/tmp/portage/cross-avr/binutils*/temp/binutils-config.logs.tar.xz

Лог опубликован здесь http://www.calculate-linux.ru/boards/16/topics/19072?page=2
Как я понял что все
All ebuilds that could satisfy "cross-avr/binutils" have been masked.
Я так понимаю что все замаскировано ?
но я же пакет поставил:
[binary R ] sys-devel/binutils-2.22-r1

Ну дело в том, что

Ну дело в том, что sys-devel/binutils и cross-avr/binutils - это разные пакеты. Категория разная. Потому надо явно размаскировать cross-avr/binutils

Пользуясь моментом, хочу передать привет друзьям, которые также пользуются "Моментом"

http://inotool.org/

Зачем использовать dev-embedded/arduino, если есть средства получше? Здесь ino про утилиту на python, которая отменяет все шаманства с make-файлами, не нужно собирать avr-gcc, не нужна никакая jvm и можно использовать например vim, вместо убогого редактора из Arduino IDE. Последовательность действий такая:

  1. Создаем виртуальное окружение по Python 2.7. Как это просто сделать написано здесь habr. Можно, конечно обойтись и без виртуального окружения, но нам нужно будет немного поправить исходники у ino. Через pip устанавливаем ino.
    #./virtualenvs/arduino/bin/pip search ino
        ...
    ino                       - Command line toolkit for working with Arduino hardware
        ...
    # ./virtualenvs/arduino/bin/pip install ino
    
  2. Скачиваем с arduino.cc архив с бинарниками под вашу архитектуру. Распаковываете их как есть где-нибудь у себя в домашнем каталоге. У меня это в /home/minusqwe/bin/arduino
  3. Находим модуль environment.py в пакете ino и добавляем путь для поиска наших свежескачанных бинарников
     arduino_dist_dir_guesses = [
            os.path.join(os.getenv('HOME'), 'bin/arduino'), # это добавленная строка
            '/usr/local/share/arduino',
            '/usr/share/arduino',
        ]
    
  4. Создаем файл ino в какой-нибудь директории из переменной окружения PATH со следующим содержимым:
    #!/home/minusqwe/virtualenv/arduino/bin/python
    
    from ino.runner import main
    
    if __name__ == '__main__':
        main()
    

    Он нужен, чтобы было проще доступаться до ino, установленного в virtualenv. Собственно, этот шаг не обязателен, но он сильно упрощает жизнь.

Теперь можно проверить как все работает.

# mkdir -p ~/projects/test && cd ~/projects/test
# ino init -t blink
# ino list-models
         uno: [DEFAULT] Arduino Uno
   atmega328: Arduino Duemilanove w/ ATmega328
   diecimila: Arduino Diecimila or Duemilanove w/ ATmega168
     nano328: Arduino Nano w/ ATmega328
        nano: Arduino Nano w/ ATmega168
    mega2560: Arduino Mega 2560 or Mega ADK
        mega: Arduino Mega (ATmega1280)
    leonardo: Arduino Leonardo
     esplora: Arduino Esplora
       micro: Arduino Micro
     mini328: Arduino Mini w/ ATmega328
        mini: Arduino Mini w/ ATmega168
    ethernet: Arduino Ethernet
         fio: Arduino Fio
       bt328: Arduino BT w/ ATmega328
          bt: Arduino BT w/ ATmega168
  LilyPadUSB: LilyPad Arduino USB
  lilypad328: LilyPad Arduino w/ ATmega328
     lilypad: LilyPad Arduino w/ ATmega168
    pro5v328: Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328
       pro5v: Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega168
      pro328: Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega328
         pro: Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega168
   atmega168: Arduino NG or older w/ ATmega168
     atmega8: Arduino NG or older w/ ATmega8
# ino build -m nano

Прошивка МК

# ino upload -m nano -p /dev/ttyUSB0

Открываем консоль

# ino serial -p /dev/ttyUSB0

Еще статья на хабре в коллекцию.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".