Dear all,
I am trying to install O2 on my mac (Catalina, v10.15.3, latest alidist) and encountered the following problem when compiling XRootD v4.11.1:
[ 83%] Linking CXX shared library libXrdCl.dylib
ld: library not found for -luuid
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I would be very greatful for any hints or suggestions.
@mkruger very similar issue was fixed sometimes in November [1] [2] and XRootD 4.11.1 should include that fix. On macOS XRootD will use only the system UUID library which is header only and doesn’t need linking.
Could you share the full XRootD build log?
By the way, XRootD 4.11.2 was just released a few days ago and it includes some fixes that we need. I haven’t tested it yet, but you could give it a try.
From the build log, it looks like it’s pkg-config that picked up libuuid. I suspect it’s from brew. Do you maybe have libuuid installed from brew? That could confuse XRootD build scripts. Could you try removing brew libuuid?
Yes apparently I have a uuid version installed with brew. Seems like this is required by my python installation:
brew uninstall ossp-uuid
Error: Refusing to uninstall /usr/local/Cellar/ossp-uuid/1.6.2_2
because it is required by python, which is currently installed.
You can override this and force removal with:
brew uninstall --ignore-dependencies ossp-uuid
If I do that, it will break my python installation, right?
@nhardi I have as ‘default’ python (placed in /usr/bin/local/)
python -> …/Cellar/python@2/2.7.17_1/bin/python
and one unlinked version of python3
/usr/local/Cellar/python/3.7.6_1/
There are also non-brew installations of python on my system placed in
in /usr/bin/
python -> …/…/System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7
python3
By the way, XRootD Python bindings require at the moment brew Python3 to be linked. There is a Jira ticket on that to be fixed, but I don’t have any ETA.
So, here is a hack to make it work in case you need this urgently.
check out XRootD as a development package using aliBuild init XRootD and
disable pkg-config lookup for uuid by removing line 97:pkg_check_modules(UUID uuid) from cmake/XRootDFindLibs.cmake
This seems to be a bug in upstream XRootD build scripts. Perhaps it should be reported in https://github.com/xrootd/xrootd. Maybe pkg-config/uuid should be disabled on the Mac.