MonoDevelop XML Editorのインストールについて
(2010/4/15)MonoDevelopのバージョン2.0以上では標準でXMLエディタが付属するため、本記事の方法による追加インストールは不要となっている。
以下、以前の内容となる。
MonoDevelopのアドインマネージャから入れられるらしいのだが、リポジトリ設定をしても何も出てこなかった(HTTPでサーバと通信はしているのだが、色々いじっても何も表示されない)ため、ソースからのインストールを行った。
インストール先の注意点
デフォルトのインストール先である/usr/local/以下に設定してしまうと$ ./configure $ make (中略) error CS0006: cannot find metadata file `/usr/local/lib/monodevelop/bin/Mono.Addins.dll' error CS0006: cannot find metadata file `/usr/local/lib/monodevelop/AddIns/MonoDevelop.Components.dll' error CS0006: cannot find metadata file `/usr/local/lib/monodevelop/bin/MonoDevelop.Core.dll' error CS0006: cannot find metadata file `/usr/local/lib/monodevelop/AddIns/MonoDevelop.Core.Gui.dll' error CS0006: cannot find metadata file `/usr/local/lib/monodevelop/AddIns/MonoDevelop.Ide.dll' error CS0006: cannot find metadata file `/usr/local/lib/monodevelop/AddIns/MonoDevelop.Projects.dll' error CS0006: cannot find metadata file `/usr/local/lib/monodevelop/AddIns/MonoDevelop.Projects.Gui.dll' error CS0006: cannot find metadata file `/usr/local/lib/monodevelop/AddIns/MonoDevelop.SourceEditor.dll' Compilation failed: 8 error(s), 0 warnings make[2]: *** [../../build/AddIns/XmlEditor/MonoDevelop.XmlEditor.dll] Error 1 make[2]: Leaving directory `/tmp/work/md-xmleditor-0.5/src/MonoDevelop.XmlEditor' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/tmp/work/md-xmleditor-0.5/src' make: *** [all-recursive] Error 1
となり、ビルドに失敗する。
下の流れで作業をすることで、依存パッケージさえ揃っていれば問題なくインストールできる。
$ tar zxf md-xmleditor-0.5.tar.gz $ cd md-xmleditor-0.5/ $ ./configure --prefix=/usr $ make $ sudo make install
アンインストールは、ソースのディレクトリから
$ sudo make uninstall
で行える他、管理者権限でMonoDevelopを起動して、アドインマネージャから消すこともできる(確認済)。
Gentoo Linuxの自作ebuildファイル
以下のebuildファイルを使用することで、Gentoo Linuxのパッケージとしてインストールすることができる。x86(32bit)環境での動作確認をしていないため、x86な人は「KEYWORDS="~amd64 ~x86"」のようにして入れる。
ファイル名: md-xmleditor-0.5.ebuild
# Copyright 1999-2007 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ inherit mono DESCRIPTION="An XML Editor add-in for MonoDevelop that provides element, attribute, attribute value and namespace completion based on an XML schema." HOMEPAGE="http://md-xed.sourceforge.net/" SRC_URI="mirror://sourceforge/md-xed/${P}.tar.gz" LICENSE="LGPL-2.1" SLOT="0" KEYWORDS="~amd64" IUSE="" RDEPEND=">=dev-util/monodevelop-0.15 >=dev-lang/mono-1.1.10 >=dev-dotnet/gtk-sharp-2.8.0 >=dev-dotnet/gtksourceview-sharp-0.10 >=dev-dotnet/gnome-sharp-2.8.0 >=dev-dotnet/gnomevfs-sharp-2.8.0 >=dev-dotnet/glade-sharp-2.8.0" DEPEND="${RDEPEND} >=dev-util/pkgconfig-0.19" src_install() { emake install prefix="${D}/usr" || die "emake install failed" }
依存パッケージとそのバージョンに関しては、configure.inに書かれている記述から取っている。pkgconfigのバージョンは、monodevelop-0.15.ebuildの中に書かれているバージョンに合わせた。
以下は、インストールの作業例。ローカルOverlayの準備として、/etc/make.confの${PORTDIR_OVERLAY}と/etc/portage/package.keywordsの設定をした後、インストールをする。
$ sudo mkdir /usr/local/overlays/local/app-editors/md-xmleditor/files -p $ sudo cp md-xmleditor-0.5.ebuild /usr/local/overlays/local/app-editors/md-xmleditor/ $ sudo ebuild /usr/local/overlays/local/app-editors/md-xmleditor/md-xmleditor-0.5.ebuild digest $ sudo emerge -av md-xmleditor
ebuildファイルの配置場所として「app-editors」の下がふさわしいのかどうかは、よく分からない。
(2008/1/1)MonoDevelop 1.0 Beta 3(0.18)でビルドしようとしてもうまくいかなかった。バージョン1系に対応するまで待つか、0.15で使用するのがよさそう。
cp ./schemas/xslt.xsd ../../build/AddIns/XmlEditor/schemas/. error CS0006: cannot find metadata file `/usr/lib/monodevelop/bin/Mono.Addins.dll' error CS0006: cannot find metadata file `/usr/lib/monodevelop/AddIns/MonoDevelop.Components.dll' error CS0006: cannot find metadata file `/usr/lib/monodevelop/AddIns/MonoDevelop.Core.Gui.dll' error CS0006: cannot find metadata file `/usr/lib/monodevelop/AddIns/MonoDevelop.Ide.dll' error CS0006: cannot find metadata file `/usr/lib/monodevelop/AddIns/MonoDevelop.Projects.dll' error CS0006: cannot find metadata file `/usr/lib/monodevelop/AddIns/MonoDevelop.Projects.Gui.dll' Compilation failed: 6 error(s), 0 warnings make[2]: *** [../../build/AddIns/XmlEditor/MonoDevelop.XmlEditor.dll] Error 1 make[2]: Leaving directory `/var/tmp/portage/app-editors/md-xmleditor-0.5/work/md-xmleditor-0.5/src/MonoDevelop.XmlEditor' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/app-editors/md-xmleditor-0.5/work/md-xmleditor-0.5/src' make: *** [all-recursive] Error 1