![]() |
Показать все 17 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Как скомпилировать библиотеки мода под Linux и Mac OS (https://hlfx.ru/forum/showthread.php?threadid=4253)
Как скомпилировать библиотеки мода под Linux и Mac OS
Как вы все знаете я не силен в с++, но как скомпилировать исходники в 2010 студии я представляю = F9.
А как собрать исходники для линукса и мак оси? Если кто знает просьба поделиться теорией возможными подводными камнями если реально это в принципе и желательно пошаговые инструкции если у кого есть практический опыт. Я слышал про компилятор QT, вроде что он кроссплатформенный. В общем буду рад любой инфе.
__________________
ㅤ
Там Makefile используется. Потребуется make, g++ и т.д. Ну и, собственно, Линукс или Макось (на макоси вместо g++ скорее всего будет использоваться clang). Также там используется неизвестная мне утилита p11, которая, как я понял, проприетарная и что-то делает с итоговыми библиотеками, но можно убрать её вызов, библиотеки всё равно скомпилятся.
По моему опыту Makefile надо править под свою систему (это недолго), ибо Valve все нужные утилиты поместили в свои пути ( /valve/bin).
Qt - не компилятор, а библиотека, и к делу отношения не имеет.
Помню, что сборка линукс-версии под оригинальную халфу (дедикейтед) требовала жутко старых glibc и gcc 2.95. Вот это были пляски с бубном, когда я хеткрап френзи собирал. Молодость, эх.
__________________
Название неизвестной утилиты перепутал. Она p4 называется. Я у себя закомментил её вызовы.
https://dl.dropboxusercontent.com/u...x_makefiles.zip - вот здесь архив с мэйкфайлами, которые я для себя переделывал. Убрал компил рикошета и dmc, оставил только hl сервер и клиент.
Правда, вот беда, сегодня попробовал клиентку скомпиленную таким образом в ставить в мод - так там глючит мышь, не возвращается на середину как полагается, поэтому обзор зависит от ширины твоего экрана и от положения мыши в меню Может быть, ~ X ~ подскажет, что делать.
FreeSlave а галочка raw mouse input или чототам подобное в настройках мышки стоит? Если да, отключи нафик. У меня из-за неё ограничения обзора по размеру экрана были.
Ku2zoff, я про неё знаю. Не работает ни так ни сяк. Про это был issue на гитхабе. В вальвоских играх нормально пашет, а вот выложенные сорцы видимо недоисправили. А может тут и вовсе косяк SDL.
Интересно интересно. Неужели никто кроме Ксера и Ксавари не задумывался о кроссплатформености своих поделок?
__________________
ㅤ
Cybermax
Полагаю, задумывались все. Но большинство пришло к закономерному выводу: "анафигононадо". Лично я компилил под линукс только потому, что мне было интересно разобраться. Собсно, с этого и началось моё знакомство с линуксом, gcc и проблемами портирования кода.
__________________
У меня до сих пор стоит cygwin и mingw с кросс-компилятором 2.95.
Маке-файлы не обновлял уже пару лет, но когда-то оно работало... кто-то говорил даже, что ХЛ и гцц4 сожрёт, но так и не срослось...
Проще завести линуксовую машину, чесслово.
А теперь, когда ещё и клиентка под линугз.... +_+
__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]
~ X ~ Ты лучше по подробнее про мак расскажи. Желательно пошаговую инструкцию плюс ссылочки на софт и какие то там Маке-файлы пажалуста!!!! Интересно узнать что то новое от опытного товарища
__________________
ㅤ
Насчёт мышки - это проблема вообще нынешнего SDK, не только под линуксом.
Похоже, надо просто добавить вызовы SDL_SetRelativeMouseMode.
В inputw32.cpp в IN_ActivateMouse заменить
1 | #ifdef _WIN32 |
2 | if (mouseparmsvalid) |
3 | restore_spi = SystemParametersInfo (SPI_SETMOUSE, 0, newmouseparms, 0); |
4 | #endif |
1 | #ifdef _WIN32 |
2 | if (mouseparmsvalid) |
3 | restore_spi = SystemParametersInfo (SPI_SETMOUSE, 0, newmouseparms, 0); |
4 | #else |
5 | SDL_SetRelativeMouseMode(TRUE); |
6 |
7 | #endif |
FreeSlave большое спасибо!
__________________
ㅤ
Я жутко извиняюсь за поднятие старой темы Сегодня убил кучу времени, но таки скомпилил дллки своего мода под линукс. Проверил. Первая пакость: виндовая версия прекрасно жрёт серверную дллку из папки cl_dlls. Линуксовая не хочет, ей клади сошку в dlls. Ну да чёрт с ними с папками. Запустил - проблема с мышью. В обсуждениях на гитхабе она поднималась, чего-то там писали, да так видно и не исправили. Как Фрислэйв подсказал, так я и исправил. Причём, под виндой нормально без фикса работает, а под линуксом нет. Как галки в меню не меняй.
И вообще, этот линукс меня бесить стал. Я кучу времени убил, чтобы наладить себе вменяемую рабочую среду: потому что:
1. В стабильном дистре дебиана (вхизи который) стим не устанавливается без бубна.
2. В тестируемом дистре (джесси который) почему-то ставится не то ядро, что в репах, поэтому пришлось удалить ядро, которое установилось с netinst CD, и скачать из реп актуальное, чтобы поставить драйвер нвидиа.
3. Кеды чудят со звуком, и ещё, разрабы-фошысты выпилили из джесси жырнокрысу Между прочим, очень годная качалка.
Я понимаю, что дистр тестовый, но тот же вхизи на стадии тестирования был куда стабильнее.
З.Ы. Меня терзают смутные сомнения: а нужна ли вообще линукс-версия? На бубунте и так всё глючит и тормозит, а тут ещё и глючный мод будет Про дебиан молчу, потому что на стабильном стима нет, а тестовый нубьё не осилит. Чего стоит только засада с ядром.
Добавлено 07-01-2015 в 02:52:
З.З.Ы. Кстати, всех с новым годом! А то я не поздравлял ещё.
Ku2zoff, насчёт пути к клиентке - может, ты liblist.gam неправильно написал? cldll "1" поставил?
upd: неправильно прочёл. Ты наоборот серверную хочешь грузить из папки клиента. Но зачем? Попробуй gamedll_linux тогда добавить нужный.
Фикс для мышки они почему-то так и не хотят пушить в репозиторий, да. Да и я не уверен, достаточно ли того, что я привёл - возможно мышка ведёт себя не совсем корректно без raw input.
Не знаю, какие там у вас проблемы с линуксом. У меня всё прекрасно работает. Были небольшие проблемы с FBO из-за HLFX 0.7, но удалось обойти. И с мышкой фикс, но в этом вся фишка - каждый делает собственный фикс, иначе скучно было бы, правда же?
__________________
__________________
ㅤ
Временная зона GMT. Текущее время 10:36. | Показать все 17 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024