MonoDevelop library and libpjsipDll.so on Ubuntu. System.DllNotFoundException

I'm trying to use a Linux DLL: libpjsipDll_v44.so I got this from here http://code.google.com/p/sipeksdk/downloads/list

This is the port for Linux http://www.pjsip.org/ - this is the VOIP library

This site claims to be able to use the library on Linux https://sites.google.com/site/sipekvoip/Home/documentation/pjsipwrapper/pjsipwrapper-for-linux

The code in MonoDevelop 4.0.12 with C # code looks like this:

internal const string PJSIP_DLL = "libpjsipDll.so"; 

[DllImportAttribute(PJSIP_DLL, EntryPoint = "onRegStateCallback")]
private static extern int onRegStateCallback(OnRegStateChanged cb);

      

But it doesn't work! it throws System.DllNotFoundException

I am working with Ubuntu x86 v14.04 lts These are the steps I took to install the library:

$ sudo cp libpjsipDll_v44.so /usr/lib/libpjsipDll.so 
$ sudo ldconfig

      

I even tried to copy the library some more paths like

/usr/local/lib 
/lib`

      

and create links

   $ sudo ln -s /usr/lib/libpjsipDll.so /usr/lib/libpjsipDll_v44.so
   $ sudo ln -s /usr/lib/libpjsipDll.so /usr/lib/pjsipDll.so

      

Then while trying to find my .so is installed, I ran this command:

$ sudo ldconfig -p |grep libpjsipDll

      

enter image description here I also tried to display the dll using App.config using as many combinations that I can think of with success

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <dllmap dll="libpjsipDll.so" target="libpjsipDll.so"/>
  <!--
  <dllmap dll="libpjsipDll.so" target="/libpjsipDll.so"/>
  <dllmap dll="libpjsipDll.so" target="/usr/lib/libpjsipDll.so"/>
  <dllmap dll="libpjsipDll.so" target="/usr/local/lib/libpjsipDll.so"/>
  <dllmap dll="libpjsipDll.so" target="i:libpjsipDll.so"/>
  <dllmap dll="libpjsipDll.so" target="libpjsipDll.so" wordsize="32" cpu="x86"/>
  -->
</configuration>

      

I tried to execute the .exe like this:

$ MONO_LOG_LEVEL=debug mono MyApp.exe

      

and I realized that the application needs a different dll libssl0

Then I installed the required DLL and everything works fine! but I still cannot call.

$ sudo apt-get install libssl0.9.8:i386

      

I have used this same DLL (extension .dll) with .NET on Windows without any problem! Any idea what I am doing wrong?

The error

Thank you in advance

+3


source to share





All Articles