LINUX.ORG.RU

Ubuntu: собрать Monodevelop 4.0.1


0

1

Что я сделал:

я скачал исходники monodevelop с git:
git clone git://github.com/mono/monodevelop.git
скачал его зависимости:
cd monodevelop && git submodule init && git submodule update

установил mono 3.0.11 (потому что
You need mono 2.10.9 or newer
а по-умолчанию стоял 2.10.8.1)

добавил репозиторий:
cat «deb http://ubuntu.mirror.cambrium.nl/ubuntu/ lucid main» >> /etc/apt/sources.list

установил пакеты
apt-get install libglib2.0-cil gnome-sharp2 gtk-sharp2 libmono-addins-cil-dev libmono-addins-gui-cil-dev libmono-addins-msbuild-cil-dev

в итоге ./configure мне написал:

Configuration Summary
---------------------

MonoDevelop has been configured with 
    prefix = /usr/local
    profile = default

Packages included in the build:
    main
    extras/JavaBinding
    extras/ValaBinding
    extras/MonoDevelop.Database
    extras/MonoDevelop.Debugger.Gdb
    extras/PyBinding
    extras/MonoDevelop.MeeGo


а вот когда я стал делать make, мне выдается такая ошибка:
# make | grep "not resolved"
/usr/local/lib/mono/4.0/Microsoft.Common.targets:  warning : Reference 'glib-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f' not resolved
/usr/local/lib/mono/4.0/Microsoft.Common.targets:  warning : Reference 'pango-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f' not resolved
/usr/local/lib/mono/4.0/Microsoft.Common.targets:  warning : Reference 'atk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f' not resolved
/usr/local/lib/mono/4.0/Microsoft.Common.targets:  warning : Reference 'gdk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f' not resolved
/usr/local/lib/mono/4.0/Microsoft.Common.targets:  warning : Reference 'gtk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f' not resolved
/usr/local/lib/mono/4.0/Microsoft.Common.targets:  warning : Reference 'glade-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f' not resolved

http://article.gmane.org/gmane.comp.gnome.mono.monodevelop.general/14338

там рекомендуют установить gtk-sharp:
«It looks like you need to install gtk-sharp 2.12.x»

но мне не понятно, что надо сделать, потому что вроде бы как уже стоит:
# pkg-config --modversion gtk-sharp-2.0
2.12.10
# find / -xdev -iname "Gtk*.dll"
/usr/lib/mono/gac/gtk-sharp/2.12.0.0__35e10195dab3c99f/gtk-sharp.dll
/usr/lib/mono/gac/gtk-dotnet/2.12.0.0__35e10195dab3c99f/gtk-dotnet.dll
/usr/lib/cli/gtk-sharp-2.0/gtk-sharp.dll
/usr/lib/cli/gtk-dotnet-2.0/gtk-dotnet.dll

http://www.mono-project.com/Parallel_Mono_Environments#Tip:_MONO_GAC_PREFIX

сделал
# echo $MONO_GAC_PREFIX
/usr

Всё равно не компилируется...



Последнее исправление: StrongDollar (всего исправлений: 3)

ИМХО с четвёрки проект коммерциализировался. Либо красноглазь, либо сиди на тройке (я так и сделал). Ну или покупай и долби поддержку.

ziemin ★★
()

Попробуй «sudo apt-get build-dep mono» - вдруг ты всё-таки не всё установил. Для того чтобы сработало в списке репозиториев должна стоять галочка на Source.

ZenitharChampion ★★★★★
()
Ответ на: комментарий от ZenitharChampion

сказал
apt-get build-dep mono
apt-get build-dep monodevelop

что-то поставилось, но в процессе компиляции ничего не поменялось

StrongDollar
() автор топика
mkdir mono-build
cd mono-build
wget http://archive.ubuntu.com/ubuntu/pool/main/m/mono/mono_2.10.8.1-5ubuntu1.dsc
wget http://archive.ubuntu.com/ubuntu/pool/main/m/mono/mono_2.10.8.1.orig.tar.gz
wget http://archive.ubuntu.com/ubuntu/pool/main/m/mono/mono_2.10.8.1-5ubuntu1.debian.tar.gz
dpkg-source -x mono_2.10.8.1-5ubuntu1.dsc
cd mono_2.10.8.1-5ubuntu1

