Serge,
дополнение
просто подменив libc.dll -- Fplay работает
создал "песочницу", на отдельном диске для чистоты эксперимента -- Fplay работает
теперь нужно собрать Fplay, используя исходники newlib
Newlib
pascualle
Объявление есть в fplay.h, конечно надо перенести в kos32sys.h. Функция обязательна при создании потоков, использующих функции newlib.
int create_thread(int (*proc)(void *param), void *param, int stack_size);
Объявление есть в fplay.h, конечно надо перенести в kos32sys.h. Функция обязательна при создании потоков, использующих функции newlib.
int create_thread(int (*proc)(void *param), void *param, int stack_size);
Если это игровой движок, смотри исходники Doom: i_sound.c s_sound.c функции I_UpdateSound() S_Init() sound_proc()....какой мне пример для изучения брать лучше?
Spoiler:
Doom собирался OpenWatcom с ваткомовской же CLib, поэтому есть расхождения в именах функций.Serge,
осваиваю звук, newlib содержит файл kolibri\contrib\sdk\sources\newlib\libc\include\sound.h, но не содержит ни obj-файла, ни lib-файла, ни исходника, реализующего функционал. Приходит на мысль, что реализация находится по пути (svn)/programs/develop/sdk/trunk/sound/src. Так ли это?
update:
спасибо!
осваиваю звук, newlib содержит файл kolibri\contrib\sdk\sources\newlib\libc\include\sound.h, но не содержит ни obj-файла, ни lib-файла, ни исходника, реализующего функционал. Приходит на мысль, что реализация находится по пути (svn)/programs/develop/sdk/trunk/sound/src. Так ли это?
update:
спасибо!
Last edited by pascualle on Thu Aug 07, 2014 3:17 pm, edited 1 time in total.
pascualle
Сделал мейкфайлы, смотри последние коммиты на svn
Сделал мейкфайлы, смотри последние коммиты на svn
Serge,
Проверил работоспособность newlib, sdk, fplay
библиотека render
обнаружено две опечатки, исправил
contrib\sdk\sources\render\render.c
библиотека pixman
не правильно формируется имя библиотеки, нужно переименовать pixlib.dll.a --> libpixlib.dll.a
переименовал вручную
fplay работает
Все исправления, отчет о работе и бинарники здесь:
https://bitbucket.org/pascualle/tengine ... 080814.zip
(доступ временный, скачай пожалуйста)
очень надеюсь увидеть новую newlib в дистрибутиве kolibrios
Проверил работоспособность newlib, sdk, fplay
библиотека render
обнаружено две опечатки, исправил
contrib\sdk\sources\render\render.c
библиотека pixman
не правильно формируется имя библиотеки, нужно переименовать pixlib.dll.a --> libpixlib.dll.a
переименовал вручную
fplay работает
Все исправления, отчет о работе и бинарники здесь:
https://bitbucket.org/pascualle/tengine ... 080814.zip
(доступ временный, скачай пожалуйста)
очень надеюсь увидеть новую newlib в дистрибутиве kolibrios
В ISO образ можно размещать почти все, но вот в IMG образ класть тяжелые ЯВУ библиотеки не стоит, там и так места впритык.pascualle wrote:очень надеюсь увидеть новую newlib в дистрибутиве kolibrios
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
Удалить тяжелые игры, демки, 3D и появиться относительно много места для нужных вещей.
На самом деле все тяжелые "игры, демки, 3D" уже давно удалены. То что осталось "тяжелого" потянет на 150 КБ, а если удалить все то для 80-90% тех кто хоть раз запускает систему она вообще потеряет интерес.Unusual wrote:Удалить тяжелые игры, демки, 3D и появиться относительно много места для нужных вещей.
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
Сейчас необходимая для запуска newlib-based программ libc.dll весит 232кБ.
Много это или мало -- решать не мне, но я знаю точно, что поддержка ЯВУ привлекает разработчиков прикладных программ, что в свою очередь популяризирует операционную систему.
В данном случае речь идет о с/с++, потому надо канонизировать единую библиотеку и включить ее в дистрибутив IMG, все это сделает мир чуточку светлее, поверьте мне.
Много это или мало -- решать не мне, но я знаю точно, что поддержка ЯВУ привлекает разработчиков прикладных программ, что в свою очередь популяризирует операционную систему.
В данном случае речь идет о с/с++, потому надо канонизировать единую библиотеку и включить ее в дистрибутив IMG, все это сделает мир чуточку светлее, поверьте мне.
Если упаковать будет 95Кб, но одной libc мало. Всё равно нужен дистрибутив с установщиком на диск.
Торвальдс обpascualle wrote:В данном случае речь идет о с/с++, потому надо канонизировать единую библиотеку и включить ее в дистрибутив IMG, все это сделает мир чуточку светлее, поверьте мне.
http://harmful.cat-v.org/software/c++/linus
Подробности на русском:
https://toster.ru/q/27307
Spoiler:
Мир уже наполнен говном, в нем нет места свету.Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
Mario_r4,
довольно странны слова твои, как по мне, похоже на какое-то агрессивное православие (с)
Хочу заметить, что мы находимся в ветке "Проекты » Прикладные библиотеки", это автоматически означает, что никто не зарится на целостность и принципы операционной системы kolibriOS. С другой стороны, ни для кого не секрет, что только прикладные программы делают операционную систему популярной. Логично, что разработчики тоже должны разделяться на две группы.
Первая группа -- kernel-разработчики, довольно закрытое сообщество, бдящие принципы операционной системы. Тут все понятно, ядро должно быть стабильным, неубиваемым и быстрым. Здесь четко определен язык разработки, стиль кода, критерии приемки и т.д.
Вторая группа -- разработчики прикладных программ. Единственное что их связывает -- операционная система. Никто не в праве запретить разработчику этой группы на чем писать и как писать, ибо прикладная программа пишется для пользователей. Только пользователи решают -- будут они пользоваться этой программой, или же сочтут ее как не соответствующей их потребностям. Чем больше языков программирования поддерживается операционной системой -- тем она более привлекательнее для разработчиков.
Теперь о с/с++. Я сам многие годы пишу на с и на с++, четко их разделяя. Мое мнение простое: каждому инструменту -- свое применение.
довольно странны слова твои, как по мне, похоже на какое-то агрессивное православие (с)
Хочу заметить, что мы находимся в ветке "Проекты » Прикладные библиотеки", это автоматически означает, что никто не зарится на целостность и принципы операционной системы kolibriOS. С другой стороны, ни для кого не секрет, что только прикладные программы делают операционную систему популярной. Логично, что разработчики тоже должны разделяться на две группы.
Первая группа -- kernel-разработчики, довольно закрытое сообщество, бдящие принципы операционной системы. Тут все понятно, ядро должно быть стабильным, неубиваемым и быстрым. Здесь четко определен язык разработки, стиль кода, критерии приемки и т.д.
Вторая группа -- разработчики прикладных программ. Единственное что их связывает -- операционная система. Никто не в праве запретить разработчику этой группы на чем писать и как писать, ибо прикладная программа пишется для пользователей. Только пользователи решают -- будут они пользоваться этой программой, или же сочтут ее как не соответствующей их потребностям. Чем больше языков программирования поддерживается операционной системой -- тем она более привлекательнее для разработчиков.
Теперь о с/с++. Я сам многие годы пишу на с и на с++, четко их разделяя. Мое мнение простое: каждому инструменту -- свое применение.
Прикладные программисты, если они пишут программу с нуля, также должны пытаться сделать ее максимально менее требовательной к ресурсам компьютера и быстрой в работе.
to infinity and beyond
Это не православие - это у меня FASM. Заболевание неизлечимое, ну, разве что совсем бросить программировать.pascualle wrote:Mario_r4,
довольно странны слова твои, как по мне, похоже на какое-то агрессивное православие (с)
Насчет инструментов мог бы и согласиться, но "... широк человек, слишком даже широк, я бы сузил."
З.Ы. Не надо понимать мои слова превратно. В проекте никто никому не запрещает пользоваться чем душе угодно. Однако стремление к оптимизации кода, в том числе за счет используемых инструментов, очень приветствуется.
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
Обновились кросскомпиляторы от Serge.
Инструкция по установке не поменялась, находится здесь (пункты "Установка toolchain" и "Установка libc", обновить (root)/contrib/sdk/sources/newlib)
В дистрибутиве "25 авг 2014" находится более старая и не совместимая с текущим транком newlib библиотека libc.dll, так что после сборки приложения нужно подменить старую библиотеку на новую (или воспользоваться функционалом "searchapp")
p.s. Serge как всегда спасибо и почет!
Инструкция по установке не поменялась, находится здесь (пункты "Установка toolchain" и "Установка libc", обновить (root)/contrib/sdk/sources/newlib)
В дистрибутиве "25 авг 2014" находится более старая и не совместимая с текущим транком newlib библиотека libc.dll, так что после сборки приложения нужно подменить старую библиотеку на новую (или воспользоваться функционалом "searchapp")
p.s. Serge как всегда спасибо и почет!
Who is online
Users browsing this forum: No registered users and 18 guests