0 / 0 / 0
Регистрация: 25.12.2017
Сообщений: 4
|
||||||
1 | ||||||
Как собрать Doom 3 BFG под VS 201525.12.2017, 16:10. Показов 1402. Ответов 7
Уважаемые знатоки,
я хотел порсмотреть пример какого то сложного, но интересного кода и на нём поучиться. Пока мой опыт очень скромный, и ограничивается стандартными задачами из книжки и попытками повызывать разные функции. Я использую VS 2015 (Update 3), я прочитал пару статей про то, как крут Кармак и какой хороший у него исходный код. Вот ссылки на статьи: https://habrahabr.ru/post/166113/ и https://habrahabr.ru/post/333836/ В статьях используются разные источники кода: https://github.com/id-Software/DOOM-3-BFG.git и https://github.com/TTimo/doom3.gpl.git В обеих статьях встречается фраза что "код находится в превосходном состоянии, и его очень легко собрать, достаточно одного клика мышкой!" Я провел три интересных дня, премя от времени прерываясь на сон, в попытках собрать код из репозитория https://github.com/id-Software/DOOM-3-BFG.git Я попробовал это на трех компьютерах (домашнем, рабочем и ноутбуке) и сейчас я могу сказать, что очень завидую тем людям, у которых код собирается по одному клику мышкой. Думаю, что основная проблема - в многочисленных изменениях в языке, которые не только порождаюбт множество warning'ов (из за того, что те или иные методы стали deprecated), а также в том, что я еще совсем не "на ты" с C++ и средой разработки. Моя проблема со сборкой сводится вот к чему: после нескольких мелких исправлений я получаю ошибку "Error C3861 'LCMapStringEx': identifier not found Doom3BFG C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\atlmfc\include\atlwinverapi.h 710" в файле altwinverapi.h Это - ошибка в функции:
Короче, я в обмен на сборку проекта готов всё в игре писать строго английскими буквами. Но как исправить - не знаю :-( Не могли бы Вы дать мне совет, как все таки собрать этот дум так, чтобы я мог запустить его под отладчиком? Если надо - я могу склонировать репозиторий и выложить туда все исправления, котрые я сдела (в двух местах пробел в макросы вставил) Спасибо заранее за помощь!
0
|
25.12.2017, 16:10 | |
Ответы с готовыми решениями:
7
Как собрать простейший дравер? wdk + Visual Studio 2015 Как собрать проект под 4.0 Framework если изначально был под 4.5 Как собрать FFMPEG под Android? Как собрать код под Win16 |
73 / 86 / 40
Регистрация: 02.11.2017
Сообщений: 379
|
|
25.12.2017, 16:59 | 2 |
Ну, а без исправлений-то он компилируется? Чистый? Может, стоит с этого начать?
1
|
0 / 0 / 0
Регистрация: 25.12.2017
Сообщений: 4
|
|
25.12.2017, 17:27 [ТС] | 3 |
Без исправлений - нужно снести красивую студию 2015 и поставить 2010. Примерно как выйти из тёплого автомобиля и пойти жить обратно в пещеры.
Должен признаться, что я этого еще не делал. Я могу это сделать, но работать я там не смогу - пальцы уже помнят шорткаты тех функций, которых в VS 2010 просто нет.
0
|
73 / 86 / 40
Регистрация: 02.11.2017
Сообщений: 379
|
|
25.12.2017, 20:16 | 4 |
А для того, чтобы в15-й собирать необходимы исправленя?
0
|
0 / 0 / 0
Регистрация: 25.12.2017
Сообщений: 4
|
|
25.12.2017, 20:56 [ТС] | 5 |
jahdjkhasjdhjah, спасибо за пинок в нужном направлении!
Я провел еще пару часов в экспериментах. Оказалось, что если откатиться на Visual Studio 2010, но остаться на 64-битной системе - то всё равно не собирается. А вот если откатиться на 32 битную систему и в Visual Studio 2010 - тогда собирается без ошибок. Мне это удалось сделать только что, запустить - пока не удалось (я так понял, надо теперь "химичить" с файлами ресурсов - их же нет в исходниках). А для того, чтобы запустить в 15-й студии - да, нужны исправления, и нешуточные. Сначала я бегло просмотрел "Критические изменения в Visual C++ 2015": https://msdn.microsoft.com/ru-... 31344.aspx потом - прочитал статью https://habrahabr.ru/post/257509/ Но это не сильно помогло мне - на моём текущем уровне знания с++. Думаю, что всё же сделаю клон репозитория, и попрошу более опытных товарищей сделать туда коммит - просто чтобы еще кто то мог научиться на этом великом проекте, не откатываясь на 5 лет назад в версии среды разработки.
0
|
73 / 86 / 40
Регистрация: 02.11.2017
Сообщений: 379
|
|
26.12.2017, 11:34 | 6 |
Ну, можно подсунуть 15-й студии компиль от 10-й. Тогда получите все удобства новой среды и возможность собирать свой проект. Путь к компилятору можно посмотреть в команде на запуск сборки. в настройках. Там все с путями должно быть.
Только перед заменой забекапьте себе куда-нибудь оригинальный exe. И желательно скопировать команды на запуск из 10-й студии. Предварительно сохранив куда-нибудь себе старый вариант. ) Скачайте игру и подмените оригинальный exe-шник своим полученным. И посмотрите, что из этого выйдет. Взлетит ли игра
1
|
0 / 0 / 0
Регистрация: 25.12.2017
Сообщений: 4
|
|
26.12.2017, 12:40 [ТС] | 7 |
Не первый раз убеждаюсь, что другой человек может подсказать путь решения проблемы, совершенно отличный от того, который виделся мне. надо будет попробовать - подменить компилятор, мне и в голову не пришло.
Спасибо!
0
|
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
|
26.12.2017, 22:21 | 8 |
Rasmuz, jahdjkhasjdhjah, , не надо ничего подменять. В настройках проекта можно выбрать "набор инструментов платформы" от 10 студии.
1
|
26.12.2017, 22:21 | |
26.12.2017, 22:21 | |
Помогаю со студенческими работами здесь
8
Как собрать libssh под Windows 7? Как собрать в Netbeans проект под 6 Яву? Как собрать wine под Linux x86-64 ? Как собрать 32-х битный пакет под 64-х битным debian? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |