Вапрос - Версия для печати +- DC-SWAT Forum (http://www.dc-swat.ru/forum) +-- Форум: Sega Dreamcast (/forum-2.html) +--- Форум: Programming (/forum-8.html) +--- Тема: Вапрос (/thread-1543.html) |
RE: Вапрос - Rio - 02.04.2011 14:53 Не компилится. 36: missing separator (в этой строке: $(KOS_CC) $(KOS_CFLAGS) $(KOS_LDFLAGS) -o $(TARGET) $(KOS_START) $(OBJS) $(OBJEXTRA) ) далее. при попытке поставить двоеточие между $KOS_CC и KOS_CFLAGS пишет ошибку в 37 (то же самое). ставим и там двоеточие, пока не: mutiple target patterns, stop. Проверь у себя еще раз и если у тебя запустится то значит у меня косяки. PHP код: # RE: Вапрос - SWAT - 02.04.2011 15:26 Проверь чтобы перед каждой командой стояла табуляция. Именно табуляция! Там у тебя скорее всего пробелы. Никаких двоеточий нам лепить не нужно. RE: Вапрос - Rio - 02.04.2011 17:34 RE: Вапрос - SWAT - 02.04.2011 18:42 Замени это PHP код: all: rm-elf $(TARGET) на это PHP код: all: $(TARGET) Вообще конечно странно, у тебя прописана эта команда в Makefile, почему он говорит что ее нет... Может быть ты удалил случайно это? PHP код: rm-elf: RE: Вапрос - Rio - 02.04.2011 20:19 Сват, можешь скинуть полный текст рабочего makefile'а? Пожалуйста. RE: Вапрос - Rio - 02.04.2011 20:48 No rule to make target hello.elf RE: Вапрос - SWAT - 03.04.2011 10:56 Лови. Я проверил, работает. PHP код: # KallistiOS ##version## RE: Вапрос - Rio - 04.04.2011 20:30 О чё добился! Однако хотелось бы, чтобы буковки "Hello, World!" выводились на экран приставки, а не в консоль-дебаг. RE: Вапрос - sc_maxim - 04.04.2011 22:42 Используй для этого SDL_ttf. ну по крайней мере я через нее выводил Щас напишу пример. RE: Вапрос - Rio - 04.04.2011 23:26 Спасибо большое)) И еще, где-то объясняется значение этих переменных? PHP код: $(TARGET).elf: $(OBJS) RE: Вапрос - sc_maxim - 05.04.2011 02:10 Вот текст программы: PHP код: #include <kos.h> PHP код: # ljsdcdev RE: Вапрос - SWAT - 05.04.2011 06:10 (04.04.2011 23:26)Rio писал(а): Спасибо большое)) И еще, где-то объясняется значение этих переменных? В файлах environ которые лежат в корне kos. Для простого вывода текста на экран можно использовать bfont (bios font). RE: Вапрос - Rio - 10.04.2011 18:29 sc_maxim, где именно должны стоять символы табуляции, а где можно оставить пробелы? Возможен ли перенос строк? Если да, то каких? PHP код: Exception: STATUS_ACCESS_VIOLATION at eip=6100F02F Вообще, почему так сложно писать эти make-файлы? RE: Вапрос - SWAT - 11.04.2011 05:58 Табуляция должна быть перед командами, все остальное можно пробелами. Если ты хочешь перенести часть строки с командой на новую, то ставь на месте переноса \ (бэкслеш). Писать makefile не сложно, если знать их принцип. Попробуй скомпилить сам genromfs. RE: Вапрос - Rio - 12.04.2011 20:53 Та принцип то мне в приципе понятен.... Просто непонятны некоторые закарлючки там, типа символа собаки и т.п. Ладно, неважно все это... Вобще, честно говоря, грустно мне немного как-то. Думал, скачаю КОС, почитаю, ну максимум там, апи, и буду писать свои проги под дрим... А оказалось столько всего изучить надо - и компиляторы (все другое, не такое как в винде), и командную строку, и makefile'ы, и принцип организации кос, и вообще кучу кучу всего... вот так и разбиваются мечты "юных" девелоперов. за день напишу пинг-понг... ага, куда там... Эх! А ведь так хотелось, так... RE: Вапрос - SWAT - 13.04.2011 06:19 Ну а как ты хотел По сути это *nix style программирование. Собака отключает вывод результата команды в консоль. RE: Вапрос - Rio - 13.04.2011 20:29 Сват, а есть какие-то 3d-движки ну или хотя бы интерфейся для создания 3d-графики на Дриме? Библиотеки там, я хз. RE: Вапрос - SWAT - 14.04.2011 10:38 Ну только порты типа кваки и yeti3d. А так только API PVR и OpenGL. RE: Вапрос - Rio - 13.05.2011 16:04 Вот кстати идея возникла. Недавно в какой-то умной книжке прочитал, что все библиотечные функции по умолчанию линкуются по одним и тем же адресам. соответственно, возрастает шанс декомпиляции дримовских программ. это так или нет? (насчет линковки)? RE: Вапрос - SWAT - 13.05.2011 17:26 На сколько я понимаю сей процесс, они линкуются в том порядке, в котором они прописаны компилятору. Так как стандартные библиотеки прописаны по умолчанию в конфигах, то соответственно они как правило сидят в одних и тех же местах. Но вот дополнительные библиотеки могут распихивать как угодно. То же касается компилируемых исходников, если файлы поменять местами в порядке линковки, то они будут находится по другим адресам. Поэтому то и при компилировании в начало линковки ставят asm код для инициализации железа. Если его поставить вторым или еще каким, но не первым, программа не запустится, так как в начале будет что то другое. Так что тут зависит от среды, если эта полностью автоматизированная среда, аля Visual Studio, то там вполне может так и быть. Но я за это не ручаюсь, не читал нужной литературы, все выводы только по собственному опыту делал. |