sccn / lsl_archived

Multi-modal time-synched data transmission over local network
242 stars 134 forks source link

undefined symbol: lsl_library_info (missing from compiled liblsl32armv7l.so) #336

Open dxjones opened 5 years ago

dxjones commented 5 years ago

After installing the ARM version of the liblsl32.so library to work on the Raspberry Pi 3 B+, we get this error message:

AttributeError: /usr/local/lib/python2.7/dist-packages/pylsl/liblsl32.so: undefined symbol: lsl_library_info

I am wondering if lsl_library_info() function was added recently (within the past year), so the ARM library needs to be recompiled from the updated source.

If that is the case, I would appreciate guidance on how to compile liblsl32.so on a Raspberry Pi.

From what I have heard, it may take 3 hours, ... so I am hoping to get some help in the process, so it will be successful the first time.

Any help or advice appreciated.

tstenner commented 5 years ago

First, install the build environment (see here; short: install g++ / clang++, CMake, and optionally git). Then, clone the liblsl repository or download and unzip the archive.

In the downloaded folder, do

tstenner commented 5 years ago

To speed things up, you could try a branch with some compilation speed optimizations and/or install ninja beforehand (add -G Ninja to the first cmake invocation)

tstenner commented 5 years ago

See also https://github.com/labstreaminglayer/liblsl/pull/2

cboulay commented 5 years ago

Please test the .so I attached to a comment on https://github.com/labstreaminglayer/liblsl/pull/2

tstenner commented 5 years ago

From what I have heard, it may take 3 hours

On a plain 3B without overclocking and a slow SD card it takes about 13 minutes, but you have to limit the build to 3 concurrent processes. A deb package for Raspbian is available at the releases page

cboulay commented 5 years ago

Great. Can you please add this link to the PR which is where I have been sending?

Also, can you test the lib I built? I hope to include it in pylsl on pypi. I can use your .so file but I would like to be able to generate it on the fly when needed.

tstenner commented 5 years ago

I'm currently out of the country with only my smartphone at hand, so I can't do anything before next week