You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is required for OE gcc installation to work.
Without this its not able to find the paths for libgcc
and other standard headers and libraries from gcc
installation in OE
* Do not use install relative libc++ headers
In OE we use same clang for native and cross builds, therefore we need
to ensure that native sysroot install of libc++ is not searched for
headers when doing cross compile instead it searches the target sysroot
this is especially troublesome when libcxx-native is staged along with
libcxx e.g. chromium
* Fix lib paths for OpenEmbedded Host
Under OpenEmbedded Host, while building with clang-native, it cannot find
the GCCInstallPath, which causing following error:
[snip]
compiler-rt-native/13.0.1-r0/recipe-sysroot-native/usr/bin/clang
-target x86_64-linux
-isystem/path/to/x86_64-linux/compiler-rt-native/13.0.1-r0/recipe-sysroot-native/usr/include
-O2 -pipe
/path/to/compiler-rt-native/13.0.1-r0/recipe-sysroot-native/usr/share/cmake-3.21/Modules/CMakeCCompilerABI.c`
hosttools/ld: cannot find crtbeginS.o: No such file or directory
[snip]
Before this patch:
compiler-rt-native/13.0.1-r0/recipe-sysroot-native/usr/bin/clang
clang version 13.0.1 (https://github.com/llvm/llvm-project08e3a5c)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /build/tmp-glibc/work/x86_64-linux/compiler-rt-native/13.0.1-r0/recipe-sysroot-native/usr/bin
Found candidate GCC installation: /usr/lib/gcc/x86_64-wrs-linux/10.2.0
After this patch:
compiler-rt-native/13.0.1-r0/recipe-sysroot-native/usr/bin/clang
clang version 13.0.1 (https://github.com/llvm/llvm-project08e3a5c)
Thread model: posix
InstalledDir: /build/tmp-glibc/work/x86_64-linux/compiler-rt-native/13.0.1-r0/recipe-sysroot-native/usr/bin
Found candidate GCC installation: /usr/lib/gcc/x86_64-wrs-linux/10.2.0
Found candidate GCC installation: /usr/lib/x86_64-wrs-linux/10.2.0
Selected GCC installation: /usr/lib/x86_64-wrs-linux/10.2.0
Candidate multilib: .;@m64
Selected multilib: .;@m64
For OpenEmbedded Host, sysroots are of the form<sysroot>/usr/lib/<triple>/x.y.z.
Take x86-64 as example, the default triple is x86_64-unknown-linux-gnu.
For clang-native, the target vendor is '-unknown', need to test current distro
to follow above form.
Upstream-Status: Inappropriate [oe specific]
Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
0 commit comments