Package: pnet-compiler
Version: 0.7.4-1

I tried to compile some C# code but got this error:

[EMAIL PROTECTED]:~/src/libidn/csharp/generate$ cscc -o GenerateTables *.cs
mscorlib: No such library
[EMAIL PROTECTED]:~/src/libidn/csharp/generate$

However, I do have libmono-corlib2.0-cil installed:

mocca:/home/jas/src/libidn/csharp/generate# dpkg -L libmono-corlib2.0-cil|grep 
mscorlib.dll
/usr/lib/mono/2.0/mscorlib.dll.mdb
/usr/lib/mono/2.0/mscorlib.dll
mocca:/home/jas/src/libidn/csharp/generate# dpkg -l|grep libmono-corlib2.0-cil
ii  libmono-corlib2.0-cil             1.2.2.1-1                       Mono core 
library (2.0)
mocca:/home/jas/src/libidn/csharp/generate#

Using strace reveals that cscc is looking for mscorlib in the wrong
directory:

[EMAIL PROTECTED]:~/src/libidn/csharp/generate$ strace -f cscc -o 
GenerateTables *.cs
...
[pid 24824] access("./mscorlib.dll", F_OK) = -1 ENOENT (No such file or 
directory)
[pid 24824] access("./mscorlib.DLL", F_OK) = -1 ENOENT (No such file or 
directory)
[pid 24824] access("./mscorlib.dll.gz", F_OK) = -1 ENOENT (No such file or 
directory)
[pid 24824] access("/usr/lib/cscc/lib/mscorlib.dll", F_OK) = -1 ENOENT (No such 
file or directory)
[pid 24824] access("/usr/lib/cscc/lib/mscorlib.DLL", F_OK) = -1 ENOENT (No such 
file or directory)
[pid 24824] access("/usr/lib/cscc/lib/mscorlib.dll.gz", F_OK) = -1 ENOENT (No 
such file or directory)
[pid 24824] access("/usr/local/lib/cscc/lib/mscorlib.dll", F_OK) = -1 ENOENT 
(No such file or directory)
[pid 24824] access("/usr/local/lib/cscc/lib/mscorlib.DLL", F_OK) = -1 ENOENT 
(No such file or directory)
[pid 24824] access("/usr/local/lib/cscc/lib/mscorlib.dll.gz", F_OK) = -1 ENOENT 
(No such file or directory)
[pid 24824] access("/usr/lib/cscc/lib/mscorlib.dll", F_OK) = -1 ENOENT (No such 
file or directory)
[pid 24824] access("/usr/lib/cscc/lib/mscorlib.DLL", F_OK) = -1 ENOENT (No such 
file or directory)
[pid 24824] access("/usr/lib/cscc/lib/mscorlib.dll.gz", F_OK) = -1 ENOENT (No 
such file or directory)
[pid 24824] access("/usr/share/dotnet/mscorlib.dll", F_OK) = -1 ENOENT (No such 
file or directory)
[pid 24824] access("/usr/share/dotnet/mscorlib.DLL", F_OK) = -1 ENOENT (No such 
file or directory)
[pid 24824] access("/usr/share/dotnet/mscorlib.dll.gz", F_OK) = -1 ENOENT (No 
such file or directory)
[pid 24824] access("/usr/lib/mscorlib.dll", F_OK) = -1 ENOENT (No such file or 
directory)
[pid 24824] access("/usr/lib/mscorlib.DLL", F_OK) = -1 ENOENT (No such file or 
directory)
[pid 24824] access("/usr/lib/mscorlib.dll.gz", F_OK) = -1 ENOENT (No such file 
or directory)
[pid 24824] access("/usr/local/lib/mscorlib.dll", F_OK) = -1 ENOENT (No such 
file or directory)
[pid 24824] access("/usr/local/lib/mscorlib.DLL", F_OK) = -1 ENOENT (No such 
file or directory)
[pid 24824] access("/usr/local/lib/mscorlib.dll.gz", F_OK) = -1 ENOENT (No such 
file or directory)
[pid 24824] access("/usr/X11R6/lib/mscorlib.dll", F_OK) = -1 ENOENT (No such 
file or directory)
[pid 24824] access("/usr/X11R6/lib/mscorlib.DLL", F_OK) = -1 ENOENT (No such 
file or directory)
[pid 24824] access("/usr/X11R6/lib/mscorlib.dll.gz", F_OK) = -1 ENOENT (No such 
file or directory)
[pid 24824] access("/usr/lib/mscorlib.dll", F_OK) = -1 ENOENT (No such file or 
directory)
[pid 24824] access("/usr/lib/mscorlib.DLL", F_OK) = -1 ENOENT (No such file or 
directory)
[pid 24824] access("/usr/lib/mscorlib.dll.gz", F_OK) = -1 ENOENT (No such file 
or directory)
[pid 24824] write(2, "mscorlib: No such library\n", 26mscorlib: No such library
) = 26
...

I suppose the solution is for the hard-coded search path is to include
/usr/lib/mono/2.0/ and/or /usr/lib/mono/1.0/.

A workaround for this is to generate symlinks in one of the places
(e.g., /usr/local/lib/cscc/lib/) for mscorlib.dll*.

Thanks,
Simon


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to