Sidebar

Xash3D SDL2 форк

ZhekA

New member
27.02.08
4 117
37
  • Золотая медаль 131
mittorn сказав(ла):
https://transfer.sh/10qDUH/xash3d-win.zip
Снова обновление.
Здесь есть некоторые изменения в глубине движка. Они могли как что-то поломать, так и что-то починить.
Неплохо бы проверить XDM, последние версии которого плохо работали под xash. Возможно, часть багов уйдёт.
При запуске.
 

Вкладення

mittorn

Active member
22.04.10
1 229
22
38
2 ZhekA:
думаю, ты и сам можешь найти эту библиотеку.
Я не уверен, можно ли включать статическую линковку.

Post automatically merged:

Да, кстати. Думаю, тут есть знатоки VS. Как лучше делать линковку с crt на windows?
Если линковать статически с libc - то вырастут все бинарники. Полагаю, могут появиться конфликты с другими компонентами.
С общим msvcrt - способ вроде как официально не поддерживаемый. неибудет ли проблем из-за разных версий?
И чем отлисается отладочная версия библиотеки с d в конце от обычной? кроме того, что её нигде нет и скачивать отдельно приходится?
ДМ тут где-то рекомендовал собирать с msvc6. Как поступать с ULL там? Он вообщп long long не умеет? Или делает дурачка просто?
 
Останнє редагування:

mittorn

Active member
22.04.10
1 229
22
38
2 ZhekA:
Там русским языком написано, какую crt либу искать.
И выложил не я, а appveyor.
Я хотел сделать статическую линковку, но получил не работающий на сервере бинарь. По этому пока оставил так, тбо скачать msvcrt12d.dll можно и это везде работает. Прошу помощи с msvc и crt на будущее

Post automatically merged:

2 Дядя Миша:
Он знаковый.
 
Останнє редагування:

StanVick

••••••••••••••
16.07.15
56
0
0
На каком языке вы разговариваете?!
 

mittorn

Active member
22.04.10
1 229
22
38
2 StanVick:
На языке линуксойда, пытающегося собрать прогу для windows. Да так, чтобы она лишних msvcrt120d.dll не тянула.
 

gfdjr5

[NULL]
25.11.12
562
0
0
mittorn сказав(ла):
2 StanVick:
На языке линуксойда, пытающегося собрать прогу для windows. Да так, чтобы она лишних msvcrt120d.dll не тянула.
Найди на Хабре статью "Создание компактных приложений на VC++"
Или "Компоновка с msvcrt.dll в Visual C++: проблемы и решения"
 

mittorn

Active member
22.04.10
1 229
22
38
2 Дядя Миша:
Ответ очевиден - для дебага.
Потому и вопрос - могу ли я тупо заменить либу на недебаговую или на msvcrt.dll?
2 gfdjr5:
Статью видел, она меня насторожила т.к crt разный, а совестимость они похлеще glibc ломают.

Post automatically merged:

2 Дядя Миша:
Оффтоп
 
Останнє редагування:

gfdjr5

[NULL]
25.11.12
562
0
0
2 mittorn:
Просто заменить на недебаговую нельзя - heap incompatibility
 

ComradeAndrew

๖ۣۜC++
02.04.10
1 044
28
7
0
2 mittorn:
А почему не сделаете релиз сборку в статик линке?
 

mittorn

Active member
22.04.10
1 229
22
38
2 gfdjr5:
Куча должна быть как-то особенно совместима?
 

mittorn

Active member
22.04.10
1 229
22
38
2 DarkEssence:
у меня на windows server 2003 не заработала + статик - по 600 кб к каждому бинарю. Наверно, надо msvcrt делать. Но переделывать что-то удалённо на appveyor довольно нелегко.
В остальном xash crt почти не нужен.
Ибо свой есть. Т.е можно переделать десяток функций на winapi и crt больше не понадобится. Только вот код будет ужасный и оно того не стоит.

Post automatically merged:

Этот дебаг ещё и лагать наверно должен.
У меня ещё одна проблема нашлась - виндовая сборка под wine упорно не хочет читать файлы 2й паранойи. Совсем. Возможно, у меня с фс в wine проблемы, но прошу проверить под windows если кто качал.
 
Останнє редагування:

gfdjr5

[NULL]
25.11.12
562
0
0
http://netcode.ru/cpp/?artID=2757
Дебаг и релиз версии msvcrt.dll отличаются, и если вдруг (при использовании длл) new делается в длл, а delete в приложении (или наоборот), то гарантированны проблемы, потому что способы выделения/удаления (в дебаг и релиз версиях рантайма) будут разные, явный признак подобной ошибки: ссылка на файл dbgheap.h/dbgheap.cpp, а дальше что нибудь типа error line 1044. Для этого необходимо что бы везде (и в длл, и в приложении) стояли одинаковые версии Runtime Library (есть много вариантов: мультитреадед дебаг/мультитреадед/... ) - главное что бы они были одинаковые.
 

gfdjr5

[NULL]
25.11.12
562
0
0
http://www.gamedev.ru/flame/forum/?id=93403

Post automatically merged:

Мб пересесть с вс2013 на вс2010? Или даже вс6?

Post automatically merged:

Ну, или так:
Есль приличное количество статей, в то числе и на руском языке, о том как обойтись без рантайм библиотек, если очень хочется.
Правда придется пожертвовать весьма многим, например исключениями, STL(!), заменить функции из crt на фцнкции из kerrnel32
(например, использовать lstrcpy, lstrlen вместо strcpy, strlen. Это плохо влияет на портируемость), и возможно операторами new/delete.

Есть еще "грязный хак", в использовании MSVCRT.DLL от Visual Studio 6, все равно эта DLL стала часть Windows, начиная с ХР,
двже WS2_32.DLL (WinSock2) зависит от этой DLL. Таким образом можно использовать некоторые возможности CRT.
 
Останнє редагування:
Команда форуму
VIP
28.03.10
15 566
315
83
Кубань
  • Золотая медаль 215
  • Серебряная медаль 214
  • Золотая медаль 221
  • Cat
Найди на Хабре статью "Создание компактных приложений на VC++"
Дядя Миша ото и сам такую статью писал, но - для шестой студии.
Стреляет правильно, но анимация перевёрнута.
Где-то в ивентах, не? Там вся эта пакость прячется.
В остальном xash crt почти не нужен.
Ибо свой есть.
Настоятельно рекомендую избавиться от Q_atof. Калечная она. К сожалению я слишком поздно это понял.
А ещё лучше - отвязать её вообще, т.к. в ксаше не просто свой аллокатор, но и своя crt
Я тогда ошибочно полагал, что меньше привязка к родному CRT - тем лучшее.
Хотя относительно str* я по прежнему так считаю. Но вот всё остальное вернул бы обратно, честное слово.
 

mittorn

Active member
22.04.10
1 229
22
38
2 Дядя Миша:
У нас уже были споры по этому поводу.
Я даже заменянял функции на макросы. всё работало, но я решил вернуть как было - ведь зачастую системные библиоиеки могут быть хуже оптимизированы (в плане набора инструкций).

Post automatically merged:

Что с ивентами - не совсем понял. Тут ведь сервнр по другому работает. Ивенты - сугубо клиентская часть
 
Останнє редагування:

Game Server

Доноры Красавчики

Користувачі онлайн

Немає користувачів онлайн.