Перейти к содержанию
    

В общем, придумал я себе новую, весьма интересную задачу - разработку приложения "Hello world" для какого-нибудь 32-битного проца. К которой давно присматривался, но все никак не хватало смелости. Но надо же когда-то начинать). Поскольку знаний примерно ноль, процесс пойдет мучительно, на что не обращайте внимания.

 

Из каких-то смутных соображений выбран cygwin http://cygwin.com/ для среды разработки, macraigor http://www.macraigor.com/full_gnu.htm для компиляторов и отладчиков, и busybox http://busybox.net/ в качестве платформы для моего приложения, исходники которого я уже украл отсюда http://busybox.net/~landley/ols2006.

 

Конечно, м.б. есть более простой путь для любителя Windows, но я его пока не нашел. А пока все это скачивается-перекачивается, появилась первая затыка - cygwin не запускается, вываливается с сообщением "cygintl-8.dll не был найден". Cygwin с дефолтовыми установками сначала скачивался на локальный диск, а затем устанавливался. Сейчас решил перезалить полную версию - может быть это поможет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Конечно, м.б. есть более простой путь для любителя Windows, но я его пока не нашел.

Попробуйте связку Windows + QEMU (если планируете писать "Hello, World" не только для x86 платформ ) + Linux (на виртуальной машине под QEMU + BusyBox там же).

 

Или Windows + VirtualBox (или VMware Workstation или VMware Server) + Linux (на виртуальной машине + BusyBox там же).

 

---

С такими вещами, как busybox, по-моему, лучше разбираться и работать в их родной среде -- Linux --> *nix.

Может, поначалу, всё покажется сложным и непривычным.

Но "оно того стоит". :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

"Hello, World" - только не для x86.

Линухи (пока) живут под VMware. В принципе, под qnXы, линуХы, etc есть отдельный диск. Если (вдруг) под линухом окажется так же удобно работать, как под win, может быть переберусь под него. Вопросы лицензионности win в даннном случае не критерий - все куплено.

Почитал про QEMU - возможно да, попробую. Пока нужно как-то запустить Cygwin.

На днях поставил несколько линухов, больше всего понравился ubuntu. Но GCC и иже с ним в ubuntu я не нашел.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот тут подсказали, что GCC в Ubuntu есть. Он и правда запускается, хотя файло я не нашел. Наверно так же, как и с пингом и трейсроутом - файло отсутствует, а пинговать можно. Шаманы.

Вот еще дали линку на IDE http://www.codeblocks.org/downloads/5 - судя по картинкам - то, что надо.

Изменено пользователем Огурцов

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не успеваю качать. Вот еще линка, должно быть интересная http://monodevelop.com/Main_Page - похоже система аля MS FrameWork+C#

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот тут подсказали, что GCC в Ubuntu есть. Он и правда запускается, хотя файло я не нашел. Наверно так же, как и с пингом и трейсроутом - файло отсутствует, а пинговать можно. Шаманы.

Изучите содержимое каталогов:

/bin; /usr/bin; /sbin, есть еще интересные каталоги. Шаманство пройдет. Документация по GCC вполне достаточная для работы. Полезно прочитать руководство по make.

Для KDE среда разработки Kdevelop часто используется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Против шаманства нужно было установить пакет build-essential.

Mono тоже с бубном устанавливался - на сайте в хелпе sudo apt-get install monodevelop, а в реале -

mono mono-gmcs mono-gac mono-utils monodevelop monodoc-browser monodevelop-nunit monodevelop-versioncontrol

Вот еще пара линков, как его ставить:

http://www.mono-project.com/Other_Download...cial_Packages_2

http://directhex.mfgames.com/hardy.html

 

Еще одно IDE: http://www.eclipse.org/ - вроде бы ничотак, но тормозит. И пока только жаба. Как подключить C++, а тем более дргие платформы еще не понял.

 

Другими словами, сейчас компилится и пущается _из под IDE_ GCC, C#, JAVA.

Но есть затыка. Как в линухе запускают приложения с консоли ? Т.е. получился, например, файл demo (тип исполняемый) в каталоге demo/bin/Debug с атрибутами -rwxr-xr-x 1 username username 7203 дата время. Какое нужно заклятие, чтобы он запустился ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Еще одно IDE: http://www.eclipse.org/ - вроде бы ничотак, но тормозит. И пока только жаба. Как подключить C++, а тем более дргие платформы еще не понял.

 

Есть ветка GNU, Eclipse и др., где Eclipse обсуждается. Прикручивается любой компилятор с помощью makefile.

 

Другими словами, сейчас компилится и пущается _из под IDE_ GCC, C#, JAVA.

Как в линухе запускают приложения с консоли ? Т.е. получился, например, файл demo (тип исполняемый) в каталоге demo/bin/Debug с атрибутами -rwxr-xr-x 1 username username 7203 дата время. Какое нужно заклятие, чтобы он запустился ?

Атрибуты файла можно выставить через makefile. В нем можно указать необходимые команды для обработки.

 

./demo - запуск из текущего каталога, но надо иметь права на запуск у пользователя.

 

В общем любая книга по Linux/Unix в помощь. (или RTFM :) )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

./demo - запуск из текущего каталога, но надо иметь права на запуск у пользователя.

О! Персональное спасибо! Буду сегодня спать спокойно - сабж заработал. Полдела сделано. Теперь начинается вторая половина - чтобы оно заработало на таргете.

 

В общем любая книга по Linux/Unix в помощь. (или RTFM :) )

RTFM - как много в этом звуке...

Изменено пользователем Огурцов

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Hello World в Cygwin

http://www.e-zine.excode.ru/online/2/cygwi...in_windows.html

 

 

Битва продолжается:

$ ./gcc.exe hello_world.c -o hello_world.exe

gcc: error trying to exec 'cc1': execvp: No such file or directory

Вообще, cc1.exe есть, но в другой папке - нужно наверно как-то конфигурировать. В makefile`ах такого параметра (еще) не видел.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Интересный документик: cygwin/usr/local/info/configure.info Наихудшие опасения про иксы подтверждаются. Если не превзойдены.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 
./gcc.exe hello_world.c -o hello_world.exe

Это не запуск make, это руками. "Штатное" использование make: make или make makefile и возможно указание цели запуска (make all; make clean и др.) Найдите в примерах makefile и отредактируйте под свою задачу. В Winavr есть хороший пример для сборки. О работе make были обсуждения в ветке про GNU tools.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Интересный документик: cygwin/usr/local/info/configure.info Наихудшие опасения про иксы подтверждаются. Если не превзойдены.
А что такое?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чувствую себя полным дауном )

 

 

Это не запуск make, это руками.

Эт понятно. Не понятно, можно ли в makefile прописать пути или это нужно делать через configure ? Пока я вижу решение в лоб - выкинуть дефолтовый gcc&co и заменить на кросс.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Заменил оригинальные файлы на кроссовые - gcc уже работает. Не работает ld:

ld: crti.o: No such file: No such file or directory

Интересно, что crti.o вообще нет никакого в cygwin, хотя поставил вроде бы весь. Нашел его в баунти-8.0.4, но он, вероятно, для i386. Нашел crti.S в uClibc, как собриать - не известно, под cygwin (уже?) не собирается.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...