QC: GLFW not found?

Dear all

in the newest version of QC (0.19.2) that I have installed, when I run one of the basic examples:

o2-qc-run-producer | o2-qc --config json://${QUALITYCONTROL_ROOT}/etc/basic.json

I get in the 8th line of the output
[WARN] Could not create GUI. Switching to batch mode. Do you have GLFW on your system?

But if I do: brew install glfw
I get: glfw 3.3 is already installed and up-to-date

The command mentioned above runs but the graphical interface does not appear.
(Note, several months ago, everything worked … but I have not tested this particular thing in many, many weeks, so I do not know when it stopped working)

Any ideas how to tell QC that glfw is indeed there and that it has to use it?
(I installed O2 using the standard instructions in https://alice-doc.github.io/alice-analysis-tutorial/building/build.html, and QC using the instructions in https://github.com/AliceO2Group/QualityControl)

thanks a lot

guillermo

Hi,

Thank you for your report. I am going to have a look now. You followed the correct instructions so there must be something wrong in the recipe. I know that GLFW has now a recipe in alidist.
Cheers,

For some reason, O2 must have not detected glfw as installed. Do you have sw/BUILD/O2-latest/log and could you upload somewhere ?

Hi

thanks a lot for having a look. I have put the log in here:
https://physics.fjfi.cvut.cz/~contrgui/tmp/log

Indeed, it seems it did not find GLFW …

let me know if you have an idea how to go around this :slight_smile:

thanks

guillermo

Hi,
I don’t know why it is not able to find glfw.
One thing you could try :

$ brew --prefix glfw
/usr/local/opt/glfw
$ export GLFW_DIR=/usr/local/opt/glfw  ;# use here the path from above

If it does not work, you could also try to add lib/cmake at the end of this path.

You will have to make sure that O2 is recompiled (modify something there) in order for alibuild to pick up the change.

Cheers,
Barth

Hi

thanks a lot. I’ll try later today and will report what happens.

have a nice day

guillermo

Hi

I tried and it did not work. Now it find the library but can not resolve the symbols … may be something happened somewhere before. I will reinstall from scratch (also GLFW) to see if it helps.
Anyway, thanks a lot

guillermo

In principle nothing changed since a while. Are you on macOS Catalina?
Also, could you verify that

brew --prefix glfw

actually contains libglfw.dylib? I noticed that at some point they (GLFW / homebrew) screwed up proper relocation of the library. We are in the process of providing our own GLFW, but it’s not ready yet.

Hi Giulio

thanks for looking at this. I am using Mojave (10.14.6). The directory for glfw (which I installed using brew) is /usr/local/opt/glfw and I see:

bash-3.2$ ls -l /usr/local/opt/glfw/lib/
total 512
drwxr-xr-x 3 jgcn staff 96 Apr 16 2019 cmake
-r–r--r-- 1 jgcn staff 258188 Oct 15 16:41 libglfw.3.3.dylib
lrwxr-xr-x 1 jgcn staff 17 Apr 16 2019 libglfw.3.dylib -> libglfw.3.3.dylib
lrwxr-xr-x 1 jgcn staff 15 Apr 16 2019 libglfw.dylib -> libglfw.3.dylib
drwxr-xr-x 3 jgcn staff 96 Oct 15 16:41 pkgconfig

so, yes, the library is there …

In the last few months I have had several smallish problems each time that I upgraded O2 and did some ad-hoc changes recommended by other users. May be in the process something got out of line … I am now rebuilding everything from scratch. AliPhysics finished compiling and now O2 is ongoing. I’ll report the status as soon as I have the new versions running (crossing my fingers)

thanks to all of you for your help and suggestions

guillermo

Could you tell me what:

otool -L /usr/local/opt/glfw/lib/libglfw.3.3.dylib

tells you?

Hi
sure, see below
guillermo

bash-3.2$ otool -L /usr/local/opt/glfw/lib/libglfw.3.3.dylib
/usr/local/opt/glfw/lib/libglfw.3.3.dylib:
/usr/local/opt/glfw/lib/libglfw.3.dylib (compatibility version 3.0.0, current version 3.3.0)
/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 23.0.0)
/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1570.15.0)
/System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo (compatibility version 1.2.0, current version 1.5.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.250.1)
/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1671.40.118)
/System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics (compatibility version 64.0.0, current version 1251.12.0)
/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 944.3.0)
/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1570.15.0)
/usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)

Dear all,

I install from scratch (ie starting from aliBuild init AliPhysics@master, …) in a new directory.
Everything compiled and now it runs. I have no idea what was the problem, but now it works. The graphic interface appears :slight_smile:
Thanks a lot for your help.

guillermo