А теперь удаляешь всё, кроме каталога DEBIAN, скачиваешь это, распаковываешь вместо старого mono. И кстати вторую ссылку в списке команд может быть даже не надо скачивать - тупо взять третью ссылку и распаковать в каталог с новым Mono. А теперь собираем DEB-пакет:

fakeroot ./debian/rules binary
ZenitharChampion ★★★★★
()
Ответ на: комментарий от ziemin

ИМХО с четвёрки проект коммерциализировался. Либо красноглазь, либо сиди на тройке (я так и сделал). Ну или покупай и долби поддержку.

Да ладно, под мак и оффтопик - есть готовые сборки 4.x версии, видимо дело в приоритетах. Ничто не мешает собрать и под Ubuntu.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

есть готовые сборки 4.x версии

Ну да. Глюк на глюке сидит. Пункт в меню типа «License...» - ерунда всё это.

ziemin ★★
()

ничего там не надо красноглазить, там же на гитхабе в репе mono лежит все что у вас там грепанулось. также, зависимости тоже c гитхаба ставил.

zarkone ★★
()

Сделай так. Забекапь свой /usr на всякий случай. И делай ./configure --prefix=/usr

Возможно что разработчики сделали ошибки в путях. Например, как в KDevelop 4.5, в /usr/local ставится не хочет. В /usr без проблем.

bhfq ★★★★★
()
Ответ на: комментарий от ziemin

Если работа по найму, а не фриланс, то тогда пусть работодатель либо платит за лицензию, либо учитывает бубнопляски как рабочее время.

Ttt ☆☆☆☆☆
()
Ответ на: комментарий от StrongDollar

У Дорифа спроси, он недавно по моей просьбе четверку собрал.

LongLiveUbuntu ★★★★★
()
Ответ на: комментарий от Ttt

либо платит за лицензию

Какую лицензию? //Экран затемняется, воспоминания... Срок сдачи позавчера. ТЗ нет.

Я, наверное единственный человек, который пишет промышленный сервер (под оффтопик) на monodevelop. Могу сказать сразу - отладка отвратительная. Никогда не угадаешь, где он откажется точку останова делать. MD это основной инструмент. Для отладки использую sharpdevelop.

ziemin ★★
()
Ответ на: комментарий от Dorif

ТС всего скорее не захотел захламлять свой /usr и следовал принципу бинарных дистров «то что собираешь руками ставь /usr/local».

А на деле... никто не тестирует установку не в /usr.

bhfq ★★★★★
()
Ответ на: комментарий от ziemin

Какую лицензию?

Ну поддержку, или что там этот Мигелюшка (или кто теперь там) хочет.

Ttt ☆☆☆☆☆
()
Ответ на: комментарий от Dorif

удваиваю, везде так напиисано, и я все собирал с префиксом.

zarkone ★★
()
Ответ на: комментарий от I-Love-Microsoft

Гдето там в менюшках. Не помню я. Факт в том, что md тепрь хостится у ксамарина. А это целиком коммерческая структура.

ziemin ★★
()
Ответ на: комментарий от Dorif

Может ТС реально забыл это дописать?

да, не дописал (потому что readme не читал и не знал)

но оно всё равно не собралось, не собирается,
с такими ошибками:

./JavaLanguageBinding.cs(31,28): error CS0234: The type or namespace name `Dom' does not exist in the namespace `MonoDevelop.Projects'. Are you missing an assembly reference?
./JavaLanguageBinding.cs(32,28): error CS0234: The type or namespace name `Dom' does not exist in the namespace `MonoDevelop.Projects'. Are you missing an assembly reference?
./JavaLanguageBinding.cs(34,28): error CS0234: The type or namespace name `CodeGeneration' does not exist in the namespace `MonoDevelop.Projects'. Are you missing an assembly reference?
./JavaLanguageBinding.cs(109,10): error CS0246: The type or namespace name `IParser' could not be found. Are you missing an assembly reference?
./JavaLanguageBinding.cs(113,10): error CS0246: The type or namespace name `IRefactorer' could not be found. Are you missing an assembly reference?

