Giter Club home page Giter Club logo

Comments (4)

cboulay avatar cboulay commented on June 1, 2024

I now have LabRecorder building both the library-bundled version that gets deployed to the GitHub release page, as well as the slimmer version that gets deployed as a bottle. For now it's easy to have both, but I'd rather get rid of the former as it seems harder to maintain.

If you already have homebrew installed, labrecorder installs very quickly with brew install labstreaminglayer/tap/labrecorder. I haven't yet figured out how to make a Cask out of this so it can automatically be installed into Applications, so for now it has to be opened with open /usr/local/opt/labrecorder/LabRecorder/LabRecorder.app

from app-labrecorder.

DenisMot avatar DenisMot commented on June 1, 2024

I managed to get LSL, LabRecorder and SigViewer working properly on a MacBook M1Pro running OSX 12.3.2 (Monterey)... but it took some effort ;-)
Having a working brew install --cask LabRecorder script would be a real plus!

What I did (on a brand new computer):

  • brew install labstreaminglayer/tap/labrecorder properly installs the dependencies and the LSL stuff
  • open /usr/local/opt/labrecorder/LabRecorder/LabRecorder.app complains that: The file /usr/local/opt/labrecorder/LabRecorder/LabRecorder.app does not exist.
  • Digging into the installation, I get :
~ % brew --prefix labrecorder  
/opt/homebrew/opt/labrecorder
~ % brew --prefix lsl
/opt/homebrew/opt/lsl

~ % open  /opt/homebrew/opt/labrecorder/LabRecorder/LabRecorder.app

And I get the following (extract of the) crash dump (full version):

Process:               LabRecorder [57725]
Path:                  /opt/homebrew/*/LabRecorder.app/Contents/MacOS/LabRecorder

...

Termination Reason:    Namespace DYLD, Code 1 Library missing
Library not loaded: @loader_path/libbrotlicommon.1.dylib
Referenced from: /opt/homebrew/*/LabRecorder.app/Contents/Frameworks/libbrotlidec.1.dylib
Reason: tried: '/opt/homebrew/Cellar/labrecorder/1.14.2/LabRecorder/LabRecorder.app/Contents/Frameworks/libbrotlicommon.1.dylib' (no such file), '/usr/local/lib/libbrotlicommon.1.dylib' (no such file), '/usr/lib/libbrotlicommon.1.dylib' (no such file)
(terminated at launch; ignore backtrace)

Maybe I should rebuild LabRecorder from source...

 ~ % brew reinstall --build-from-source labstreaminglayer/tap/labrecorder
==> Downloading https://github.com/labstreaminglayer/App-LabRecorder/archive/refs/tags/v1.14.2.tar.gz
Already downloaded: /Users/denismottet/Library/Caches/Homebrew/downloads/4f4f5eff1932f13a3ec5af8a7e07f8a24a40a7f0fba74941702bb6f857afed5b--App-LabRecorder-1.14.2.tar.gz
==> Reinstalling labstreaminglayer/tap/labrecorder 
==> cmake -S . -B build -DLSL_DEPLOYAPPLIBS=OFF
==> cmake --build build --target install --config Release -j
🍺  /opt/homebrew/Cellar/labrecorder/1.14.2: 93 files, 64.5MB, built in 8 seconds
==> Running `brew cleanup labrecorder`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).

Still not working, with the same crash reason LabRecorder-2022-04-08-183420.txt

from app-labrecorder.

cboulay avatar cboulay commented on June 1, 2024

That's great information. Thank you.
I'll be getting a MBP M1Pro sometime next week or the week after and this will be a top priority.
I'm going to prioritize a build-from-source path because I'm guessing that providing prebuilt binaries will have some requirements on signing and certification.

from app-labrecorder.

cboulay avatar cboulay commented on June 1, 2024

Hi @DenisMot , just got a new MBP and I'm digging in.

QtNetwork depends on libbrotlidec.1.dylib so this library gets properly bundled by macdeployqt. However, the transient dependency libbrotlicommon.1.dylib does not get bundled, presumably because its search path begins with @loader_path.

This appears to be a known solution bug with macdeployqt: https://bugreports.qt.io/browse/QTBUG-100686

The short-term solution is to copy libbrotlicommon.1.dylib into /opt/homebrew/Cellar/labrecorder/1.16.1_1/LabRecorder/LabRecorder.app/Contents/Frameworks. A better solution is to force macdeployqt to bundle this lib, or maybe have cmake copy it after build. I'm looking into it.

from app-labrecorder.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.