Please do not reply to this email- if you want to comment on the bug, go to the URL shown below and enter your comments there.
Changed by [EMAIL PROTECTED] http://bugzilla.ximian.com/show_bug.cgi?id=81270 --- shadow/81270 2007-03-30 08:14:27.000000000 -0500 +++ shadow/81270.tmp.1257 2007-03-30 08:14:27.000000000 -0500 @@ -0,0 +1,122 @@ +Bug#: 81270 +Product: Mono: Runtime +Version: 1.2 +OS: GNU/Linux [Other] +OS Details: Ubuntu 6.10 +Status: NEW +Resolution: +Severity: +Priority: Wishlist +Component: interop +AssignedTo: [EMAIL PROTECTED] +ReportedBy: [EMAIL PROTECTED] +QAContact: [EMAIL PROTECTED] +TargetMilestone: --- +URL: +Cc: +Summary: Mono doesn't see a native library, if it is under a program directory + +Please fill in this template when reporting a bug, unless you know what you +are doing. +Description of Problem: +Mono doesn't see a native library, if it is not in LD_LIBRARY_PATH. Well, +actually it does, but in a strange way. There are two libraries in my +program's directory, libIrrlichtW.so and libode.so. The first links just +fine, but the second acts like a ghost. This is a fragment of strace output. + +stat64("./libode.so", 0xbfb56040) = -1 ENOENT (No such file or directory) +stat64("./libode.so.so", 0xbfb56040) = -1 ENOENT (No such file or directory) +stat64("./libode.so.la", 0xbfb56040) = -1 ENOENT (No such file or directory) +open("./libode.so", O_RDONLY) = -1 ENOENT (No such file or directory) +stat64("ode", 0xbfb56040) = -1 ENOENT (No such file or directory) +stat64("ode.so", 0xbfb56040) = -1 ENOENT (No such file or directory) +stat64("ode.la", 0xbfb56040) = -1 ENOENT (No such file or directory) +open("/etc/ld.so.cache", O_RDONLY) = 16 +fstat64(16, {st_mode=S_IFREG|0644, st_size=93823, ...}) = 0 +mmap2(NULL, 93823, PROT_READ, MAP_PRIVATE, 16, 0) = 0xaca37000 +close(16) = 0 +access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) +open("/lib/tls/i686/cmov/ode.so", O_RDONLY) = -1 ENOENT (No such file or +directory) +open("/lib/tls/i686/ode.so", O_RDONLY) = -1 ENOENT (No such file or directory) +open("/lib/tls/cmov/ode.so", O_RDONLY) = -1 ENOENT (No such file or directory) +open("/lib/tls/ode.so", O_RDONLY) = -1 ENOENT (No such file or directory) +open("/lib/i686/cmov/ode.so", O_RDONLY) = -1 ENOENT (No such file or directory) +open("/lib/i686/ode.so", O_RDONLY) = -1 ENOENT (No such file or directory) +open("/lib/cmov/ode.so", O_RDONLY) = -1 ENOENT (No such file or directory) +open("/lib/ode.so", O_RDONLY) = -1 ENOENT (No such file or directory) +open("/usr/lib/tls/i686/cmov/ode.so", O_RDONLY) = -1 ENOENT (No such file +or directory) +open("/usr/lib/tls/i686/ode.so", O_RDONLY) = -1 ENOENT (No such file or +directory) +open("/usr/lib/tls/cmov/ode.so", O_RDONLY) = -1 ENOENT (No such file or +directory) +open("/usr/lib/tls/ode.so", O_RDONLY) = -1 ENOENT (No such file or directory) +open("/usr/lib/i686/cmov/ode.so", O_RDONLY) = -1 ENOENT (No such file or +directory) +open("/usr/lib/i686/ode.so", O_RDONLY) = -1 ENOENT (No such file or directory) +open("/usr/lib/cmov/ode.so", O_RDONLY) = -1 ENOENT (No such file or directory) +open("/usr/lib/ode.so", O_RDONLY) = -1 ENOENT (No such file or directory) +open("/lib/i486-linux-gnu/tls/i686/cmov/ode.so", O_RDONLY) = -1 ENOENT (No +such file or directory) +open("/lib/i486-linux-gnu/tls/i686/ode.so", O_RDONLY) = -1 ENOENT (No such +file or directory) +open("/lib/i486-linux-gnu/tls/cmov/ode.so", O_RDONLY) = -1 ENOENT (No such +file or directory) +open("/lib/i486-linux-gnu/tls/ode.so", O_RDONLY) = -1 ENOENT (No such file +or directory) +open("/lib/i486-linux-gnu/i686/cmov/ode.so", O_RDONLY) = -1 ENOENT (No such +file or directory) +open("/lib/i486-linux-gnu/i686/ode.so", O_RDONLY) = -1 ENOENT (No such file +or directory) +open("/lib/i486-linux-gnu/cmov/ode.so", O_RDONLY) = -1 ENOENT (No such file +or directory) +open("/lib/i486-linux-gnu/ode.so", O_RDONLY) = -1 ENOENT (No such file or +directory) +open("/usr/lib/i486-linux-gnu/tls/i686/cmov/ode.so", O_RDONLY) = -1 ENOENT +(No such file or directory) +open("/usr/lib/i486-linux-gnu/tls/i686/ode.so", O_RDONLY) = -1 ENOENT (No +such file or directory) +open("/usr/lib/i486-linux-gnu/tls/cmov/ode.so", O_RDONLY) = -1 ENOENT (No +such file or directory) +open("/usr/lib/i486-linux-gnu/tls/ode.so", O_RDONLY) = -1 ENOENT (No such +file or directory) +open("/usr/lib/i486-linux-gnu/i686/cmov/ode.so", O_RDONLY) = -1 ENOENT (No +such file or directory) +open("/usr/lib/i486-linux-gnu/i686/ode.so", O_RDONLY) = -1 ENOENT (No such +file or directory) +open("/usr/lib/i486-linux-gnu/cmov/ode.so", O_RDONLY) = -1 ENOENT (No such +file or directory) +open("/usr/lib/i486-linux-gnu/ode.so", O_RDONLY) = -1 ENOENT (No such file +or directory) +munmap(0xaca37000, 93823) = 0 + +Instead this is another fragment, which shows a correct finding of another +library. + +stat64("./libIrrlichtW.so", {st_mode=S_IFREG|0700, st_size=3318720, ...}) = 0 +open("./libIrrlichtW.so", O_RDONLY) = 12 +read(12, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 \363\23"..., 512) += 512 +fstat64(12, {st_mode=S_IFREG|0700, st_size=3318720, ...}) = 0 + +As you can see, the mono doesn't see a library under a program directory, +so it looks for a it at the whole LD_LIBRARY_PATH. If I place it under one +of those directories it starts just fine. The libraries are in the same +directory, so why does one links, and another refuses to do it? + +Steps to reproduce the problem: +1. I don't know what is the reason of this behaviour +2. +3. + +Actual Results: +the mono doesn't see a library + +Expected Results: +the library should be found and linked to the program + +How often does this happen? +Everytime + +Additional Information: _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
