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

Mirco Bauer meebey@meebey.net
Sat, 28 May 2005 21:10:02 +0200


--=-VzSPElBFBjJHZAMmtRga
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

On Sat, 2005-05-28 at 10:37 -0500, Morgan LaMoore wrote:
...

> Thanks. After a total purge and re-install it's working.
> =20
>=20
>         >
>         > Also, I don't know if this is something for you guys to
>         handle, but=20
>         > 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:
>         >
>         > <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" />=20
>         >     <dllmap dll=3D"smpeg.dll" target=3D"libsmpeg.so" />
>         >     <dllmap dll=3D"SDL_gfx.dll" target=3D"libSDL_gfx.so" />
>         > </configuration>
>         >
>         > Apparently this should allow Mono to transparently use the=20
>         > 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=20
>         > 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?
>        =20
>         the mapping should NOT be done via symlinks, it breaks the
>         versioning=20
>         sense at all with C libraries!
>=20
>  I understand that symlinks aren't OK for a general solution; I'm just
> using them so it works on my machine.
>=20
>=20
>         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=20
>         gtk-sharp.dll.config
>=20
> The library shipped as a .dll with a matching .dll.config (shown
> above) that didn't match the names of the .so files on my system. I
> could change the .dll.config to match the filenames with version
> numbers on my system, but wouldn't that break compatibility with other
> systems that have different names for the libraries? Could I trust
> that all Linux distros will use that same naming scheme for these .so
> files?

those exact .so.X names should be resolved on compile time, its works
pretty the same how the mcs compiler finds the right version to compile
against, the dll later knows which version it was compiled against, so
the runtime later when the program is run will load that version.
And so it goes with .so.X, the compiler uses .so and the runtime later
will use the .so.X name which was used for compiling, I know that Gtk#
doesn't really do that, they just use .so.1 which is usually the first
stable API and works in most cases.

>=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------

--=-VzSPElBFBjJHZAMmtRga
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)

iQEVAwUAQpjCCnEn5avu+UbIAQKXIwf9FZK6uH7dCze7oYsd4iYMvvvyb+eoE+fl
7p7UqZFPq1SjM9QMnx+tOeC3LZ19azlDam2jdyY1tO+x6pt3wdv80kI0eNwNSydp
XJsntXvbYxcDPHqw46WyBtaAFUwqUaRCQbcxG3EF71N6kgUNWK/eIlZ85PKgZK6L
R1JpqR6FmElXrHWo0PTvelBhN49oqhdfek4M6y/XMrJTeDoT8j9zzbRcbrpr+5OI
RpvLraAzvfr3VFvCNrAatXA/vuIIzEgcir3dXAXVox6W0wtsfU0hae91/4dkks1S
lcshfoSzoS2mU7kt7bTBqoHu4ZdPFmT9qOrnGzEZ3qc1nydE2RnHRA==
=ntg2
-----END PGP SIGNATURE-----

--=-VzSPElBFBjJHZAMmtRga--