AVR Studio в Linux.

Распечатать

Печально, но факт, что Atmel штампует свое замечательное IDE только для семейства OS Windows. Поэтому пользователям Linux приходится по-всякому извращаться, чтобы заполучить себе на машину этот удобнейший инструмент разработчика. Существует два очевидных решения этой задачи. Первый — запускать студию в Windows, которая крутится на виртуальной машине (отдельную машину с Win не рассматриваем). Второй — запускать программу посредством Wine.

Первый способ хорош 100%-й совместимостью и полным отсутствием софтверных граблей. Железные же практически полностью висят на разработчиках виртуальных машин и обычно стремятся к нулю. Однако, виртуальная машина отжирает у хост-машины ценные системные ресурсы. Кроме того, стоит учесть, что налог на Windows не зависит от того насколько виртуальна машина, на которой бегает эта операционная система. Ну и окно-в-окне, особенно при неудачно реализованном механизме переключения между системами, удовольствия не доставляет. Если вас эти ограничения не смущают, это вполне себе вариант. В Википедии есть прекрасная сводная таблица виртуальных машин, которая может вам пригодиться.

Способ запуска программ (любых) посредством Wine — вполне себе самодостаточен. Стоит помнить, что проект постоянно развивается. Сегодняшний Wine не чета тому, который мне довелось пощупать при первом знакомстве. Сайт проекта: http://www.winehq.org/. Этот вариант распишу подробно.

Итак. Для начала обновляем Wine. Это обязательно нужно сделать, т.к. в состав дистрибутивов обычно входит стабильный, а значит достаточно старый релиз. Последний стабильный релиз — 1.0.1 (октябрь 2008 года). У меня сейчас стоит версия 1.1.33, на момент написания статьи отрелизилась 1.1.36 (8 января 2010 года). Идем в раздел Downloads на сайте, ищем СВОЙ дистрибутив и внимательно читаем инструкции по установке. В моем случае это Debian, о нем и пойдет речь дальше. Если у вас не Debian — ставите по-своему.

Подключаем репозиторий Вайна. Нужно добавить строчку в файл /etc/apt/sources.list (с правами root’а):

#echo "deb http://www.lamaresh.net/apt lenny main" >> /etc/apt/sources.list

Скачаем ключик для доступа к репозиторию:

$wget http://www.lamaresh.net/apt/key.gpg
#apt-key add key.gpg

Обновим список пакетов и установим программу:

#apt-get update
#apt-get install wine

После установки последуем инструкции от aor_dreamer с форума AVR Freaks.

Качаем и запускаем скрипт winetricks:

$wget http://www.kegel.com/wine/winetricks
$bash winetricks

В открывшемся окне ставим следующие флажки:

- corefonts
- dcom98
- gdiplus
- gecko
- mdac28
- msxml3
- vcrun2005
- allfonts
- fakeie6

После того как скрипт отработает (придется принять участие и посоглашаться с лицензиями MS) качаем AVR Studio с оффсайта Atmel и устанавливаем:

$wine AvrStudio4Setup.exe

Запускаем (это путь, куда студия становится по умолчанию):

$wine "~/.wine/drive_c/Program Files/Atmel/AVR Tools/AvrStudio4/AVRStudio.exe"

По желанию можно написать простенький скрипт для запуска и повесить его на рабочий стол (правильную картинку можно взять здесь).

Осталась небольшая проблемка. AVR Studio отказалась видеть подключенный аналог STK500 (модифицированный HVProg). Интерфейс с ПК в моей версии реализован посредством FT232RL, которая видна в системе как /dev/ttyUSB0. Студия же ищет программатор по привычным COMx, где х — номер порта.

Тут все просто. Создаем ссылку (root’ом):

#ln -s /dev/ttyUSB0 <home_dir>/.wine/dosdevices/com1

/dev/ttyUSB0 — физическое устройство (например, реальный COM порт: /dev/ttyS0);
<home_dir> — путь к домашнему каталогу пользователя;
com1 — имя порта для Win (например, lpt1 для параллельного интерфейса).

Программатор определился в автоматическом режиме и тут же бодро прочитал/зашил пару МК. Пока проверял только ISP режим, но думаю с HV проблем не будет. (также наверняка не будет и проблем с JTAG ICE первой модификции, а также всеми программаторами работающими по честному COM порту — прим.DI HALT)

Учтите, что пользователь, которому нужен доступ к портам через wine, должен иметь права на чтение-запись в порт, т.е. находиться в соответствующей группе.

Блог автора: http://devmind.livejournal.com/

Запись опубликована в рубрике AVR. Учебный курс с метками , , , . Добавьте в закладки постоянную ссылку.

