Здравствуйте, hardcase, Вы писали:
H>Спрашивается, они вообще тестируют релизы?
Ответили что косяк с ModuleBuilder-ом из-за невозможности загрузить Mono.CompilerServices.SymbolWriter.dll.
Остается ждать минорных релизов (собирать Моно из транка мне как-то не с руки).
Для тех, кто захочет потестировать Nemerle в линуксе, накатал тут небольшой скрипт для Ubuntu.
(В других дистрибутивах вместо apt-get вставить свой менеджер пакетов).
Предварительная установка Mono не требуется.
# Install packages
# Git, SVN, and other
sudo apt-get install git subversion pkg-config autoconf libtool automake g++ bison gettext
# Clone mono with latest revision
# For speed either download tar snapshot or take shallow clone
# http://github.com/mono/mono
# git clone git://github.com/mono/mono.git --depth
git clone git://github.com/mono/mono.git
# Build Mono
cd mono
# Auto gen
./autogen.sh --prefix=/usr/local
# Make
make get-monolite-latest
make
# Install
sudo make install
cd ..
# Get Nemerle
svn checkout http://nemerle.googlecode.com/svn/nemerle/trunk/ nemerle
# Build Nemerle
cd nemerle
xbuild NemerleAll-Mono.nproj /t:Stage4;CompilerTests
БП>make тоже собирает. Как и раньше. make install тоже всё ещё работает.
Лично мне было проще портировать Nemerle.MSBuild.Tasks.dll на Mono и xbuild и поддерживать его в актуальном состоянии, чем ставить Cygwin или разбираться с NAnt-ом.
требует небольшой доработки, но в целом собирает, будет портирован в Overlay Funtoo, Daniel Robbins выразил согласие и сказал, что ему понравился наш немерл
но надо будет поддерживать этот ебилд в актуальном состоянии и найти в себе силы и время поработать таки над монодевелопным плагином.
так же хотелось бы разобраться с этим http://code.google.com/p/nemerle/source/browse/nemerle/trunk/misc/vim/nemerle.vim и добавить в этот ебилд.
الحقيقة:الشئ الوحيد الذي(لا)يصدقه الناس!ا الزواج : جمع.وطرح.ثم(ضرب)!ولكنه قبل ذلك(قسمة) المحامي:لسان.وحنجرة.وروب!يدافع عن مال موكله (أعزائي)!وهو لا يعرف أحد منّا!الطالب (الأول)على فصله!لولا وجود الأخرين
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, _nn_, Вы писали:
__>>>>xbuild NemerleAll-Mono.nproj /t:Stage4;CompilerTests... __>>Качество уже рабочее, но еще не все фичи поддерживаются, иначе различий с NemerleAll.nproj было бы меньше.
VD>Ой, я не заметил, что там файл другой. Подумал, что он NemerleAll.nproj собирает.
VD>А что за различия?
В линуксовой версии нет инсталлятора например.
Был баг что не поддерживались PropertyGroup , возможно уже исправили.
Также запуск компилятора производится через скрипт, чтобы учитывать линукс и виндоуз.
Учитывая улучшения XBuild-а, стоит проверить насколько можно объединить билды.
Я полагаю, что нет смысл ориентироваться на более старые версии XBuild-ов, все равно они с багами.
__>>Тесты не запускаются на данный момент, постараюсь вскоре их докрутить.
VD>Да там у нас просто NUnit через exec выполняется, который выполняет тесты.
Мигель со товарищи отлично доработали SRE — компиляци крашится тут c ExecutionEngineException (The assembly for default symbol writer cannot be loaded) где-то тут (HierarchiEmitter.n, 120 строка):
/* create a dynamic module */
this._module_builder =
if (Manager.Options.CompileToMemory)
// we cannot give output filename if we are compiling only to Run
this._assembly_builder.DefineDynamicModule (_assembly_name.Name, Manager.Options.EmitDebug);
else
this._assembly_builder.DefineDynamicModule (_assembly_name.Name,
Path.GetFileName (_OutputFileName),
Manager.Options.EmitDebug);
Видимо в попытках скопировать баги Микрософта горячие испанские парни непременно добавляют пачку своих, и теперь SRE в Mono неспособно выплевывать дебаг инфо (pdb), так как удаление тегов <DebugType> и <DebugSymbols> в nproj файлах больше не приводило к ExecutionEngineException.
Что до самосборки компилятора то она снова поломалась — mono.exe просто валится без какой либо внятной информации.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, hardcase, Вы писали:
H>>Вышел релиз Mono 2.8... H>>Спрашивается, они вообще тестируют релизы?
VD>Ты им отписал?
Здравствуйте, _nn_, Вы писали:
__>xbuild NemerleAll-Mono.nproj /t:Stage4;CompilerTests
О, как!
Если я правильно понимаю xbuild — это моновский аналог MSBuild.
Если xbuild собирает наши проекты, значит моновцы таки довели его до рабочего качества. Реньша xbuild вроде как не работал.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, _nn_, Вы писали:
__>>xbuild NemerleAll-Mono.nproj /t:Stage4;CompilerTests
VD>О, как!
VD>Если я правильно понимаю xbuild — это моновский аналог MSBuild.
Так оно и есть. VD>Если xbuild собирает наши проекты, значит моновцы таки довели его до рабочего качества. Реньша xbuild вроде как не работал.
Качество уже рабочее, но еще не все фичи поддерживаются, иначе различий с NemerleAll.nproj было бы меньше.
Тесты не запускаются на данный момент, постараюсь вскоре их докрутить.
Здравствуйте, _nn_, Вы писали:
__>>>xbuild NemerleAll-Mono.nproj /t:Stage4;CompilerTests... __>Качество уже рабочее, но еще не все фичи поддерживаются, иначе различий с NemerleAll.nproj было бы меньше.
Ой, я не заметил, что там файл другой. Подумал, что он NemerleAll.nproj собирает.
А что за различия?
__>Тесты не запускаются на данный момент, постараюсь вскоре их докрутить.
Да там у нас просто NUnit через exec выполняется, который выполняет тесты.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, hardcase, Вы писали:
H>Лично мне было проще портировать Nemerle.MSBuild.Tasks.dll на Mono и xbuild и поддерживать его в актуальном состоянии, чем ставить Cygwin или разбираться с NAnt-ом.
1) Я не перевариваю make-файлы и у меня нету линукса, а попробовать Nemerle под Mono все же хочется иногда. xbuild — неплохая кандидатура для огранизации процесса сборки и тестирования компилятора под Mono в Windows.
2) Cкрипт _nn_ нужен для чекаута и сборки транка Mono под Линуксом, далее под этой версией Mono собирается и тестируется компилятор.
Target Stage1:
/home/ziaw/nemerle/NemerleAll-Mono.nproj: error : Error building project /home/ziaw/nemerle/Nemerle.nproj: /home/ziaw/nemerle/Nemerle.nproj: Imported project: "/home/ziaw/nemerle/boot/ DefineConstants=RUNTIME_MONO/Nemerle.MSBuild.targets" does not exist.
/home/ziaw/nemerle/NemerleAll-Mono.nproj: error : Error building project /home/ziaw/nemerle/Nemerle.Compiler.nproj: /home/ziaw/nemerle/Nemerle.Compiler.nproj: Imported project: "/home/ziaw/nemerle/boot/ DefineConstants=RUNTIME_MONO/Nemerle.MSBuild.targets" does not exist.
/home/ziaw/nemerle/NemerleAll-Mono.nproj: error : Error building project /home/ziaw/nemerle/Nemerle.Macros.nproj: /home/ziaw/nemerle/Nemerle.Macros.nproj: Imported project: "/home/ziaw/nemerle/boot/ DefineConstants=RUNTIME_MONO/Nemerle.MSBuild.targets" does not exist.
/home/ziaw/nemerle/NemerleAll-Mono.nproj: error : Error building project /home/ziaw/nemerle/ncc.nproj: /home/ziaw/nemerle/ncc.nproj: Imported project: "/home/ziaw/nemerle/boot/ DefineConstants=RUNTIME_MONO/Nemerle.MSBuild.targets" does not exist.
Task "MSBuild" execution -- FAILED
Done building target "Stage1" in project "/home/ziaw/nemerle/NemerleAll-Mono.nproj".-- FAILED
и стандартный мейк
ziaw@iv:~/nemerle$ ./configure
./configure: 176: cannot open 2: No such file
./configure: 176: 1: not found
It appears you are running not supported shell. Please use:
bash ./configure
or
ksh ./configure
ziaw@iv:~/nemerle$ bash ./configure
Checking for .NET environment... mono
Checking if we are using Mono < 1.2.4... no
Checking for presence of regtool in the system... not found
Checking for .NET disassembler... ./configure: line 484: cygpath: command not found
not found
*** Please make sure that the .Net disassembler is ***
*** available somewhere in PATH. ***
*** Haven't found any disassembler on your system. ***
*** Check configure.log for details. ***
Re[3]: Mono 2.8
От:
Аноним
Дата:
28.10.10 07:07
Оценка:
Здравствуйте, Ziaw, Вы писали:
Z>Здравствуйте, _nn_, Вы писали:
__>>