Объявление форума |
Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС. |
Полигон-2 » Старый софт » GNU-компилятор под DOS |
<<Назад Вперед>> | Страницы: 1 * | Печать |
alecv
Advanced Member
Откуда: Санкт-Петербург Всего сообщений: 5545 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 5 окт. 2004 |
F0lken а cross binutils собираются ? |
alecv
Advanced Member
Откуда: Санкт-Петербург Всего сообщений: 5545 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 5 окт. 2004 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 3 сентября 2009 1:30 Сообщение отредактировано: 3 сентября 2009 1:31
Собрал binutils-2.19 стандартные $ ./configure --target=i386-msdosdjgpp --prefix=/opt/cross-i386-msdosdjgpp Написал Hello World в AT&T синтаксисе (чтобы страшнее было ) в принципе gas gонимает и интел синтаксис: $ cat hello.S Оно компилится и линкуется: $ i386-msdosdjgpp-as -a -o hello.o hello.S Но к сожалению добавляет туда DOS-extender "go32" и EXE-шник получается 3Кб, хотя EXE-шник выглядит правильно, начинается с MZ. Попробовать негде, только если qemu с Free-DOS поставить |
F0lken
Advanced Member
Всего сообщений: 762 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 7 нояб. 2006 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 3 сентября 2009 11:13 Сообщение отредактировано: 3 сентября 2009 11:14
Спасибо про инфу про SDL. По поводу DJGPP - тоже нашел инструкцию по сборке http://www.delorie.com/howto/d...vised.html Правда там компилятор не собирается =). Известный баг, если собирать более старшей версией. Вобщем идея такая, что нужно брать все совсем последнее и мысленно апгрейдить инструкцию. Там же в конце (и в начале) есть инструкция, как создавать нормальные exe-файлы. А под netbsd есть отдельный порт в pkgsrc... Который все это собирает и делает. |
alecv
Advanced Member
Откуда: Санкт-Петербург Всего сообщений: 5545 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 5 окт. 2004 |
F0lken В этой доке описывается как запустить этот самый EXE-шник, со встроенным DJGPP/GO32 и где взять его запчасти (DPMI сервер). А как сделать "чистый" EXE, без DPMI, я не нашел. Похоже с помощью стандартного ld для --target=i386-msdosdjgpp не получится изготовить стандартный .EXE, но вроде как можно делать .COM файлы. |
alecv
Advanced Member
Откуда: Санкт-Петербург Всего сообщений: 5545 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 5 окт. 2004 |
Сделал MS-DOS .COM файл. $ i386-msdosdjgpp-as -a=hello.lst -o hello.o hello.S hello.map и hello.lst генерятся для красоты. Формат - настоящий COM, то есть в файле первые 0x100 байт пропущены, а все смещения как будто он загрузился с 0x100. 00000000 BA 00 02 B8 │ 09 00 CD 21 │ CD 20 90 90 │ 90 90 90 90 ?..?..?!? ...... hello.com получается 768 байт т.к. в скрипте линкера имеются два ". = ALIGN (0x200)". Если переписать скрипт, то можно генерить короткие COM-файлы. Теперь можно и GCC пробовать. |
0leg
Advanced Member
Откуда: Город-герой Тула Всего сообщений: 1991 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 6 окт. 2007 |
У мну всё нормально собралось. GCC 4.3.3, Binutils 2.19.1, djcxr204.zip (компилил по инструкции из него). Дистр — Slackware 12.2 (GCC 4.2.4, binutils 2.18.50.0.9.20080822).Только вот я gcc32s2.zip не использовал. И часть файлов пришлось после установки перенести руками в правильные места. |
alecv
Advanced Member
Откуда: Санкт-Петербург Всего сообщений: 5545 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 5 окт. 2004 |
0leg"Hello World" EXE на C сколько занимает (после strip) ? Не пробовал избавиться от go32 ? |
0leg
Advanced Member
Откуда: Город-герой Тула Всего сообщений: 1991 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 6 окт. 2007 |
alecv, > колько занимает (после strip) ? 52736 байт. То же самое, но скомпейлированное линуховым ГЦЦ под линух занимает 2752 байта... > Не пробовал избавиться от go32 ? Пока нет. |
<<Назад Вперед>> | Страницы: 1 * | Печать |
Полигон-2 » Старый софт » GNU-компилятор под DOS |
1 посетитель просмотрел эту тему за последние 15 минут |
В том числе: 1 гость, 0 скрытых пользователей |
Последние | |
[Москва] LIQUID-Акция. Сливаются разъемы CF МС7004 и 7004А на AT и XT Пайка термотрубок Проммать s478 PEAK 715VL2-HT ( Full-Size SBC) Подскажите по 386 материке по джамперам. |
Самые активные 5 тем | |