Open vespakoen opened 11 months ago
Hi,
I found a similar issue myself and opened a discussion https://github.com/mesonbuild/meson/discussions/12661
is this the same problem?
meson 1.2.2 and 1.3.1 macos 11.7.10 (Big Sur)
@HealthyPear in your link command there is /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/OpenGL.framework
which should be -framework OpenGL
, which is possibly coming from the same place indeed.
I wrote a hacky script to work around this issue over here: https://github.com/dune3d/dune3d/pull/45/files#diff-50ed1090aedf71598ab3968b9e04d656c81a62ed14923b94982c64611db4a56e and hope that someone can fix it in meson one day, I don't really have time to dig into meson myself at the moment unfortunately.
Describe the bug I am trying to compile "dune3d" using meson on macOS. dune3d depends on OpenCASCADE, which it adds using this line of code:
At the linking stage, I get a bunch of these errors:
I then found the following relevant issues: #8045 and the PR #8134 However, the .framework's in my case are added through another mechanism, namely through:
INTERFACE_LINK_LIBRARIES
, which are not handled in the mentioned pull request.So I believe the
/Full/Path/To/Some.framework
->-framework Some.framework
conversion that is currently done is in the wrong place, and should be moved "towards the end" where also targets are present that can be added through other mechanisms.To Reproduce
On macOS, install opencascade
brew install opencascade
And build something with the above.
Or, look at the following snippet of the debug log I got from mason:
Expected behavior I would expect the link command at the end to use
-framework NameOfFramework
in stead of adding an incorrect path.system parameters