StrongDollar
() автор топика
Последнее исправление: StrongDollar (всего исправлений: 1)
Ответ на: комментарий от ZenitharChampion

в данном случае дело не в нестабильности, потому что такие ошибки упоминаются в гугле и пару лет назад. Но решения там нет (видимо люди как-то фиксят и не выкладывают как).

вот я тоже задеселектил java-у...

./configure --select --prefix=/usr

теперь ошибки такие:

http://askubuntu.com/questions/91527/problem-installing-monodevelop-2-10-5-on-ubuntu-11-10
/usr/local/lib/mono/4.0/Microsoft.Common.targets:  warning : Reference 'ICSharpCode.Decompiler, Version=0.0.0.0, Culture=neutral, PublicKeyToken=d4bfe873e7598c49' not resolved
/usr/local/lib/mono/4.0/Microsoft.Common.targets:  warning : Reference 'MonoDevelop.AspNet.Mvc, Version=2.6.0.0, Culture=neutral, PublicKeyToken=null' not resolved
/usr/local/lib/mono/4.0/Microsoft.Common.targets:  warning : Reference 'MonoDevelop.VersionControl.Git, Version=2.6.0.0, Culture=neutral, PublicKeyToken=null' not resolved
/usr/local/lib/mono/4.0/Microsoft.Common.targets:  warning : Reference 'NGit, Version=2.1.0.0, Culture=neutral, PublicKeyToken=null' not resolved
/usr/local/lib/mono/4.0/Microsoft.Common.targets:  warning : Reference 'System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' not resolved
StrongDollar
() автор топика
Последнее исправление: StrongDollar (всего исправлений: 1)
Ответ на: комментарий от StrongDollar

теперь оно собирается и запускается (версия в about = 4.0.6), но терзают сомнения, что не всё докомпилировал.

особенно меня волнует MVC 4 и EntityFramework

StrongDollar
() автор топика
Последнее исправление: StrongDollar (всего исправлений: 2)
Ответ на: комментарий от StrongDollar

По моему рецепту ошибки быть не может. Это же DEB-SRC из твоей же версии убунту. Если всё-таки не собирается DEB-SRC, воспользуйся OBS. Залей туда эти три файла, поставь галочку на Ubuntu и всё гарантированно соберётся. Там не трудно. А вот заменить 2.10.18 на 2.10.19 посложнее. Подменить «orig.tar.gz» мало, нужно ещё контрольные суммы поменять сначала в «debian.tar.gz», а затем в «dsc». Где-то там же меняется версия. Хотя может можно и проще, я не знаю. Я последний раз собирал DEB в 2009 году и могу всё перепутать. Сейчас у меня RPM.

ZenitharChampion ★★★★★
()
Ответ на: комментарий от StrongDollar

Собралось? Это хорошо. Если тебе кажется что ты скомпилировал не всё, посмотри в /usr/local/bin с сортировкой «по дате». Если знаешь, какие конкретно программы тебе нужны.

ZenitharChampion ★★★★★
()
Ответ на: комментарий от ZenitharChampion

посмотри в /usr/local/bin с сортировкой «по дате»

посмотрел - все файлы вчерашней даты

Если знаешь, какие конкретно программы тебе нужны.

нет, не знаю.

StrongDollar
() автор топика
Ответ на: комментарий от ZenitharChampion

когда я собираю программы (я пытаюсь скомпилировать GitExt)

git clone https://github.com/gitextensions/gitextensions.git
cd gitextensions
./GitExtensionsMono.build.sh

он мне выдает ошибку

/usr/local/lib/mono/4.0/Microsoft.Common.targets: warning : Reference 'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' not resolved

без mscorlib у меня ничего собираться не будет...

StrongDollar
() автор топика
Последнее исправление: StrongDollar (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.