[Pkg-mono-devel] Installing Monodoc on Debian Unstable?

Mirco Bauer meebey@meebey.net
Tue, 24 May 2005 10:17:01 +0200


--=-1DWA/IvdQe1r9oezIPA0
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

On Mon, 2005-05-23 at 20:33 -0500, Morgan LaMoore wrote:
> Hi, everyone.
>=20
> I've had Mono installed for a while from the 1.0.5 packages, but
> recently SharpDevelop (0.5) stopped working unless I ran it through

you mean MonoDevelop.

>  sudo. I've also been wanting to try System.Windows.Forms. When I saw

sudo? sounds like you have fucked up permissions/ownerships in your home
directory, check with:
cd ~
find -not -user $your_username -or -not -group $your_groupname

>  they had 1.1.6 available for Debian, I decided to grab it. The new
> version of mono seems to have installed fine; the .Net apps I've
> written work fine.

The Mono 1.1 packages and Mono itself got much better with 1.1.x

>=20
> Monodevelop, however, doesn't work. It throws an exception while
> loading; it can't find /usr/lib/monodoc/monodoc.xml. I checked and the
> file doesn't exist:
>=20
> morgan@morgan-debian:~$ ls /usr/lib/monodoc
> assembler.exe  browser.exe  mod.exe  monodocer.exe  normalize.exe
>=20
> According to apt, the package monodoc isn't installed. I went to
> install it, but I got an error. Running apt-get again produced this
> output:

