|
12 / 10 / 2
Регистрация: 06.09.2022
Сообщений: 425
|
|
Проблемы с подключением Allegro 5 к DEV C++ 5.1114.06.2026, 13:15. Показов 9434. Ответов 183
Метки нет (Все метки)
Allegro 5 - это библиотека для 2D игр типа SFML только низкоуровневая, решил в ней покопаться, потому что там графика идёт на любой видяхе даже без драйверов.
Не находит библиотеку allegro_image.h ! Где это взять ? У кого то вообще Allegro 5 присоединялась к DEV C++ 5.11 ,,,,,,???
0
|
|
| 14.06.2026, 13:15 | |
|
Ответы с готовыми решениями:
183
Dev-C++, а именно allegro Проблемы с Allegro на MinGW Есть ли разница между подключением статической библиотеки и подключением одного только файла |
| 07.07.2026, 20:12 | |||
0
|
|||
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
||
| 07.07.2026, 21:23 | ||
|
0
|
||
| 08.07.2026, 12:30 | ||||
0
|
||||
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
|
| 08.07.2026, 13:05 | |
|
Igor3D, в серьезных случаях я даже сделал бы не отдельные потоки, а даже отдельные процессы.
Вот, возьмем к примеру Google Chrome. Ты глянь, сколько процессов он создает. - процесс самого браузера - процесс рендера для каждой открытой вкладки ! - процесс GPU - процесс сети и т.д. А почему браузер создает по процессу для каждой открытой вкладки? Потому что, это перестраховка. Если на какой-то вкладке/странице случится глюк и прочее, то чтобы эта вкладка во время своей гибели не убила сам браузер. В случае краша и прочего, уничтожится процесс вкладки, а браузер будет работать дальше. А вот внутри процессов есть уже потоки. А прикинь, ты работаешь в 3d редакторе, при загрузке 3d сцены/модельки случается глюк/краш и весь редактор крашится и ты теряешь работу... В таких глючных редакторах единственное решение это юзать автосохранение с маленьким интервалом. Но фича автосохранения влияет на производительность.
1
|
|
|
23 / 20 / 3
Регистрация: 07.06.2026
Сообщений: 116
|
|
| 08.07.2026, 13:44 | |
|
Royal_X, современные браузеры стали намного лучше обрабатывают ситуации когда страница потребляет память до упора или уходит в "бесконечный цикл", не вешая при этом ОС/ПК и даже себя.
Но это связанно не только с многопроцессорной архитектурой. Потому что с этой задачей хорошо начали справляться относительно недавно. Ещё что-то придумали/поправили. С загрузкой сцены может быть и часто бывает в играх. Что при загрузке, вылетает игра, и если ты не сохранился... ![]() А ведь можно и с этим справляться. Как минимум дать возможность сохранится. Учитывая современную архитектуру ПК и ОС, боятся потоков/процессов, архаичность, не более.
1
|
|
|
23 / 20 / 3
Регистрация: 07.06.2026
Сообщений: 116
|
|
| 08.07.2026, 13:59 | |
|
Простой житейский ответ. Никто никому ничего не должен, можешь грузить как хочешь.)
0
|
|
|
12 / 10 / 2
Регистрация: 06.09.2022
Сообщений: 425
|
||||||
| 09.07.2026, 09:38 [ТС] | ||||||
|
Royal_X, вулкан работает медленнее чем Direct X, - это жертва кроссплатформенности !
![]() Добавлено через 1 час 7 минут НЕ РАБОТАЕТ статическая линковка Ни с библиотеками -s Ни с библиотеками -s-d Может надо чтото в makefile.win дописывать ?> Который автоматически создаётся ? в линковщике -lsfml-graphics-s -lsfml-window-s -lsfml-system-s -static-libgcc -static-libstdc++ Проект на релизе, все каталоги прописаны и ничего не работает
Всё, короче можно оставить всё в дебаге и без статика и там всего два DLL от компилятора в папку с проектом закинуть надо ![]() Я то думал он весь компилятор заставит в проект качать
0
|
||||||
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
|||||||
| 09.07.2026, 10:28 | |||||||
|
Но для статика я указываю прям все зависимости, причем порядок, как ты прописываешь либы, тоже имеет значение. для VS 2022 я указываю эти либы
harfbuzz.lib. Но эту либу разрабы начали юзать с версии 3.1 и наверное они забыли обновить документацию. В любом случае, лучше указать все либы и потом комфортно работать. Даже если ты в своем проекте не используешь все эти либы, от того, что ты их всех укажешь, ничего не случится. Скажем, если боишься, что размер бинарника увеличится, то это не так. При статике в бинарник пойдут только те символы, которые ты действительно используешь.
0
|
|||||||
|
23 / 20 / 3
Регистрация: 07.06.2026
Сообщений: 116
|
||
| 09.07.2026, 11:09 | ||
|
Вереница зависимостей символов может тянутся далеко. Но на практике, это больше половины либы. А то что неиспользуемые либы не участвуют в линковке, это да. Не по теме: С доступом на форум опять проблемы. Без ВПН никак, дефолтный с браузеров(например Opera) не подходит.
0
|
||
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
|
| 09.07.2026, 11:27 | |
|
RabbitAttaks, это, кстати, еще одна из причин, почему я не люблю динамическую линковку. Допустим, есть либа на 25 МБ и оттуда тебе лишь нужен один символ. При статике вся 25-мегабайтная либа не пойдет в бинарник. Компоновщик видит, что нужен лишь один символ и затаскивает только этот символ и смотрит дальше, если этот первый символ запросил куски из других символов, то и их затаскивает. И так делает, пока всё нужное не будет выбрано.
Но есть один нюанс. Статик так прекрасно работает, только если либа создана не криво. Если вся либа создана из одного объектного файла, то вся статическая либа пойдет в бинарник. Компоновщик не умеет вырезать куски из объектных файлов. Но, обычно, в приличных библиотеках типа SFML, wxWidgets, Qt и т.д. одна либа (имеется в виду .a / .lib файл) содержит множество .o файлов. Это видно и во время компиляции этих всяких фреймворков, когда множество .cpp файлов сперва компилируется в .o и потом вся группа .o файлов идет в один .a / .lib файл.
0
|
|
|
23 / 20 / 3
Регистрация: 07.06.2026
Сообщений: 116
|
||
| 09.07.2026, 11:30 | ||
|
0
|
||
|
6315 / 3038 / 1054
Регистрация: 01.06.2021
Сообщений: 11,574
|
|||||||||||||||||||||
| 09.07.2026, 12:08 | |||||||||||||||||||||
|
RabbitAttaks, ради интереса проверил
sfml-graphics-s.lib
С другой стороны, начиная с SFML 3.1 для работы со шрифтами, нужно использовать либу harfbuzz.lib, которая весит 13,6 МБ. По крайней мере, загрузка ttf-шрифта без этой либы уже не получается.
0
|
|||||||||||||||||||||
|
23 / 20 / 3
Регистрация: 07.06.2026
Сообщений: 116
|
|||
| 12.07.2026, 00:26 | |||
|
Как будто попал в фильм "Тупой и ещё тупее".
0
|
|||
| 12.07.2026, 14:36 | |||
|
Для веба есть асинхронная загрузка для C/C++ с помощью emscripten_async_wget(), что никак не влияет на рисование. На вебе нужно уложиться в 1-3 секунд первой загрузки, потому что, например, согласно исследованию Google 53% пользователей прекращают загрузку веб-приложения, если оно грузятся дольше 3 секунд. Это цитата из статьи с запрещённого в РФ LinkedIn (перевод с английского с помощью Google Translate):
Я будут стараться избегать работы потоками на вебе (Web Workers) до последнего, когда без этого невозможно уже будет, даже для физического движка. Для небольших проектов это не нужно, это добавит огромное количество сложностей и съест много времени на исправление багов, специфичных для многопоточности, и на саму разработку. Сейчас многие современные физические движки, которые собираются в Wasm, поддерживают SIMD, например: Box2D, Jolt Physics, Bullet Physics и т.д. Да, конечно, если на сцене решу сделать разрушающееся здание на Jolt, то update() физического движка может не уложиться в 16 мс между кадрами отрисовки, но пока такое не нужно. Даже для написания своего сервера на C++ для небольшого мультиплеера можно обойтись без потоков, если найти подходящую либу, с которой можно взаимодействовать ассинхронно. Физика по-любому нужная для многих игр, что в 2D, что в 3D. Сейчас мне интересно знакомиться с новым Box3D, который намного намного легковеснее, чем Jolt Physics, и Box3D почти один в один по API, как Box2D v3, что упрощает работу с ним для тех, но работал и работает с Box2D. Box3D на альфа стадии разработки, но пока его на базовом уровне освоишь, он уже не будет альфа. Это видео от разработчика Box3D на YouTube:
0
|
|||
| 12.07.2026, 19:31 | |||
![]() Однако очень может быть что приложение работает только с одной сценой (в данный момент времени). Тогда загрузка сцены в отдельном потоке - только лишние, ненужные заботы как для программиста, так и для юзера, ведь он не может предпринять ничего разумного пока сцена не загрузится (наоборот, надо еще следить чтобы не нагадил). Правильное решение здесь выставить модальный индикатор прогресса загрузки. "Ложный вынос" - очень популярная ошибка. Ах, гуй залип, в поток, в поток это! И побежал выносить. Да еще ИИ подтвердит ![]() Заметим что "вынос в поток" сам по себе скорость не повышает. И создает ложную иллюзию что потоки - да это, мол, "элементарно", "за 2 минуты", "чего их бояться" и.т.п. Ну это пока переписываются книжные примеры
0
|
|||
|
1070 / 991 / 153
Регистрация: 10.08.2015
Сообщений: 5,427
|
|
| 16.07.2026, 14:39 | |
|
0
|
|
|
1070 / 991 / 153
Регистрация: 10.08.2015
Сообщений: 5,427
|
|
| 16.07.2026, 14:58 | |
|
упс
0
|
|
|
23 / 20 / 3
Регистрация: 07.06.2026
Сообщений: 116
|
|
| 16.07.2026, 15:19 | |
|
1
|
|
|
0 / 0 / 0
Регистрация: 15.07.2026
Сообщений: 3
|
|
| 16.07.2026, 15:28 | |
|
Сколько можно наступать на эти грабли? Dev-C++ нужно похоронить официально. Возьми нормальный clang через winget, иначе так и будешь вечно воевать с отсутствием allegro_image.h.
0
|
|
| 16.07.2026, 15:28 | |
|
Подключение библиотеки в Dev C++
Подключение в Dev C++ Подключение статической библиотеки в dev c++
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
сукцессия 37. Внедрил дипсик в свой оркестр из ИИ. У него закончилось пространство чата, потому опубликую выводы из его работы здесь
anaschu 21.07.2026
====================================================================
КОНТЕКСТ: Моделирование микоризной сукцессии (AM → ECM)
====================================================================
. . .
|
сукцессия 36. Делаю прогоны модели около порога бифуркации (превращения эндо микоризы в экто микоризу)
anaschu 21.07.2026
СУКЦЕССИЯ МИКОРИЗ: КАК МАТЕМАТИКА ОБЪЯСНЯЕТ ПОДЗЕМНУЮ ВОЙНУ
Мы привыкли думать, что лес — это деревья. А грибы — это то, что мы собираем в корзинку осенью. Но если заглянуть под землю, окажется,. . .
|
ИИ и человечность
kumehtar 21.07.2026
Забавно, что общаясь с ИИ, я замечаю, насколько он высказывается умно, и насколько верит в людей. Он умеет прощать. Он знает как отвечать не обесценивая опыт других людей, даже если сам не верит. Он. . .
|
Нейтральные знания ..., ... чистая наука. Пока что-то проходит модерацию на Хабре, стоит развить мысль ...
Hrethgir 20.07.2026
К таким радикальным взглядам я конечно в той публикации не приходил, но чтобы скоротать вечер, решил углубиться немного.
1. Почему показания термометра заряжены целью?
Цель заложена в самом. . .
|
|
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
|
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
|
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения.
https:/ / habr. com/ ru/ sandbox/ 295048/
По ссылке 403. Не очень информативно такую ссылку постить.
Запись от Usaga размещена Сегодня в 06:46 . . .
|
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
|