build nemerle on mono&cygwin
От: cl-user  
Дата: 15.02.07 21:11
Оценка:
Есть по данному вопросу HOWTO или что-либо?
"В лоб" не идёт (последний снапшот):
$ ./configure --prefix=/cygdrive/c/Nemerle/build --mono-from=/cygdrive/c/Mono-1.2.3/bin --disable-bar
...
$ make

1. выдаёт кучу варнингов на cs2n:
CSharpParser.cs(17396,12): warning CS0642: Possible mistaken empty statement
CSharpParser.cs(17438,17): warning CS0642: Possible mistaken empty statement
CSharpParser.cs(17436,12): warning CS0642: Possible mistaken empty statement
CSharpParser.cs(17515,13): warning CS0642: Possible mistaken empty statement
CSharpLexer.cs(329,12): warning CS0219: The variable `_token' is assigned but its value is never used
CSharpLexer.cs(325,11): warning CS0219: The variable `theRetToken' is assigned but its value is never used
CSharpLexer.cs(743,5): warning CS0162: Unreachable code detected
CSharpLexer.cs(3235,5): warning CS0162: Unreachable code detected
CSharpParser.cs(2242,10): warning CS0219: The variable `exp' is assigned but its value is never used
CSharpParser.cs(2241,10): warning CS0219: The variable `parms' is assigned but its value is never used
CSharpParser.cs(2750,10): warning CS0219: The variable `parms' is assigned but its value is never used
CSharpParser.cs(5452,11): warning CS0219: The variable `r' is assigned but its value is never used
CSharpParser.cs(5621,17): warning CS0219: The variable `st' is assigned but its value is never used
CSharpParser.cs(11943,11): warning CS0219: The variable `id' is assigned but its value is never used
CSharpParser.cs(18504,15): warning CS0169: The private method `Nemerle.CSharp.CSharpParser.initializeFactory()' is never used

2. ещё варнинги при сборке nemerlish
make[2]: Entering directory `/cygdrive/c/Nemerle/tools/nemerlish'
/cygdrive/c/Mono-1.2.3/bin//mono ../../ncc/out.stage3/ncc.exe -r Nemerle.Compiler.dll -t library -keyfile:../../misc/keys/Nemerle.Compiler.snk -o Nemerle.Evaluation.dll eval.n
/cygdrive/c/Mono-1.2.3/bin//mono ../../ncc/out.stage3/ncc.exe -r Nemerle.Evaluation.dll -o nemish.exe -keyfile:../../misc/keys/Nemerle.Compiler.snk main.n interp.n readline.n
main.n:239:22:239:23: ←[01;33mwarning←[0m: N168: a function parameter c was never used
main.n:239:22:239:23: ←[01;32mhint←[0m: replace name with `_' or prefix it like `_bar' to avoid the warning
readline.n:92:3:92:24: ←[01;33mwarning←[0m: N10003: method HacksFramework.tgetnum(_N_u1774 : string) : int is
not externally visible and has never been referenced
make[2]: Leaving directory `/cygdrive/c/Nemerle/tools/nemerlish'
...

3. а потом вообще сваливается м ошибкой:
make[2]: Entering directory `/cygdrive/c/Nemerle/tools/nant-task'
/cygdrive/c/Mono-1.2.3/bin//mono ../../ncc/out.stage3/ncc.exe -L:C:\Mono-1.2.3\lib\NAnt -q -greedy- -r NAnt.D
otNetTasks.dll -r NAnt.Core.dll -out Nemerle.NAnt.Tasks.dll -t:library NantTask.n
←[01;31merror←[0m: cannot find assembly `NAnt.DotNetTasks.dll'
make[2]: *** [Nemerle.NAnt.Tasks.dll] Error 3
make[2]: Leaving directory `/cygdrive/c/Nemerle/tools/nant-task'

Почему не идёт? Вот здесь "-L:C:\Mono-1.2.3\lib\NAnt" хочет "/" вместо "\". Ладно, можно в makefile ручками вбить путь лобешно — некогда разбираться

make отработал. Запускаем make install
...
INSTALL [/cygdrive/c/Nemerle/build/man/man1] ncc.1
make[1]: Leaving directory `/cygdrive/c/Nemerle/doc'
make[1]: Entering directory `/cygdrive/c/Nemerle/ncc'
/bin/sh: gacutil.exe: command not found
make[1]: *** [install] Error 127
make[1]: Leaving directory `/cygdrive/c/Nemerle/ncc'
...

Оно и понятно — в моно 1.2.3 не gacutil.exe, а gacutil.bat. Меняем в config.mak ручками и опять запускаем `make install`
Почему-то много сыпется сообщений
make[2]: Nothing to be done for `all'.
Но может так и надо. Но вот и очередная ошибка:
INSTALL Nemerle.NAnt.Tasks.dll
install: cannot change permissions of `C:Mono-1.2.3libNAnt': No such file or directory
make[2]: *** [install] Error 1
make[2]: Leaving directory `/cygdrive/c/Nemerle/tools/nant-task'
make[1]: *** [install] Error 2
make[1]: Leaving directory `/cygdrive/c/Nemerle/tools'
make: *** [install] Error 2

Хм, в папке tools/nant-task есть пустая директория Mono-1.2.3libNAnt. Если теперь повторно запустить `make install` сообщение об ошибке изменится:
install: cannot create regular file `C:Mono-1.2.3libNAnt/Nemerle.NAnt.Tasks.dll': No such file or directory

Копирование в указанную директорию искомой dll-ки результат не приносит. Куда рыть дальше?
У меня нет уверенности, что это я чего-то не напортачил, посему сначала рискнул поинтересоваться здесь
Re: build nemerle on mono&cygwin
От: cl-user  
Дата: 16.02.07 10:33
Оценка:
А-а-а, сам дурак Всё работает. Правда, без исправления результатов ./configure... всё равно не обходится
Re[2]: build nemerle on mono&cygwin
От: VladD2 Российская Империя www.nemerle.org
Дата: 16.02.07 15:43
Оценка:
Здравствуйте, cl-user, Вы писали:

CU>А-а-а, сам дурак Всё работает. Правда, без исправления результатов ./configure... всё равно не обходится


А как же Немерловцы то все это под Линуксом собирают?
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: build nemerle on mono&cygwin
От: ie Россия http://ziez.blogspot.com/
Дата: 16.02.07 18:00
Оценка:
Здравствуйте, cl-user, Вы писали:

Правда, без исправления результатов ./configure... всё равно не обходится

Хммм.... Собирал на cygwin, но не под моно, а под MS .NET 2.0, ничего не правил
... << RSDN@Home 1.2.0 alpha rev. 655>>
Превратим окружающую нас среду в воскресенье.
Re[3]: build nemerle on mono&cygwin
От: Turtle.BAZON.Group  
Дата: 19.02.07 09:26
Оценка:
Здравствуйте, VladD2, Вы писали:

CU>>А-а-а, сам дурак Всё работает. Правда, без исправления результатов ./configure... всё равно не обходится

VD>А как же Немерловцы то все это под Линуксом собирают?

Не знаю. Я собранную закачал через пакетный менеджер. Версия старовата, конечно, но мне много и не надо пока.
... << RSDN@Home 1.2.0 alpha rev. 669>>
Re[3]: build nemerle on mono&cygwin
От: cl-user  
Дата: 19.02.07 09:49
Оценка:
Здравствуйте, VladD2, Вы писали:

CU>>А-а-а, сам дурак Всё работает. Правда, без исправления результатов ./configure... всё равно не обходится


VD>А как же Немерловцы то все это под Линуксом собирают?


Дык я же не под линуксом, а под цигвиком.
Всё, что пришлось править — заменить слэши (один из путей получается не от cygpath, а от какой-то проги -> в стандартной виндовой нотации — как это лечить не думал пока) и у gacutil поменять расширение с .exe на .bat (в моно-1.2.3 уже батник) — скорее всего в ./configure надо вообще убрать расширение, но будет ли работать — не проверял.
Re[4]: build nemerle on mono&cygwin
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.02.07 13:51
Оценка:
Здравствуйте, Turtle.BAZON.Group, Вы писали:

TBG>Не знаю. Я собранную закачал через пакетный менеджер. Версия старовата, конечно, но мне много и не надо пока.


Речь идет о сборке исходников.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: build nemerle on mono&cygwin
От: Turtle.BAZON.Group  
Дата: 20.02.07 08:21
Оценка:
Здравствуйте, VladD2, Вы писали:

TBG>>Не знаю. Я собранную закачал через пакетный менеджер. Версия старовата, конечно, но мне много и не надо пока.

VD>Речь идет о сборке исходников.

Думаете, я сразу этого не понял?
... << RSDN@Home 1.2.0 alpha rev. 669>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.