Sounds like an fucked install, probably caused by experiments or source
installs, purge _all_ mono and related packages, clean all left
directories and files (/usr/lib/mono* /usr/share/dotnet/*), remove
symlinks you may have added. And do a _clean_ install, voila everything
works.

>=20
> morgan-debian:/home/morgan# apt-get install monodoc monodoc-browser
> Reading Package Lists... Done
> Building Dependency Tree... Done
> monodoc is already the newest version.
> monodoc-browser is already the newest version.
> 0 upgraded, 0 newly installed, 0 to remove and 322 not upgraded.
> 2 not fully installed or removed.
> Need to get 0B of archives.
> After unpacking 0B of additional disk space will be used.
> Setting up monodoc-browser (1.0.6-2) ...
> generating monodoc search index...
>=20
> Unhandled Exception: System.IO.FileNotFoundException: Could not find
> file "/usr/lib/monodoc/monodoc.xml". : /usr/lib/monodoc/monodoc.xml
> in [0x001d4]
> (at /home/ingo/mono-1.1.6/mcs/class/corlib/System.IO/FileStream.cs:193) S=
ystem.IO.FileStream:.ctor (System.String name, FileMode mode, FileAccess ac=
cess, FileShare share, Int32 bufferSize, Boolean isAsync, Boolean anonymous=
)
> in [0x0000d]
> (at /home/ingo/mono-1.1.6/mcs/class/corlib/System.IO/FileStream.cs:116) S=
ystem.IO.FileStream:.ctor (System.String name, FileMode mode, FileAccess ac=
cess, FileShare share)
> in (wrapper remoting-invoke-with-check) System.IO.FileStream:.ctor
> (string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare)
> in [0x00076]
> (at /home/ingo/mono-1.1.6/mcs/class/System.XML/System.Xml/XmlUrlResolver.=
cs:76) System.Xml.XmlUrlResolver:GetEntity (System.Uri absoluteUri, System.=
String role, System.Type ofObjectToReturn)
> in [0x0007b]
> (at /home/ingo/mono-1.1.6/mcs/class/System.XML/System.Xml/XmlTextReader.c=
s:106) System.Xml.XmlTextReader:.ctor (System.String url, System.Xml.XmlNam=
eTable nt)
> in [0x00009]
> (at /home/ingo/mono-1.1.6/mcs/class/System.XML/System.Xml/XmlDocument.cs:=
620) System.Xml.XmlDocument:Load (System.String filename)
> in [0x00021] (at /home/ingo/monodoc-1.0.6/browser/provider.cs:697)
> Monodoc.RootTree:LoadTree (System.String basedir)
> in [0x0005d] (at /home/ingo/monodoc-1.0.6/browser/provider.cs:680)
> Monodoc.RootTree:LoadTree ()
> in [0x00000] (at /home/ingo/monodoc-1.0.6/browser/provider.cs:1151)
> Monodoc.RootTree:MakeIndex ()
> in <0x00118> Monodoc.Driver:Main (System.String[] args)
> dpkg: error processing monodoc-browser (--configure):
>  subprocess post-installation script returned error exit status 1
> dpkg: dependency problems prevent configuration of monodoc:
>  monodoc depends on monodoc-browser (>=3D 1.0.6-2); however:
>   Package monodoc-browser is not configured yet.
> dpkg: error processing monodoc (--configure):
>  dependency problems - leaving unconfigured
> Errors were encountered while processing:
>  monodoc-browser
>  monodoc
> E: Sub-process /usr/bin/dpkg returned an error code (1)
>=20
> It looks like there's a circular dependency: monodoc needs
> monodoc-browser, but monodoc-browser tries to index files that aren't
> there yet. Any ideas on how to fix this?

nope, nothing to do with the packages, see above.

>=20
> Also, I don't know if this is something for you guys to handle, but
> the library Tao.Sdl comes with a config file to tell Mono to use
> libSDL.so instead of SDL.dll, as well as other libraries:
>=20
> <configuration>
>     <dllmap dll=3D"SDL.dll" target=3D"libSDL.so" />
>     <dllmap dll=3D"SDL_image.dll" target=3D"libSDL_image.so" />
>     <dllmap dll=3D"SDL_mixer.dll" target=3D"libSDL_mixer.so" />
>     <dllmap dll=3D"SDL_ttf.dll" target=3D"libSDL_ttf.so" />
>     <dllmap dll=3D"smpeg.dll" target=3D"libsmpeg.so" />
>     <dllmap dll=3D"SDL_gfx.dll" target=3D"libSDL_gfx.so" />
> </configuration>
>=20
> Apparently this should allow Mono to transparently use the
> corresponding Linux library instead of the sdl dlls. On my computer,
> though, and probably all Debian unstable installations, these files
> don't exist directly; they have names like this:  libSDL-1.2.so.0,
> libSDL_net-1.2.so.0, libSDL_ttf-2.0.so.0, and so on. On my system I
> just created symlinks from the library names in the config file to the
> actual libraries. That doesn't seem like a good thing to require my
> users to do, though. If I just change the config file, that may make
> it compatible with other Linux distros. What would be the best way to
> handle this mapping?

the mapping should NOT be done via symlinks, it breaks the versioning
sense at all with C libraries!
The proper way is to ship *.config dllmap files for each program/library
that tries to DllImport libraries, for an example take a look at
gtk-sharp.dll.config

>=20
> Thanks,
> Morgan LaMoore
--=20
Regards,

Mirco 'meebey' Bauer

PGP-Key:
http://keyserver.noreply.org/pks/lookup?op=3Dget&search=3D0xEEF946C8

-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GIT d s-:+ a-- C++ UL++++$ P L++$>+++$ E- W+++$ N o? K- w++>! O---- M-
V? PS
PE+ Y- PGP++ t 5+ X++ R tv+ b+ DI? D+ G>++ e h! r->++ y?
------END GEEK CODE BLOCK------

--=-1DWA/IvdQe1r9oezIPA0
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: This is a digitally signed message part

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iQEVAwUAQpLi/XEn5avu+UbIAQIyBwf/fRom2jPUo858ZbrI1R19AkFpHaks5xXe
ra57T3rWHXF9QD25AR2RQiJbu5Z3/rOvdV2n9g+/eTsMpgEx1gSTpZdrTn3dAhJA
e3KZg43E3vVQuIH+4CWDXFnTMySsYX9R5FKLhB0KKVcAKPzJPkoEotE5caTpEsKC
yFhuWVERDcHT1xYBhiSfv41E9SSK+INB06ff7yPGwzow3uVwNtnBqvDDFIUeq7mG
ETGZibdnwpRsKcYwSW9nF/yTcBAWx5hnTFaW4xB5nwlqXQvsJ/lVlP+lIEFNygBF
zL6bfloeOjPd8rmrv4hF1ophPQFz9RKMl/AOjnGW+H5Z7N4aoZAIWg==
=0SyO
-----END PGP SIGNATURE-----

--=-1DWA/IvdQe1r9oezIPA0--