75 комментариев: AVR Studio в Linux.

  1. addy92 говорит:

    Актуальненько.
    Сакральная пляска с выбором нужного вайна обязательна или всё можно сделать через синаптик?

  2. Dmitry говорит:

    Глупый вопрос — чего есть такое в аврстудии, что ее надо тащить вайном?

    Я поставил Eclipse. Завелся с полпинка. После этого поставил такой-же эклипс и под винды. Проблем пока не знаю. Но у меня, может, и проекты какие-то простые.

    Да, я не использую аппаратную отладку, но может просто не умею ее готовить?

    DI HALT — вот чего очень бы хотелось услышать, так это про отладку во всех ее образах. А то до сих пор гильзой пользуюсь — в уме отлаживаю, да контрольные точки на экранчик вывожу.

    • DI HALT говорит:

      Про отладку в ближайших планах. Когда будет на чем отлаживать. В смысле какая то сложная прошивка. Думаю поста через два три будет.

      Студия хороша своей эмуляцией. Работой с жтагом. Программаторами и прочими приятностями. Ну и сама по себе студия это как мощный справочник по авр. Т.е. я когда в ней программирую то могу даже в даташит не лазать — она сама тебе подскажет что какой бит значит и выведет краткую справку.

  3. Nikita Nazarenko говорит:

    для программаторов которые висят на COM все равно придется делать ссылки с /dev/ttyS0 на ~/.wine/dosdevices/comN

    Кстати, могу сделать описание сборки toolchain’a avr-gcc(buildtools, avr-gcc, avr-libc) и настройки IDE к этому добру.

  4. А вот симуляторы из студии у меня так и не заработали под вайном.

  5. arhiv_6 говорит:

    У меня скаченный winetricks выдает ошибку:
    niro@niro-laptop ~ $ sh winetricks
    /home/niro/.wine/drive_c/winetrickstmp/zenity.sh: 4: Syntax error: «(» unexpected
    Что это может быть?

  6. GOST8711-60 говорит:

    а чем не устраивает avrdude ?

  7. Sniper говорит:

    Маленький вопрос:
    У меня тоже стоит деб(на втором компе), возник вопрос, а зачем после добавления репозитария качать ключ?
    $wget http://www.lamaresh.net/apt/key.gpg
    #apt-key add key.gpg

  8. Я к сожалению просто похерил себе вайн…

  9. bevice говорит:

    А я вот пользую Code:Blocks отличная IDE и нативно дружит с AVR-GCC. Работает под linux/windows, да и любой другой системой в которой есть GCC и wxWidgets.
    И ненужны никакие извращения с VM или еще хуже Wine.

  10. F.L.A.M говорит:

    Я работаю под линуксой в Eclipse. Дебаг у меня по JTAGу. Полностью доволен.

  11. Anatoliy говорит:

    Привет всем!.
    Спасибо автору — прекрасный сайт.
    Попытка установить AVRStudio пока окончилась неудачей.После операции:
    ================
    $bash winetricks

    В открывшемся окне ставим следующие флажки:

    - corefonts
    - dcom98
    - gdiplus
    - gecko
    - mdac28
    - msxml3
    - vcrun2005
    - allfonts
    - fakeie6
    ====================
    в некоторых местах получаю сообщение:

    и процесс прекращается.Что-бы это значило?
    Ubuntu 9.04

    Спасибо!

  12. Anatoliy говорит:

    Привет всем!.
    Спасибо автору — прекрасный сайт.
    Попытка установить AVRStudio пока окончилась неудачей.После операции:
    ================
    $bash winetricks

    В открывшемся окне ставим следующие флажки:

    - corefonts
    - dcom98
    - gdiplus
    - gecko
    - mdac28
    - msxml3
    - vcrun2005
    - allfonts
    - fakeie6
    ====================
    в некоторых местах получаю сообщение:

    Note: command ‘wine /home/ded/.winetrickscache/mdac28/mdac_typ.exe’ returned status 2. Aborting.

    и процесс прекращается.Что-бы это значило?
    Ubuntu 9.04

    Спасибо!

      • Anatoliy говорит:

        Установил репозитарий,обновился.Какая-то последняя.Знать бы еще где это видно?
        Вообще-то у меня стоял wine,может удалить поставить наново.
        Спасибо!

        • wine —version

          Попробуй подсунуть вайну кэш вайнтрикса как диск:

          $ln -s ~/.winetrickscache ~/.wine/dosdevices/d:

          d: — название диска; подставить незанятую

          • Anatoliy говорит:

            Спасибо,попозже попробую

          • Anatoliy говорит:

            wine 1.1.36
            $ln -s ~/.winetrickscache ~/.wine/dosdevices/h: — не помогло.Тоже сообщение

          • А если вручную запустить инсталляцию проблемного компонента?

          • Anatoliy говорит:

            Ура-а-а!Установил!

            Снес старый Wine.Папку .wine переименовал в .wwine
            С репозитария установил wine 1.1.36.Одновременно установилось corefonts и gecko.
            Далее компоненты устанавливал согласно инструкции DI_HALT по одному,дабы засечь,что будет сопротивляться.corefonts и gecko не устанавливал.Правда там было сообщение,что NTGraph.ocx не хватает.Но там оно есть,если будут проблемы,подсунем.
            Это Ubuntu 9.04
            Всем большое спасибо!

          • Anatoliy говорит:

            PS:Есть некоторое разочарование.Работает медленно.В VirtualBoxe значительно быстрее

          • Поздравляю. А с обновлением что-то не то. Нужно будет поэкспериментировать на досуге.

    • lehase говорит:

      У меня прокатила следующая команда в консоли:
      winetricks corefonts gdiplus gecko msxml3 vcrun2005 allfonts fakeie6 dotnet20

      Из оригинала был исключен Dcom98 и добавлен .NET
      После чего все нормально встало, за исключением регистрации ntgraph.ocx, но насколько я понял, это не критично, студия вроде работает.

  13. ABATAPA говорит:

    А кто-то меня убеждал, что AVRStudio не работает под wine. :)

  14. diktator говорит:

    Как вообще запустить jtag под линуксом. У меня jlink просто не оределяется.

  15. eliran говорит:

    Привет, у меня стоит мэк леопард , хочу установить AVR Studio, если можно в двух словах описать все достоинства и недостатки каждой из опций:

    1. установить на виртуальную машину vmware
    2. установить на виртуальную машину paralels
    3. установить через wine (есть для мэка http://davidbaumgold.com/tutorials/wine-mac/)

    Спасибо за внимание

  16. and говорит:

    А что может авр студия в линуксе?Только ассемблер и эмулятор? Пробовал прикрутить к ней WinAvr через wine пишет avr-objcopy критическая ошибка. Хотя hex файл получается

  17. IPC говорит:

    Здравствуйте, для прошивки в Ubuntu 10 мне понравилась программа KontrollerLab. Офф.сайт http://kontrollerlab.org, прокомментируйте пожалуйста.

    Заранее спасибо.

  18. @mva говорит:

    Реквестирую дописать к списку пакетов «msi2″ (инсталлер версии 2) и vcrun2008. У меня без них не ставилось.

  19. mahajrod говорит:

    Уважаемые линуксоиды.
    winetricks ставит только
    corefonts
    gecko
    fakeie6
    На остальное матерится(пример с mdac 28):
    Note: command ‘wget -O MDAC_TYP.EXE -nd -c —read-timeout=300 —retry-connrefused —header Accept-Encoding: gzip,deflate http://download.microsoft.com/download/c/d/f/cdfd58f1-3973-4c51-8851-49ae3777586f/MDAC_TYP.EXE‘ returned status 1. Aborting

    PS.система ubuntu 9.10

  20. так намного проще, чем ставить галки:
    chmod +x winetricks
    ./winetricks corefonts dcom98 gdiplus gecko mdac28 msxml3 vcrun2005 allfonts fakeie6
    действительно, пришлось поставить еще msi2 и vcrun2008.
    Чтобы встал vcrun2008 пришлось в winecfg сделать:
    «5.) Scroll down until you see msi(native, builtin)
    6.) Click it and click the “edit” button to the right
    7.) Click the radio button next to “Builtin then Native”»
    иначе вылетала ошибка «windows installer service could not be accessed»
    линуксоиды извращенцы
    зы зато почти все быстро гуглится
    зыы у меня макось

  21. swift говорит:

    спасибо за руководство
    у меня вот какой вопросs
    у меня стоит wine-1.2

    1) при запуске скрипта winetricks — у меня нет позиции fakeie6

    2) тем не менее avr studio у меня проинсталировался
    но после загрузке у меня открывается диалоговое окно предлашающее создать новый проект или открыть существующий — закрыв это окно avr подвисает намертво :(
    куда копать?

  22. denvist.openid.karelia.ru говорит:

    у меня в wine не работает AVR Simulator (ни первый, ни второй).
    выдает ошибку: Error getting supported devices.

    один я такой невезучий? :)

    AVR Studio Version: 4.18 Build 684
    Wine Version: 1.3.15-1
    OS: Archlinux

  23. r3w101 говорит:

    а если не установить все это добро:
    - corefonts
    - dcom98
    - gdiplus
    - gecko
    - mdac28
    - msxml3
    - vcrun2005
    - allfonts
    - fakeie6

    то смогу ли я работать пока в режиме AVR Simulator в avr studio?

Добавить комментарий