Сообщение Re[2]: nemerle & nitra netstandard от 04.02.2020 15:50
Изменено 04.02.2020 17:07 VladD2
Re[2]: nemerle & nitra netstandard
Здравствуйте, VladD2, Вы писали:
Добрый день! Спасибо за ваш развёрнутый ответ! Отличные новости.
Я пока продумаю лучше архитектуру и дождусь когда всё будет в мастере.
VD>Здравствуйте, cm4ker, Вы писали:
VD>Приношу извинения за то, что долго не отвечали. В последнее время вообще на форумы времени не хватает.
C>>Есть информация когда произойдет ретаргет на netstandard2.0 и если можно сейчас пользоваться, то есть где-нибудь актуальная инструкция по сборке или кто-нибудь может помочь разобраться в этом?
VD>Сначала поясню что и зачем мы делаем. Нитра базируется на немерловом компиляторе. У нас возникла потребность использовать написанный на ней DSL (TDL) на маковских и линуксовых машинах. В принципе этой цели мы и так достигли по средствам Моно (который отлично запускает любые сборки). Но люди хотят именно Кор... Причем нужно обеспечить не только работу утилиты командной строки, но и поддержку VS Code на маках и линухах.
VD>Мы перевели Немерл на dnlib, что бы тот мог компилировать под корку и стандарт. Сейчас на наших внутренних билд-серверах вся цепочка: Немерл, Нитра и ТДЛ собираются новым компилятором работающим на Коре. Причем основные длл-ки собираются под стандарт и только ncc под корку и дотнет 4.5.
VD>Но кое что еще не закончено. Осталось допилить немерловую IDE. К сожалению, она довольно сильно "отъехала". Только вчера до нее дошли руки. Так же сервер нитры пока что собирается только под дотнет 4.5. Кроме того мы сейчас работаем над поддержкой VS Code для чего реализуем LSP-протокол. Он пока живет на старой ветки.
VD>В ближайшее время (возможно на следующей неделе) мы планируем допилить IDE-плагин Немерла и перевести полностью перевести разработку на новый компилятор. Далее мы сольем LSP-ветку с корочной и сделаем ее мастером.
VD>Все что связано с переходом на новый компилятор находится в ветках retarget-*. Соответственно: немерловая — retarget-compiler, нитровская — retarget-nitra и TDL-льная — retarget-tdl.
VD>В течении месяца мы зальем их в мастера и они станут основными.
VD>Пока что для сборки нужно исользовать именно их.
VD>Для сборки немерла нужно иметь установленную VS 2017.
VD>Открываем "Developer Command Prompt for VS 2017" и пишем:
VD>
VD>После выполнения в c:\RSDN\nemerle\bin\Debug\net-4.0 окажется собранный компилятор.
VD>Далее собираем нитру:
VD>
VD>После чего в каталоге c:\!\RSDN\Nitra\bin\Debug\Stage1\ будет собрана нитра.
VD>Примерно тоже нужно проделать для TDL-я, чтобы его собрать.
VD>TDL можно использовать в качестве примера использования Нитры.
Добрый день! Спасибо за ваш развёрнутый ответ! Отличные новости.
Я пока продумаю лучше архитектуру и дождусь когда всё будет в мастере.
VD>Здравствуйте, cm4ker, Вы писали:
VD>Приношу извинения за то, что долго не отвечали. В последнее время вообще на форумы времени не хватает.
C>>Есть информация когда произойдет ретаргет на netstandard2.0 и если можно сейчас пользоваться, то есть где-нибудь актуальная инструкция по сборке или кто-нибудь может помочь разобраться в этом?
VD>Сначала поясню что и зачем мы делаем. Нитра базируется на немерловом компиляторе. У нас возникла потребность использовать написанный на ней DSL (TDL) на маковских и линуксовых машинах. В принципе этой цели мы и так достигли по средствам Моно (который отлично запускает любые сборки). Но люди хотят именно Кор... Причем нужно обеспечить не только работу утилиты командной строки, но и поддержку VS Code на маках и линухах.
VD>Мы перевели Немерл на dnlib, что бы тот мог компилировать под корку и стандарт. Сейчас на наших внутренних билд-серверах вся цепочка: Немерл, Нитра и ТДЛ собираются новым компилятором работающим на Коре. Причем основные длл-ки собираются под стандарт и только ncc под корку и дотнет 4.5.
VD>Но кое что еще не закончено. Осталось допилить немерловую IDE. К сожалению, она довольно сильно "отъехала". Только вчера до нее дошли руки. Так же сервер нитры пока что собирается только под дотнет 4.5. Кроме того мы сейчас работаем над поддержкой VS Code для чего реализуем LSP-протокол. Он пока живет на старой ветки.
VD>В ближайшее время (возможно на следующей неделе) мы планируем допилить IDE-плагин Немерла и перевести полностью перевести разработку на новый компилятор. Далее мы сольем LSP-ветку с корочной и сделаем ее мастером.
VD>Все что связано с переходом на новый компилятор находится в ветках retarget-*. Соответственно: немерловая — retarget-compiler, нитровская — retarget-nitra и TDL-льная — retarget-tdl.
VD>В течении месяца мы зальем их в мастера и они станут основными.
VD>Пока что для сборки нужно исользовать именно их.
VD>Для сборки немерла нужно иметь установленную VS 2017.
VD>Открываем "Developer Command Prompt for VS 2017" и пишем:
VD>
VD>cd /D C:\RSDN\Nemerle
VD>SET Config=Debug
VD>SET MSBUILDENABLEALLPROPERTYFUNCTIONS=1
VD>SET NemerlePath=c:\RSDN\nemerle\bin\%Config%\net-4.0
VD>msbuild NemerleAll.nproj /t:Stage1;CompilerTests;_ComputationExpressions;_Async;Install /p:NTargetName=Build;Configuration=%Config%;NInstall=%NemerlePath%
VD>
VD>После выполнения в c:\RSDN\nemerle\bin\Debug\net-4.0 окажется собранный компилятор.
VD>Далее собираем нитру:
VD>
VD>cd /D C:\RSDN\Nemerle
VD>SET Config=Debug
VD>SET MSBUILDENABLEALLPROPERTYFUNCTIONS=1
VD>msbuild Common\BootTasks.proj /t:BuildBoot /p:NemerleBinPathRoot=%NemerlePath%
VD>msbuild Nitra-Stagt1.sln /p:NemerleBinPathRoot=%NemerlePath% /t:Restore
VD>msbuild Nitra-Stagt1.sln /p:NemerleBinPathRoot=%NemerlePath%
VD>
VD>После чего в каталоге c:\!\RSDN\Nitra\bin\Debug\Stage1\ будет собрана нитра.
VD>Примерно тоже нужно проделать для TDL-я, чтобы его собрать.
VD>TDL можно использовать в качестве примера использования Нитры.
Re[2]: nemerle & nitra netstandard
Здравствуйте, VladD2, Вы писали:
Добрый день! Спасибо за ваш развёрнутый ответ! Отличные новости.
Я пока продумаю лучше архитектуру и дождусь когда всё будет в мастере.
Добрый день! Спасибо за ваш развёрнутый ответ! Отличные новости.
Я пока продумаю лучше архитектуру и дождусь когда всё будет в мастере.