labstreaminglayer / LSL4Unity

A integration approach of the LabStreamingLayer Framework for Unity3D
Other
83 stars 38 forks source link

Dll Not Found (liblsl64.so) on Linux #37

Closed mvidaldp closed 4 years ago

mvidaldp commented 4 years ago

Hi, I'm getting this DllNotFoundException: liblsl64.so error when trying to run my Unity Project with LSL4Unity on Linux (actually on Manjaro). If I run the same code on Windows it works without any problems. The error message is next:

DllNotFoundException: liblsl64.so LSL4Unity.liblsl+StreamInfo..ctor (System.String name, System.String type, System.Int32 channel_count, System.Double nominal_srate, LSL4Unity.liblsl+channel_format_t channel_format, System.String source_id) (at Assets/LSL4Unity/LSL.cs:195) DataStreams.Start () (at Assets/Scripts/DataStreams.cs:56)

The error line on LSL.cs is next: obj = dll.lsl_create_streaminfo(name, type, channel_count, nominal_srate, channel_format, source_id);

On DataStream.cs is next: _lslStreamInfo = new liblsl.StreamInfo( t.sName, t.sType.ToString(), lslChannelCount, _nominalRate, LslChannelFormat, uuid.ToString());

Any ideas about how to fix it? I tried using different DLLs. For instance, liblsl64.dll and also renaming the Linux one on LSL.cs without the .so extension as it was an issue on macOS. I also tried using liblsl from the package installed using my package manager and also the compiled one from the cloned repo. I also tried a different folder structure but I always get the same error.

Similar issue on Windows: https://github.com/labstreaminglayer/LSL4Unity/issues/15

mvidaldp commented 4 years ago

I fixed it by:

mvidaldp commented 4 years ago

Fixed on PR: https://github.com/labstreaminglayer/LSL4Unity/pull/38