mirror of
https://github.com/servo/servo.git
synced 2025-08-02 20:20:14 +01:00
ohos: Fix x86_64-unknown-linux-ohos (#33029)
* ohos: Fix compilation for x86_64 Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> * ohos: Use the SDK compiler-wrapper When compiling for x86_64-unknown-linux-ohos without the compiler wrapper, for some reason mozjs_sys will be refercing a wrong mangled symbol resulting in the following error when loading the .so at runtime: ``` _ZNSt3__111this_thread9sleep_forERKNS_6chrono8durationIxNS_5ratioILl1ELl1000000000EEEEE: symbol not found ``` This problem does not occur when compiling for aarch64 or when using the compiler wrapper. In this case the correct symbol `_ZNSt4__n111this_thread9sleep_forERKNS_6chrono8durationIxNS_5ratioILl1ELl1000000000EEEEE` is referenced. It's unclear why manually passing the flags via CFLAGS / CXXFLAGS does not work. Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> --------- Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>
This commit is contained in:
parent
478d95d245
commit
3aef023368
5 changed files with 10 additions and 7 deletions
|
@ -748,8 +748,8 @@ class CommandBase(object):
|
|||
env['TARGET_STRIP'] = to_sdk_llvm_bin("llvm-strip")
|
||||
|
||||
rust_target_triple = str(self.cross_compile_target).replace('-', '_')
|
||||
ndk_clang = to_sdk_llvm_bin("clang")
|
||||
ndk_clangxx = to_sdk_llvm_bin("clang++")
|
||||
ndk_clang = to_sdk_llvm_bin(f"{self.cross_compile_target}-clang")
|
||||
ndk_clangxx = to_sdk_llvm_bin(f"{self.cross_compile_target}-clang++")
|
||||
env[f'CC_{rust_target_triple}'] = ndk_clang
|
||||
env[f'CXX_{rust_target_triple}'] = ndk_clangxx
|
||||
# The clang target name is different from the LLVM target name
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue