Сборка ReactOS с помощью MSVC

Обсуждаем ReactOS по-русски

Moderators: fog, fireball

Post Reply
DmP
Posts: 28
Joined: Wed Apr 13, 2005 7:59 am

Сборка ReactOS с помощью MSVC

Post by DmP »

Привет!
Не подскажет ли кто, как собрать систему с помощью Visual Studio? Желательно по шагам. А то, похоже, что RosBE заточено только на GCC.
towerr
Posts: 259
Joined: Wed Jun 20, 2007 3:01 am

Re: Сборка ReactOS с помощью MSVC

Post by towerr »

DmP wrote:Привет!
Не подскажет ли кто, как собрать систему с помощью Visual Studio? Желательно по шагам. А то, похоже, что RosBE заточено только на GCC.
произошли некоторые сюрпрайсы, касаемо сабжа, а именно... в связи с удалением рбилда, пропала возможность указания мейку таргетовтипа msvc
но, в принципе, теоретичесски... апдейтить, а точнее даунгрейдить локально репу, ничто немешает...
вернуть 55800 к примеру, сделать make msvc - потом... уже по вкусу, в зависимости от квалификации.
а ждать, когда в симейк добавится таргеет, можно... но его нету еще, будет... когда-нибуть.
DmP
Posts: 28
Joined: Wed Apr 13, 2005 7:59 am

Re: Сборка ReactOS с помощью MSVC

Post by DmP »

А как же тогда собирается "CMake_x86_MSVCWin Debug" на http://build.reactos.org/waterfall?
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

Вот тут есть кое-какая информация (не знаю, насколько точная и свежая).
DmP
Posts: 28
Joined: Wed Apr 13, 2005 7:59 am

Re:

Post by DmP »

hto wrote:Вот тут есть кое-какая информация (не знаю, насколько точная и свежая).
Я сначала не мог найти configure.cmd в RosBE, и думал что информация на странице не актуальна, а он оказывается в исходниках в папке reactos.
Вот написал скрипт для сборки под MSVC 11, у меня работает, может кому будет интересно:

Code: Select all

set path=C:\Windows\System32;D:\ReactOS\RosBE\Bin;

call "C:\Program Files\Microsoft Visual Studio 11.0\VC\vcvarsall.bat" x86

cd ..\trunk\reactos\
configure.cmd

cd output-VS11-i386\host-tools\
nmake

cd ..\reactos\
nmake
Всем спасибо за помощь, включая посты из раздела "Development Help".
DmP
Posts: 28
Joined: Wed Apr 13, 2005 7:59 am

Re: Сборка ReactOS с помощью MSVC

Post by DmP »

Попробовал запустить, то что собралось, получилось вот такое:
[ external image ]
Интересно, это нормально для данного компилятора?
igorko
Posts: 145
Joined: Thu Jun 18, 2009 3:12 pm

Re: Сборка ReactOS с помощью MSVC

Post by igorko »

Одно время оно грузилось в 3-тий этап и работало(без експлорера ибо тот не собирается под МСВЦ). Сейчас не знаю, может и нормально, хотя некоторые разработчики вроде следят за работоспособностью МСВЦ билда.

EDIT: 56118 от билдбота работает и грузится в 3-тий этап. Если есть интерес в исправлении вашего бага то прошу сделать лог.

Заметка: Без подключеного WinDBG первый этап установки пройти вообще невозможно(Система ждет пока будет подключен дебагер - это после прохождения строки загрузки ядра и драйверов).

Но насколько я понимаю падает у тебя раньше. Итого надо брать WinDBG и снимать лог.
DmP
Posts: 28
Joined: Wed Apr 13, 2005 7:59 am

Re: Сборка ReactOS с помощью MSVC

Post by DmP »

Сделал чистую сборку ревизии 56118, результат тот же. Может я как то ни так настроил VirtualBox?
DmP
Posts: 28
Joined: Wed Apr 13, 2005 7:59 am

Re: Сборка ReactOS с помощью MSVC

Post by DmP »

По поводу отладки, пробовал два варианта, вешать PuTTY на прямую на \\.\pipe\ros_pipe, так и через com0com на CNCB0. Результат один - пустое окно. Видимо потому что вешается сам загрузчик, то ни чего и не выводится.
А как использовать WinDBG в виртуальной машине на загрузчике, я даже не представляю.
Я вот думаю может сборка CMake_x86_MSVCWin Debug делается с какими то специальными отладочными флагами, а у меня собирается Release сборка и она чем то отличается?
igorko
Posts: 145
Joined: Thu Jun 18, 2009 3:12 pm

Re: Сборка ReactOS с помощью MSVC

Post by igorko »

Так у тебя пустое окно или БСОД? Уточни пожалуйста обязательно.
Как я сказал пустое окно это нормально. Система ждет именно на WinDBG.
В Вбоксе подключаеш канал \\.\pipe\com_1

Тут тоже как настроить WIndbg. В Symbol File Path додаеш путь к папке с собранными файлами(для поиска там .pdb)

И вот когда в Вм появляется черный екран и оно ждет, тогда стартуеш настроенный WInDBG. Оннайдет ОС, ОС раздуплится и все пойдет ок.

А насчет Релиз сборки так вообще о ней забудь - она щас никому не нужна. И насколько я знаю Debug собирается по дефолту(если ты ничего не химичил)
DmP
Posts: 28
Joined: Wed Apr 13, 2005 7:59 am

Re: Сборка ReactOS с помощью MSVC

Post by DmP »

igorko wrote:Так у тебя пустое окно или БСОД? Уточни пожалуйста обязательно.

А насчет Релиз сборки так вообще о ней забудь - она щас никому не нужна. И насколько я знаю Debug собирается по дефолту(если ты ничего не химичил)
Ни каких настроек не менял, как оно само сконфигурировалось configure.cmd, так и собирается.
Пустое окно - это в Putty, а синий экран на экране VBOX. WinDBG к тому моменту еще нельзя подключить, так как загрузчик не запустился.
Поменял сам скрипт сборки, теперь проект собирается в отдельной папке, отдельно от исходников:

Code: Select all

set path=C:\Windows\System32;D:\ReactOS\RosBE\Bin;
call "C:\Program Files\Microsoft Visual Studio 11.0\VC\vcvarsall.bat" x86
..\trunk\reactos\configure.cmd

cd host-tools\
nmake

cd ..\reactos\
nmake

nmake bootcd
igorko
Posts: 145
Joined: Thu Jun 18, 2009 3:12 pm

Re: Сборка ReactOS с помощью MSVC

Post by igorko »

Где-то в фрилодере можно включить дебаг, правда не помню где. Спроси у Тимо на ИРК. Можеш попробовать недавно добавленную опцию з фрилодера (фрилоадер дебаг), правда я не пробовал еще.
DmP
Posts: 28
Joined: Wed Apr 13, 2005 7:59 am

Re: Сборка ReactOS с помощью MSVC

Post by DmP »

igorko большое спасибо за советы, помогли во многом.
С зависанием FreeLoader решил не бороться, а пересобрал ReactOS с помощью другого компилятора - MSVC 2008.
И как выше написано, после появления черного окна запустил WinDBG - заработало.
Post Reply

Who is online

Users browsing this forum: No registered users and 13 guests