Bazel builds using rules_cc on recent (Ventura, Sonoma) MacOS fail with
compiling lib/findprog-in.c...
./lib/findprog-in.c:137:25: error: implicit declaration of function 'eaccess' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
if (eaccess (progpathname, X_OK) == 0)
^
./lib/findprog-in.c:137:25: note: did you mean 'access'?
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/unistd.h:431:6: note: 'access' declared here
int access(const char *, int);
^
./lib/findprog-in.c:211:21: error: implicit declaration of function 'eaccess' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
if (eaccess (progpathname, X_OK) == 0)
^
2 errors generated.
The root cause of this issue was that https://github.com/bazelbuild/bazel/pull/16414 was not merged to rules_cc, but only to rules_llvm and apple_support. Which removed the culprit -undefined dynamic_lookup.
Description of the problem / feature request:
Bazel builds using rules_cc on recent (Ventura, Sonoma) MacOS fail with
The root cause of this issue was that https://github.com/bazelbuild/bazel/pull/16414 was not merged to rules_cc, but only to rules_llvm and apple_support. Which removed the culprit -undefined dynamic_lookup.
This issue gives more insight in the problem: https://github.com/bazelbuild/rules_foreign_cc/issues/859#issuecomment-2216704874
What operating system are you running Bazel on?
What's the output of
bazel info release
?release 6.0.0- (@non-git)
If
bazel info release
returns "development version" or "(@non-git)", tell us how you built Bazel.Conda forge
What version of rules_cc do you use? Can you paste the workspace rule used to fetch rules_cc? What other relevant dependencies does your project have?
What Bazel options do you use to trigger the issue? What C++ toolchain do you use?