<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/104759>104759</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
clang18.1.8 meet search path bug when cross compiling
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
xiedeacc
</td>
</tr>
</table>
<pre>
I cross compiling jemalloc for macosx on linux, I'm sure that header exists, and path included by -isystem, because if I manually execute command from error log, it successed.
```
export ASFLAGS='-v -isystem /root/src/software/MacOSX14.2.sdk/usr/include -isystem /root/src/software/MacOSX14.2.sdk/System/Library/Frameworks --target=x86_64-apple-darwin23.3 -mmacosx-version-min=10.11'
export CFLAGS='-v -isystem /root/src/software/MacOSX14.2.sdk/usr/include -isystem /root/src/software/MacOSX14.2.sdk/System/Library/Frameworks --target=x86_64-apple-darwin23.3 -isystem /root/src/software/MacOSX14.2.sdk/llvm18.1.8/lib/clang/18/include -mmacosx-version-min=10.11 --sysroot=/root/src/software/MacOSX14.2.sdk'
export CXXFLAGS='-v -isystem /root/src/software/MacOSX14.2.sdk/usr/include -isystem /root/src/software/MacOSX14.2.sdk/System/Library/Frameworks --target=x86_64-apple-darwin23.3 -nostdinc -nostdinc++ -isystem /root/src/software/MacOSX14.2.sdk/llvm18.1.8/include/c++/v1 -isystem /root/src/software/MacOSX14.2.sdk/llvm18.1.8/lib/clang/18/include -mmacosx-version-min=10.11 --sysroot=/root/src/software/MacOSX14.2.sdk'
export LDFLAGS='-mmacosx-version-min=10.11 -v -lc -lm -nostdlib -L/root/src/software/MacOSX14.2.sdk/llvm18.1.8/lib/ -L/root/src/software/MacOSX14.2.sdk/llvm18.1.8/lib/clang/18/lib/darwin/ -L/root/src/software/MacOSX14.2.sdk/usr/lib/ -rtlib=compiler-rt -stdlib=libc++ -lc++ -lc++abi -lunwind --target=x86_64-apple-darwin23.3 --sysroot=/root/src/software/MacOSX14.2.sdk'
export AR=/usr/local/llvm/18/bin/x86_64-apple-darwin23.3-libtool
export CC=/usr/local/llvm/18/bin/clang
export CXX=/usr/local/llvm/18/bin/clang
export LD=/usr/local/llvm/18/bin/ld64
export NM=/usr/local/llvm/18/bin/x86_64-apple-darwin-nm
./configure --prefix=/root/jemalloc --disable-static --enable-shared --with-version=5.3.0-186-g21bcc0a8d49ab2944ae53c7e43f5c84fc8a34322 --host=x86_64-apple-darwin23.3
make
```
error log
```
/usr/local/llvm/18/bin/clang -std=gnu11 -Werror=unknown-warning-option -Wall -Wextra -Wshorten-64-to-32 -Wsign-compare -Wundef -Wno-format-zero-length -Wpointer-arith -Wno-missing-braces -Wno-missing-field-initializers -pipe -g3 -Wimplicit-fallthrough -Wdeprecated-declarations -O3 -funroll-loops -v -isystem /root/src/software/MacOSX14.2.sdk/usr/include -isystem /root/src/software/MacOSX14.2.sdk/System/Library/Frameworks --target=x86_64-apple-darwin23.3 -isystem /root/src/software/MacOSX14.2.sdk/llvm18.1.8/lib/clang/18/include -mmacosx-version-min=10.11 -fPIC -DPIC -c -D_REENTRANT -Iinclude -Iinclude -DJEMALLOC_NO_PRIVATE_NAMESPACE -o src/jemalloc.sym.o src/jemalloc.c
clang version 18.1.8 (git@code.xiamu.com:llvm/llvm-project.git 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff)
Target: x86_64-apple-darwin23.3
Thread model: posix
InstalledDir: /usr/local/llvm/18/bin
(in-process)
"/usr/local/llvm/18/bin/clang-18" -cc1 -triple x86_64-apple-macosx10.11.0 -Wundef-prefix=TARGET_OS_ -Werror=undef-prefix -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -emit-obj -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name jemalloc.c -mrelocation-model pic -pic-level 2 -mframe-pointer=all -ffp-contract=on -fno-rounding-math -funwind-tables=2 -faligned-alloc-unavailable -fcompatibility-qualified-id-block-type-checking -fvisibility-inlines-hidden-static-local-var -fbuiltin-headers-in-system-modules -fdefine-target-os-macros -target-cpu core2 -tune-cpu generic -debug-info-kind=standalone -dwarf-version=4 -debugger-tuning=lldb -fdebug-compilation-dir=/root/.cache/bazel/_bazel_root/d7f4cad81e2b036f4c3382027c9d9c7a/sandbox/linux-sandbox/329/execroot/bazel_template/bazel-out/x86_64-opt-ST-8a34343ab408/bin/external/jemalloc/jemalloc.build_tmpdir -v -fcoverage-compilation-dir=/root/.cache/bazel/_bazel_root/d7f4cad81e2b036f4c3382027c9d9c7a/sandbox/linux-sandbox/329/execroot/bazel_template/bazel-out/x86_64-opt-ST-8a34343ab408/bin/external/jemalloc/jemalloc.build_tmpdir -resource-dir /usr/local/llvm/18/lib/clang/18 -isystem /root/src/software/MacOSX14.2.sdk/usr/include -isystem /root/src/software/MacOSX14.2.sdk/System/Library/Frameworks -isystem /root/src/software/MacOSX14.2.sdk/llvm18.1.8/lib/clang/18/include -D PIC -D _REENTRANT -I include -I include -D JEMALLOC_NO_PRIVATE_NAMESPACE -internal-isystem /usr/local/include -internal-isystem /usr/local/llvm/18/lib/clang/18/include -internal-externc-isystem /usr/include -O3 -Werror=unknown-warning-option -Wall -Wextra -Wshorten-64-to-32 -Wsign-compare -Wundef -Wno-format-zero-length -Wpointer-arith -Wno-missing-braces -Wno-missing-field-initializers -Wimplicit-fallthrough -Wdeprecated-declarations -std=gnu11 -ferror-limit 19 -funroll-loops -stack-protector 1 -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fgnuc-version=4.2.1 -fskip-odr-check-in-gmf -fmax-type-align=16 -fcolor-diagnostics -vectorize-loops -vectorize-slp -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o src/jemalloc.sym.o -x c src/jemalloc.c
clang -cc1 version 18.1.8 based upon LLVM 18.1.8 default target x86_64-unknown-linux-gnu
ignoring nonexistent directory "/usr/local/include"
ignoring nonexistent directory "/System/Library/Frameworks"
ignoring nonexistent directory "/Library/Frameworks"
ignoring duplicate directory "include"
#include "..." search starts here:
#include <...> search starts here:
include
/root/src/software/MacOSX14.2.sdk/usr/include
/root/src/software/MacOSX14.2.sdk/System/Library/Frameworks
/root/src/software/MacOSX14.2.sdk/llvm18.1.8/lib/clang/18/include
/usr/local/llvm/18/lib/clang/18/include
/usr/include
End of search list.
In file included from src/jemalloc.c:1:
In file included from include/jemalloc/internal/jemalloc_preamble.h:5:
include/jemalloc/internal/jemalloc_internal_decls.h:53:14: fatal error: 'mach/mach_time.h' file not found
53 | # include <mach/mach_time.h>
| ^~~~~~~~~~~~~~~~~~
1 error generated.
make: *** [Makefile:496: src/jemalloc.sym.o] Error 1
```
![image](https://github.com/user-attachments/assets/e4b9700c-8059-476d-b6e8-79af6fd26577)
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzkWUtz4zby_zTwBdUsEqReBx80lpW__-WZSY1dcW4qEGhSiEGAC4C2PIf97Fsg9bA8juJxsrU7WZdLIqHuRj9_3SC596o2iOdk9IGMFme8C2vrzjcKJXIhzkorn86vqHDWeyps0yqtTE1_w4ZrbQWtrKMNF9ZvqDVUK9NtCLugV4RNGuo7hzSseaBr5BIdxY3ywUcCbiRteVhTZYTuJEpaPlFQ_skHbCJBiYJ3Hqmq6BVtuOm41k8UNyi6gFGTJoqonG0oOmcd1baOfCpQ3wmB3qNMKEkXJJ3_7uc43f73t7hprQt0frO8nv90Q_IFYRN42GtFCVs6awNhS-9E_LRVeOQOCVt-5OLzza9ZkbDEy3vClp13hC23xr1PxM3WF8trVTrunghbLh1v8NG6e08BAnc1BpIvNtPxalwAb1uNILl7VIblSU6hGSIDD-i8sgYaZUi-yNIkywibHBl98Xex-T27av3QZNMkS6bxRpWELYXmpiZsmU2fm3TCoRTAP_l-y-jEN2_-Igy__vp3CYSxPkhlxOGKsA-EffgLQrS1LIZpkEnY8iH70WN_vXge-pPbPVDQgoJuts7VqqRw_SfN_vMSjhw3LA0Z8f3ShxTeKeZCvMoXQwNCBy5QGOwm-UKrcp9b-psrXioKujOPysg3Je5fEcv5l4F7a4YVXG9dtnNP2Xvld5QArcpgrT7Ghou3yRyi8AJV3st6vXgbp5bj4ojx08d3ewBMM4hKokrWVKqOgwRA67BSm6O47AcRAKk8LzWCDzyouIBmuF9zhzH0jyqsd_VE8sUoyZMUsukYapaVQqR8KosZL9msKDiOcjHBIq9GYlpUYsrzImeMAqytP5E9g94Nv8cTc8bWT_up5VWaNwarLwOSL2rTRWC466WSfNGZe2MfDTxyZ5SpwbZBWUPhjmsdyTbBcQp3fm1dQAPjAoKFnMUlVRuIhcajz-86I7GicGcsVNY1PMBXdBY0mjqsKdy1VpmADrhT_b2x0Cjv456l4wL98VqlUEtQRgXFtfqKzlNoVYsU6pzCnWparYQKUHGtw9rZro5CJbYOBQ8oQaLQ3PFojafwOadQdcZZrUFb23r6Q_fM_1wDq36-uqCw6D8FhcXqy-Xlp9sv80-3FK72Ig5Xi_-__Di_vv58sfr0efXzl6tf5reXq0_zj5c3P88vLilYOmi-q8_EPzXJN4tiSPYhk7d60cEYSti0VoEUqbASk43iTZcI25B8vi2F-AWts7-hCEmtAs3LUTkSGYqC5-lsxMt0NpZyMk1xWsgJL6dZlctJVRE2G_a93QZkTk-W8-3aIZe0sRJ1JG6tV5vhpyvjA9ca5UK5-NMflm3PFW1TJuoezyl7dShh7K11D3GBURAioxCcajUeGzEEu49uku7q-ICgt_MvP13erj7frI5A40BzXHW2_E2A8hw6z2t8xnKCBhsV4iLdI3PlECkIjdwB9wFKrKxDKLm4x9icd3R9ZB_QqUqh65cFdxIeuO4QDG8iqDRcGaiUHhboIaUoNA6j90Kf5DFotI39oFUCND6gpoxCU8XKhC16kXzR42JVtSCsCY6LWKcRMCtjwdnOyIheTTyxRsCJwwSEqKwn-YLRiFfxHC2h1wI6wx-40pGAQtWjaVCl0io8wT86rqNlEpSEUltxD-GpRRBrFPfxcA3Vg_I7amW0MuhhraREs21u0GcHPHBHoSo7pYMyMJyxPSgDA4xE4zsdnVVJrJTBLQKB9TE9nPV0tyLajgrrkFEIncH-vkaDLjpOYtnVoExl4V6Z2G184EZybQ1SkI_cVc_aarFlqNFFWcrUcUTTsuzViJKGKW6Ij4x186yfJ4KLdcS5kn_FmP-r_mK1_VlOqkJwOc2QlWk-rgqR51OWsomYyZmY8IiV3MjSbnowNN0GDvc5mxG2xA2KrbRBdMCm1TzsNwXbhcNgYtsAN7fQDwBFzssiPVQibgI605fpLv-eo1sMjFyFppXK9X2pEvYBHa_xf9QFDr3tnMBo8mmofNnH_lt7-r-1YS_o0JTpUTOmh25Mn5H-QT_uYc5w_VzjY_cf3PSHpKci9aqkIUvEtxL3pHGQ-yGH1-8eWY_m9ao3GbRqVKDZ7Jth1gcu7uOgEFAE62hk6VtGBHU0cTTqnWsk7npJdAEP_YGpclgrHw2stS25Bhms88M5iAfcqEChqk0nnsN3wpK4i79XLVjphrYUm0rdVBSqhm-GdtU3vDhAjntg09aBVLw21gcl4hzea6y-4n4w3y943cYRc_XTxcXq_-a_XK4Wd_MvS7a6WF6t5jfx4Jj97gQJGypOjpH9SPRiliy5R0m71hp6ff3Lx92yxIp3OtChCe7mp132DdhZm26QrmpjXWzPxpr-OTaaQKVyvVVPr85u--dU7DtEnESc7xP1NgmyiwnMAx7zv1SesHxXrYSxJEni_OmRO7GmPnAXPF2jQ5LPv6XPLyJ9fnmKfgdm-1n4nTj_Dv7TLv9-eW9E-IPk98DrS-6j5Usjqa127tbKh2R3YKFxaD68dunfoHxTT_k82wfmdZbDM9hnfX8H-M9WV61D3pQakzXJ56O91Dfz79ZWEUb9ICWPChbxwFXxwDXdNo7ojUnDxZqwZfxaBdXEfdlksMDYQKs4y299R-kop2RyQQnLKaX0Wb6-IiW_3LNR2rMd_ZHR5T9f_g0M2fYNVT9Qx46QPHtM1Cs9H_4pGX34yO8xKkvyeTEbx59fg0EyWtDLXmh26kETy8jog2p4jWS0IGy6DqH1MQRsSdiyVmHdlf2hOiZR7IMhcLFu0ARP2JJ7j_0FFuVskqYCpuloBsVkLKEc4xQmM16NK8nGo8lkf4odPs_keS5n-Yyf4Xk2YUU6LsZserY-F2UxHlfpRHJZFWNWytl4lI_SLCvTiZhM5Jk6Zykr0mk2y9JRyqZJMcFylE1YNiunMyE4KVJsuNJJrJPEuvpMed_heZYWk9HsTPMSte_fZzJm8JH2v0YYGy3O3Hl_tiy72pMijXXhD2KCChrP-1rbNogGMeyKqH9bWXY1fVyjeflC9Kxz-vyEd195ZBHTPWoWHbxV_eGc_SsAAP__NlCYnw">