Build broken with XCode 16.3 (macOS SDK 15.4)
envgap__osquery__osquery-8593
01 / FAILURE SIGNATURE
As reported upstream
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/_stdio.h:318:7: error: expected identifier or '('Not a benchmark task.
- In a clean container the reported failure did not reproduce, or the known fix did not make the project run.
02 / ENVIRONMENT RECIPE
- Base commit
de827738df3e10ebe96a17fac62b5ba7c42e9b41- Manifest
libraries/cmake/source/boost/CMakeLists.txt- Reproduce
Awaiting issue-specific recipe- Run under trace
Awaiting a meaningful runtime command
03 / ORIGINAL ISSUE TEXT
osquery/osquery #8593 · read the original issue
## Workaround
Use XCode 16.2
1. [Download XCode 16.2](https://download.developer.apple.com/Developer_Tools/Xcode_16.2/Xcode_16.2.xip) (requires Apple Developer login)
2. Put it in Applications (eg `mv ~/Downloads/Xcode.app /Applications/Xcode-16.2.app`)
3. `xcode-select` that version (eg `sudo xcode-select -s /Applications/Xcode-16.2.app`)
# Issues
(At least 2)
## zlib
```
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/zlib/src/zutil.c:10:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/zlib/src/gzguts.h:20:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/stdio.h:61:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/_stdio.h:318:7: error: expected identifier or '('
318 | FILE *fdopen(int, const char *) __DARWIN_ALIAS_STARTING(__MAC_10_6, __IPHONE_2_0, __DARWIN_ALIAS(fdopen));
| ^
/Users/zwass/dev/osquery/libraries/cmake/source/zlib/src/zutil.h:147:33: note: expanded from macro 'fdopen'
147 | # define fdopen(fd,mode) NULL /* No fdopen() */
| ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include/__stddef_null.h:26:16: note: expanded from macro 'NULL'
26 | #define NULL ((void*)0)
| ^
```
This seems to be resolved by updating to zlib v1.3.1. See [forum thread](https://forums.bannister.org/ubbthreads.php?ubb=showflat&Number=124406).
## boost
```
In file included from /Users/zwass/dev/osquery/osquery/remote/http_client.cpp:11:
In file included from /Users/zwass/dev/osquery/build/ns_osquery_remote_httpclient/osquery/remote/http_client.h:31:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/asio/include/boost/asio/deadline_timer.hpp:24:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/asio/include/boost/asio/basic_deadline_timer.hpp:25:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/asio/include/boost/asio/detail/deadline_timer_service.hpp:31:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/asio/include/boost/asio/detail/timer_queue_ptime.hpp:22:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/asio/include/boost/asio/time_traits.hpp:23:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/date_time/include/boost/date_time/posix_time/posix_time_types.hpp:16:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/date_time/include/boost/date_time/posix_time/posix_time_duration.hpp:15:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/numeric/conversion/include/boost/numeric/conversion/cast.hpp:33:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/numeric/conversion/include/boost/numeric/conversion/converter.hpp:13:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/numeric/conversion/include/boost/numeric/conversion/conversion_traits.hpp:13:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/numeric/conversion/include/boost/numeric/conversion/detail/conversion_traits.hpp:18:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/numeric/conversion/include/boost/numeric/conversion/detail/int_float_mixture.hpp:19:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/mpl/include/boost/mpl/integral_c.hpp:32:
/Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/mpl/include/boost/mpl/aux_/integral_wrapper.hpp:73:31: error: integer value -1 is outside the valid range of values [0, 3] for the enumeration type 'udt_builtin_mixture_enum' [-Wenum-constexpr-conversion]
73 | typedef AUX_WRAPPER_INST( BOOST_MPL_AUX_STATIC_CAST(AUX_WRAPPER_VALUE_TYPE, (value - 1)) ) prior;
| ^
/Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/mpl/include/boost/mpl/aux_/static_cast.hpp:24:47: note: expanded from macro 'BOOST_MPL_AUX_STATIC_CAST'
24 | # define BOOST_MPL_AUX_STATIC_CAST(T, expr) static_cast<T>(expr)
| ^
In file included from /Users/zwass/dev/osquery/osquery/remote/http_client.cpp:11:
In file included from /Users/zwass/dev/osquery/build/ns_osquery_remote_httpclient/osquery/remote/http_client.h:31:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/asio/include/boost/asio/deadline_timer.hpp:24:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/asio/include/boost/asio/basic_deadline_timer.hpp:25:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/asio/include/boost/asio/detail/deadline_timer_service.hpp:31:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/asio/include/boost/asio/detail/timer_queue_ptime.hpp:22:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/asio/include/boost/asio/time_traits.hpp:23:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/date_time/include/boost/date_time/posix_time/posix_time_types.hpp:16:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/date_time/include/boost/date_time/posix_time/posix_time_duration.hpp:15:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/numeric/conversion/include/boost/numeric/conversion/cast.hpp:33:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/numeric/conversion/include/boost/numeric/conversion/converter.hpp:13:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/numeric/conversion/include/boost/numeric/conversion/conversion_traits.hpp:13:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/numeric/conversion/include/boost/numeric/conversion/detail/conversion_traits.hpp:18:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/numeric/conversion/include/boost/numeric/conversion/detail/int_float_mixture.hpp:19:
In file included from /Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/mpl/include/boost/mpl/integral_c.hpp:32:
/Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/mpl/include/boost/mpl/aux_/integral_wrapper.hpp:73:31: error: integer value -1 is outside the valid range of values [0, 3] for the enumeration type 'int_float_mixture_enum' [-Wenum-constexpr-conversion]
/Users/zwass/dev/osquery/libraries/cmake/source/boost/src/libs/mpl/include/boost/mpl/aux_/static_cast.hpp:24:47: note: expanded from macro 'BOOST_MPL_AUX_STATIC_CAST'
24 | # define BOOST_MPL_AUX_STATIC_CAST(T, expr) static_cast<T>(expr)
| ^
2 errors generated.
make[2]: *** [osquery/remote/CMakeFiles/osquery_remote_httpclient.dir/http_client.cpp.o] Error 1
make[1]: *** [osquery/remote/CMakeFiles/osquery_remote_httpclient.dir/all] Error 2
```04 / LABELS
Labels from the report text only; not yet run
No supported category has been assigned.
Label rules and the text that matched
[]