Здравствуйте, Аноним, Вы писали:
А>Статья об этом, как я понял, устарела. А>Подскажите, пожалуйста, как это сделать или ссылку. А>Также интересно как собрать инсталятор Немерле
Для .NET 4.0:
cкачиваешь исходники
открываешь консоль от студии — Visual Studio Command Prompt (2010)
заходишь в директорию Nemerle
даёшь команду Build-4.0 DevBuildQuick
Это собирает компилятор, интеграцию, PowerPack, Linq, и инсталятор.
Ce n'est que pour vous dire ce que je vous dis.
Re[2]: Собрать немерле из исходников
От:
Аноним
Дата:
26.07.12 08:19
Оценка:
Здравствуйте, Don Reba, Вы писали:
DR>Это собирает компилятор, интеграцию, PowerPack, Linq, и инсталятор.
Спасибо! для VS2008 по другому?
И ещё вопрос, как отлаживать компилятор Немерле?
Здравствуйте, Аноним, Вы писали:
А>И ещё вопрос, как отлаживать компилятор Немерле?
Вариант номер раз: assert2(false) приведет к появлению диалога начала отладки.
Вариант номер два: открыть ncc.exe из debug нужной стадии вижаком, настроить его строку запуска и поставить бряку в нужном файле.
А вот у меня падают тесты на gtk.n (ругается на pkg-config — не находит gtk-sharp?). Хотя моно у меня стоит.
Какие нужные внешние зависимости что бы нормально сбилдится?
Здравствуйте, fddima, Вы писали:
F>Здравствуйте, Don Reba, Вы писали:
F>И ещё — можно как-нибудь собирать компилятор по быстренькому и запускать определённый тест, а не все подряд (долго)?
Я в таком случае делаю отдельный исходник и гоняю из консоли ncc нужной стадии по нему.
Здравствуйте, hardcase, Вы писали:
F>>И ещё — можно как-нибудь собирать компилятор по быстренькому и запускать определённый тест, а не все подряд (долго)? H>Я в таком случае делаю отдельный исходник и гоняю из консоли ncc нужной стадии по нему.
Отдельный есть. Знать бы ещё чем стадии отличаются...
Здравствуйте, fddima, Вы писали:
F>Здравствуйте, hardcase, Вы писали:
F>>>И ещё — можно как-нибудь собирать компилятор по быстренькому и запускать определённый тест, а не все подряд (долго)? H>>Я в таком случае делаю отдельный исходник и гоняю из консоли ncc нужной стадии по нему. F> Отдельный есть. Знать бы ещё чем стадии отличаются...
Первая стадия это сборка "старым" компилятором нового. Она гарантирует, что старый компилятор умеет собирает код нового.
Вторая стадия, это сборка компилятором первой стадии, она гарантирует, что новый компилятор умеет собирать сам себя (его либы при этом все еще собраны старым компилятором).
Третья стадия гарантирует, что компилятор собраный сам собой тоже умеет собирать себя.
Четвертая стадия как контрольный выстрел. Должны получиться совершенно одинаковые бинарники с третьей.
Здравствуйте, fddima, Вы писали:
F>И ещё — можно как-нибудь собирать компилятор по быстренькому и запускать определённый тест, а не все подряд (долго)?
Можно собрать компилятор без всего (самый быстрый способ) и потом просто прогнать свой тест вручную.
Была идея перед прогоном тестов сортировать их по дате последнего изменения, чтобы новые тесты выполнялись раньше. Но так руки до этого и не дошли. Плюсь это плохо для сборки на бил-сервере.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
F>>А вот у меня падают тесты на gtk.n (ругается на pkg-config — не находит gtk-sharp?). VD>Что значит падают? Если сборок на которые есть ссылки в тесте нет, то тест просто пропускается.
Сам тест то пропускается (их там два таких проблемных у меня получается) — но по окончании получаем такое:
Выполняю:
Build-4.0 DevBuildFull
Доходим до тестов:
1 of tests failed
See test_error.log file for details
D:\fddima\Projects\nemerle\NemerleAll.nproj(280,5): error MSB3073: The command "D:\fddima\Projects\nemerle\bin\Debug\net-4.0\\Tests\positive\Tests.exe -d:D:\fddima\Projects\nemerle\ncc\testsuite\positive -p "-nowarn:10003 -def:RUNTIME_MS
;NET_4_0;DEBUG" -s" exited with code 1.
Done Building Project "D:\fddima\Projects\nemerle\NemerleAll.nproj" (DevBuildFull target(s)) -- FAILED.
Build FAILED.
"D:\fddima\Projects\nemerle\NemerleAll.nproj" (DevBuildFull target) (1) ->
(CompilerTests target) ->
EXEC : warning : pkg-config execution failed: The system cannot find the file specified [D:\fddima\Projects\nemerle\NemerleAll.nproj]
"D:\fddima\Projects\nemerle\NemerleAll.nproj" (DevBuildFull target) (1) ->
(CompilerTests target) ->
D:\fddima\Projects\nemerle\NemerleAll.nproj(280,5): error MSB3073: The command "D:\fddima\Projects\nemerle\bin\Debug\net-4.0\\Tests\positive\Tests.exe -d:D:\fddima\Projects\nemerle\ncc\testsuite\positive -p "-nowarn:10003 -def:RUNTIME_
MS;NET_4_0;DEBUG" -s" exited with code 1.
1 Warning(s)
1 Error(s)
Здравствуйте, fddima, Вы писали:
F> Сам тест то пропускается (их там два таких проблемных у меня получается) — но по окончании получаем такое:
Обновил исходники из репозитория. У меня до тестов даже не дошло. Все обламалось на компиляции Nemerle.ActivePatterns.nproj.
NN поторопился и зачем-то включил в процесс компиляции новый снипет Nemerle.ActivePatterns. Сейчас я его оттуда выброшу и постараюсь пофиксить ошибку не дающую скомпилировать этот проект.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.