Русские Блоги
Как использовать eclipse для разработки встраиваемого Linux
Как использовать eclipse для разработки встраиваемого Linux
Автор:Цзэн Хунган,Академия Huaqing Vision Embeddedстарший преподаватель.
Как использовать eclipse для разработки встраиваемых систем Linux Программисты, которые привыкли разрабатывать в среде Windows, часто жалуются, когда переходят на платформу Linux, что нет простой интегрированной среды разработки. По сравнению с некоторыми обычно используемыми программами разработки под Windows, некоторые среды разработки, поставляемые с Linux, либо неудобны и дружественны по интерфейсу и работе, либо являются неполными. Фактически, мы можем найти удобную и мощную среду разработки в сообществе открытого исходного кода. Позвольте мне представить вам платформу разработки eclipse, которая может работать в Linux и имеет интерфейс и функции, аналогичные программному обеспечению для Windows.
eclipse — хорошо известная кроссплатформенная интегрированная среда разработки (IDE), изначально разработанная IBM для замены коммерческого программного обеспечения Visual Age For Jave. В 2001 году IBM представила eclipse сообществу разработчиков ПО с открытым исходным кодом, которым сейчас управляет eclipse foundation. В июле 2005 года была выпущена стабильная версия eclipse 3.1.0, а последняя стабильная версия — 3.4.
Сам eclipse — это просто фреймворк, изначально в основном использовавшийся для разработки языка java. Но поддержка многих надстроек позволяет использовать eclipse для разработки других языков, таких как c / c ++, c #, perl, cobol и т. Д. cdt (набор средств разработки c / c ++) — это надстройка, поддерживающая разработку на c / c ++. Многие разработчики программного обеспечения также запустили собственную интегрированную среду разработки на основе eclipse. Поскольку платформа eclipse реализована на java, среда выполнения нуждается в поддержке jre (среда выполнения java). Ниже мы возьмем ubuntu (своего рода дистрибутив Linux) в качестве примера, чтобы представить, как использовать eclipse + cdt в Linux для разработки встроенных приложений Linux.
1. Установите программное обеспечение.
Есть два способа установить программное обеспечение в ubuntu: использовать apt-get для автоматической установки или установить вручную. Пользователям очень удобно пользоваться автоматической установкой, подходит для новичков. Однако процесс установки слишком зависит от состояния подключения к веб-сайту ресурса и может занять слишком много времени. Здесь мы рекомендуем ручную установку, которая занимает короткое время.
1. Установите jdk
jdk (java development kit) — это набор для разработки java, который содержит jre, необходимый для запуска eclipse. Версия jre для gnu, установленная по умолчанию в ubuntu, неэффективна, поэтому нам нужно установить jre компании Sun. Сначала с веб-сайта sun (http://java.sun.com/javase/downloads/index.jsp) Загрузите установочный пакет jdk-6u7-linux-i586.bin, а затем установите его следующим образом:
# mkdir -p /opt/java
# ./Jdk-6u7-linux-i586.bin // Запускаем самораспаковывающийся файл и генерируем каталог
# Mv jdk1.6.0_07 / opt / java // Переместить каталог в / opt / java
# cd /opt/java
# ln -s jdk1.6.0_07 jdk
# mv /etc/alternatives/java /etc/alternatives/java.gnu
# ln -s /opt/java/jdk/bin/java /etc/alternatives/java
# Экспорт JAVA_HOME = / opt / java / jdk // Установить переменные среды
2. Установите eclipse и cdt
Загрузите установочный пакет eclipse-SDK-3.4-linux-gtk.tar.gz и cdt-master-5.0.0.zip с веб-сайта eclipse (http://www.eclipse.org/)
# cd /opt
# Tar zxvf eclipse-SDK-3.4-linux-gtk.tar.gz // Разархивируйте для создания каталога eclipse
# export PATH=/opt/eclipse:$PATH
# mkdir -p /opt/cdt
# cd /opt/cdt
# unzip cdt-master-5.0.0.zip
# cp -r plugins/* /opt/eclipse/plugins/
# cp -r features/* /opt/eclipse/features/
Во-вторых, создайте проект c / c ++
Предполагая, что мы установили цепочку инструментов arm cross в Linux, ниже описывается, как создавать, кросс-компиляцию и отладку проекта c / c ++. Для более интуитивного объяснения мы сделали соответствующие снимки:
После ввода пути установки eclipse запустите eclipse
интерфейс запуска eclipse
Используйте стандартный набор инструментов Linux GCC
Добавить файл исходного кода 1
Добавить файл с исходным кодом 2
Задайте свойства проекта, укажите перекрестную цепочку инструментов 1
Задайте свойства проекта, укажите кросс-инструментальную цепочку 2
Задайте свойства проекта, укажите кросс-инструментальную цепочку 3
Создан исполняемый код платформы Arm
Настроить параметры отладки
Установите параметры отладчика и отладчика GDB
Установите тип соединения TCP, IP-адрес целевой платы и номер порта отладки. Номер порта указывается произвольно, обычно больше 1024 (во избежание конфликта с номером порта, используемым системой)
Запустите программу на плате разработки, формат показан на рисунке выше: gdbserver — вспомогательная программа для кросс-отладки; 192.168.0.150 — IP-адрес хоста; 1234 — номер порта отладки, который должен соответствовать номеру порта, установленному в параметрах отладки eclipse.
Нажмите Debug, чтобы войти в интерфейс отладки.
Выполнение до точки останова
Интерфейс отладки и работа eclipse аналогичны тем, которые разрабатываются под Windows, и я считаю, что на этом этапе каждый может уже очень удобно разрабатывать приложения.
Необходимые инструменты разработки и среда
- Виртуальная машина Linux: Fedora 9
- Инструмент кросс-компиляции: arm-linux-gcc-3.4.1.tar.bz2
- Интегрированные инструменты разработки: Eclipse (входит в установочный пакет Linux, выберите установку при установке Linux)
1. Установка. На самом деле это очень просто, просто распакуйте загруженный файл arm-linux-gcc-3.4.1.tar.bz2 в корневой каталог Linux (поскольку каталог / usr / local уже включен после распаковки, поэтому распакуйте его в корневой каталог), как показано ниже. команда:
tar -jxvf arm-linux-gcc-3.4.1.tar.bz2 -C /
Распакованный каталог показан ниже:
Распакованный каталог /usr/local/arm/3.4.1/
2. Задайте переменные среды. Он предназначен для установки пути кросс-компилятора к системной переменной среды.
Просмотрите существующие переменные среды, как показано ниже:
Если вы хотите только временно добавить переменные среды кросс-компилятора (примечание: временно добавленная система больше не существует после перезапуска или выхода из системы), просто введите следующую команду в командной строке:
Добавленные переменные среды показаны на рисунке ниже: (еще один /usr/local/arm/3.4.1/bin)
Если вы хотите, чтобы эта переменная среды была постоянно добавлена в переменную среды системы, вам нужно только добавить эту команду в последнюю строку файла /root/.bashrc (этот файл является скрытым файлом, вы должны открыть его в файловом браузере Щелкните меню Вид, установите флажок Показывать скрытые файлы, чтобы увидеть)
3. Протестируйте установленную среду кросс-компиляции. Создайте новую программу c, имя файла: test.c, как показано ниже:
int main(void)
printf(«Hellow world!\n»);
return 0;
>
Выполните кросс-компиляцию следующим образом:
Загрузите кросс-скомпилированный тест целевого файла на плату разработки ARM и запустите его следующим образом:
Используйте интегрированный инструмент разработки Eclipse для разработки встраиваемых приложений.
Дважды щелкните значок Eclipse, чтобы запустить Eclipse.
Чтобы установить рабочее пространство Eclipse, выберите каталог и нажмите OK.
Главный интерфейс после запуска
Начать новый проект приложения
Выберите создание нового проекта C, нажмите Далее
Дайте проекту имя, здесь я называю его test_app; затем выбираю тип проекта, я выбираю шаблон проекта Hellow world C, нажимаю Далее
Введите автора, авторские права и другую информацию, нажмите Далее.
Нечего выбирать, нажимаем Готово
Разверните каталог исходного кода слева и дважды щелкните, чтобы открыть основную функцию. Вот только вывод «Hello World . », вы можете делать другие сложные приложения
Щелкните меню «Проект» и снимите флажок «Создавать автоматически», потому что если этот флажок установлен, проект будет компилироваться автоматически каждый раз, когда вы изменяете место.
Откройте диалоговое окно свойств проекта, чтобы задать параметры компиляции.
Наше приложение в конечном итоге будет работать на встроенной руке, здесь нам нужно изменить gcc на компилятор arm-linux-gcc, конечно, предпосылка состоит в том, что вы должны сначала установить arm-linux-gcc на свой хост разработки
Разъем C также следует поменять на arm-linux-gcc
Библиотеки здесь предназначены для настройки файлов библиотеки, используемых в вашем приложении.Например, если в приложении используется класс потока, добавьте библиотеку pthread выше и добавьте путь к библиотеке ниже. Если приложение не использует файлы библиотеки, просто проигнорируйте его.
Выберите имя проекта слева, щелкните правой кнопкой мыши и выберите во всплывающем меню команду «Создать проект», чтобы скомпилировать проект.
Скомпилированный проект, целевой файл находится в каталоге Debug
Создание среды кросс-компиляции — это первый шаг в разработке встроенных программ.Также существует множество версий компилятора, и здесь представлена наиболее часто используемая. И Eclipse — это наиболее удобный интегрированный инструмент разработки, который я считаю наиболее удобным для разработки встраиваемых приложений. Он не только делает весь проект четко видимым, но, что более важно, не требует написания сложного Makefile для всего проекта. Он автоматически сгенерирует его для вас. Makefile.
Установите среду кросс-компиляции arm arm-linux-gcc на ubuntu
Сначала загрузите arm-linux-gcc-4.3.2.tgz, я не буду больше говорить об этом, но я сосредоточусь на том, как его установить. Скопируйте файл arm-linux-gcc-4.3.2.tgz в основную папку Ubuntu, создайте новый терминал в Ubuntu, запустите его от имени пользователя root и введите следующую команду для установки кросс-компилятора:
#tar zxvf arm-linux-gcc-4.3.2.tgz
После распаковки будет создана папка usr. Скопируйте папку arm usr / local / arm из этого каталога в каталог usr / local файловой системы. Команда
#mv usr/local/arm usr/local
Затем добавьте путь кросс-компилятора к переменной системной среды,
Выполните в терминале:
gedit /etc/profile
Добавьте в файл следующие четыре строки:
export PATH=/usr/local/arm/4.3.2/bin:$PATH
export TOOLCHAIN=/usr/local/arm/4.3.2
export TB_CC_PREFIX=arm-linux-
export PKG_CONFIG_PREFIX=$TOOLCHAIN/arm-none-linux-gnueabi