Thanks Miguel, we can continue from here.

We're using a clean OpenSUSE 13.2, but we'll figure out what to do.

Thanks!

pablo

On 10/6/2015 19:24, Miguel de Icaza wrote:
Ok, that looks like an issue with your Autoconf installation (did you run autogen, or is this the one we ship)?

In any case the challenge is that your lib64 directory needs to be listed in your ld.so.conf, otherwise calls to dlopen will fail.

On Tue, Oct 6, 2015 at 12:17 PM, psant...@codicesoftware.com <psant...@codicesoftware.com> wrote:
Hi again,

I'll try to be clearer this time, I think I was too cryptic before :)

I just built my mono from latest now this way:

$ ./configure --prefix=/home/pablo/monobin-4.3-head && make && make install

$ mono --version
Mono JIT compiler version 4.3.0 (master/020a7c6 Tue Oct  6 18:06:22 CEST 2015)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
    TLS:           __thread
    SIGSEGV:       altstack
    Notifications: epoll
    Architecture:  amd64
    Disabled:      none
    Misc:          softdebug
    LLVM:          supported, not enabled.
    GC:            sgen


I have this program:

$ cat Program.cs
using System;

using Mono.Unix;

namespace testunixdirinfo
{
    class MainClass
    {
        public static void Main (string[] args)
        {
            UnixDirectoryInfo dir = new UnixDirectoryInfo (args [0]);
        }
    }
}

Then I build my program:

$ mcs Program.cs -r Mono.Posix.dll

And run it and get this:

$ mono Program.exe .

Unhandled Exception:
System.TypeInitializationException: The type initializer for 'Mono.Unix.Native.Syscall' threw an exception. ---> System.DllNotFoundException: /home/pablo/monobin-4.3-head/lib/libMonoPosixHelper.so
  at (wrapper managed-to-native) Mono.Unix.Native.Syscall:get_at_fdcwd ()
  at Mono.Unix.Native.Syscall..cctor () <0x41356870 + 0x0002b> in <filename unknown>:0
  --- End of inner exception stack trace ---
  at Mono.Unix.UnixDirectoryInfo.GetCurrentDirectory () <0x41356550 + 0x0008f> in <filename unknown>:0
  at Mono.Unix.UnixPath._GetFullPath (System.String path) <0x41356430 + 0x0002b> in <filename unknown>:0
  at Mono.Unix.UnixPath.GetFullPath (System.String path) <0x413563f0 + 0x0000f> in <filename unknown>:0
  at Mono.Unix.UnixFileSystemInfo..ctor (System.String path) <0x41355f80 + 0x00053> in <filename unknown>:0
  at Mono.Unix.UnixDirectoryInfo..ctor (System.String path) <0x41355f50 + 0x00013> in <filename unknown>:0
  at testunixdirinfo.MainClass.Main (System.String[] args) <0x41355d40 + 0x00043> in <filename unknown>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: The type initializer for 'Mono.Unix.Native.Syscall' threw an exception. ---> System.DllNotFoundException: /home/pablo/monobin-4.2/lib/libMonoPosixHelper.so
  at (wrapper managed-to-native) Mono.Unix.Native.Syscall:get_at_fdcwd ()
  at Mono.Unix.Native.Syscall..cctor () <0x41356870 + 0x0002b> in <filename unknown>:0
  --- End of inner exception stack trace ---
  at Mono.Unix.UnixDirectoryInfo.GetCurrentDirectory () <0x41356550 + 0x0008f> in <filename unknown>:0
  at Mono.Unix.UnixPath._GetFullPath (System.String path) <0x41356430 + 0x0002b> in <filename unknown>:0
  at Mono.Unix.UnixPath.GetFullPath (System.String path) <0x413563f0 + 0x0000f> in <filename unknown>:0
  at Mono.Unix.UnixFileSystemInfo..ctor (System.String path) <0x41355f80 + 0x00053> in <filename unknown>:0
  at Mono.Unix.UnixDirectoryInfo..ctor (System.String path) <0x41355f50 + 0x00013> in <filename unknown>:0
  at testunixdirinfo.MainClass.Main (System.String[] args) <0x41355d40 + 0x00043> in <filename unknown>:0


It doesn't find the libMonoPosixHelper.so under "lib" because it is actually under lib64 (I just built my mono with make, nothing special :-S).

$ ls /home/pablo/monobin-4.3-head/
bin/     etc/     include/ lib/     lib64/   share/  

$ ls /home/pablo/monobin-4.3-head/lib64/
libikvm-native.a           libMonoPosixHelper.la            libmono-profiler-log.so
libikvm-native.la          libMonoPosixHelper.so            libmono-profiler-log.so.0
libikvm-native.so          libmono-profiler-aot.a           libmono-profiler-log.so.0.0.0
libmono-2.0.a              libmono-profiler-aot.la          libmonosgen-2.0.a
libmono-2.0.la             libmono-profiler-aot.so          libmonosgen-2.0.la
libmono-2.0.so             libmono-profiler-aot.so.0        libmonosgen-2.0.so
libmono-2.0.so.1           libmono-profiler-aot.so.0.0.0    libmonosgen-2.0.so.1
libmono-2.0.so.1.0.0       libmono-profiler-iomap.a         libmonosgen-2.0.so.1.0.0
libmonoboehm-2.0.a         libmono-profiler-iomap.la        libMonoSupportW.a
libmonoboehm-2.0.la        libmono-profiler-iomap.so        libMonoSupportW.la
libmonoboehm-2.0.so        libmono-profiler-iomap.so.0      libMonoSupportW.so
libmonoboehm-2.0.so.1      libmono-profiler-iomap.so.0.0.0  mono
libmonoboehm-2.0.so.1.0.0  libmono-profiler-log.a           pkgconfig
libMonoPosixHelper.a       libmono-profiler-log.la



I'm obviously doing something wrong, but I'd love to know what should I do to configure it correctly. (BTW, just copying lib64 inside lib makes it work, but I guess this is not the way to do it :P).


Thanks again!

pablo


On 10/5/2015 22:42, Miguel de Icaza wrote:
Hello,

I do not follow, what "new lib64" thing?   That sounds like a packaging issue, more than a Mono issue.

Miguel.

On Mon, Oct 5, 2015 at 12:44 PM, psant...@codicesoftware.com <psant...@codicesoftware.com> wrote:
Hi,

We're having trouble understanding the new lib64 thing in mono 4.3 (we're trying to move Plastic SCM to 4.3 now).

A simple app like this one:

using Mono.Unix;
namespace testunixdirinfo
{
    class MainClass
    {
        public static void Main(string[] args)
        {
            UnixDirectoryInfo dir = new UnixDirectoryInfo(args[0]);
        }
    }
}

Fails saying it can't find lib/libMonoPosixHelper.so, which is now under lib64 instead.

It is easy to fix just moving it under lib inside your mono binaries, but I guess this is not the right way to do it :confounded:

This is the build we're using Mono JIT compiler version 4.3.0 (explicit/b6dfce6.

Thanks!

pablo

_______________________________________________
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list





_______________________________________________
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list

Reply via email to