mrk-its / rust-mos

Empowering everyone to build reliable and efficient software.
https://www.rust-lang.org
Other
55 stars 7 forks source link

Build fails #9

Closed p2mate closed 1 year ago

p2mate commented 1 year ago

first 2 steps work fine, but building rust results in:

❯ ./x.py build -i --stage 0 src/tools/cargo Updating only changed submodules Submodules updated in 0.01 seconds Building rustbuild Finished dev [unoptimized] target(s) in 0.19s Building stage0 std artifacts (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu) Finished release [optimized] target(s) in 0.19s Copying stage0 std from stage0 (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu / x86_64-unknown-linux-gnu) Building stage0 compiler artifacts (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu) Compiling rustc_llvm v0.0.0 (/home/p2/projects/rust-mos/compiler/rustc_llvm) Compiling rustc_session v0.0.0 (/home/p2/projects/rust-mos/compiler/rustc_session) Compiling rustc_attr v0.0.0 (/home/p2/projects/rust-mos/compiler/rustc_attr) Compiling rustc_query_system v0.0.0 (/home/p2/projects/rust-mos/compiler/rustc_query_system) Compiling rustc_parse v0.0.0 (/home/p2/projects/rust-mos/compiler/rustc_parse) Compiling rustc_middle v0.0.0 (/home/p2/projects/rust-mos/compiler/rustc_middle) Compiling rustc_ast_passes v0.0.0 (/home/p2/projects/rust-mos/compiler/rustc_ast_passes) Compiling rustc_expand v0.0.0 (/home/p2/projects/rust-mos/compiler/rustc_expand) Compiling rustc_builtin_macros v0.0.0 (/home/p2/projects/rust-mos/compiler/rustc_builtin_macros) The following warnings were emitted during compilation:

warning: llvm-wrapper/PassWrapper.cpp: In lambda function: warning: llvm-wrapper/PassWrapper.cpp:988:43: error: ‘ASanGlobalsMetadataAnalysis’ was not declared in this scope warning: 988 | MPM.addPass(RequireAnalysisPass<ASanGlobalsMetadataAnalysis, Module>()); warning: | ^~~~~~~ warning: llvm-wrapper/PassWrapper.cpp:988:78: error: template argument 1 is invalid warning: 988 | MPM.addPass(RequireAnalysisPass<ASanGlobalsMetadataAnalysis, Module>()); warning: | ^ warning: llvm-wrapper/PassWrapper.cpp: In function ‘void LLVMRustSetModuleCodeModel(LLVMModuleRef, LLVMRustCodeModel)’: warning: llvm-wrapper/PassWrapper.cpp:1291:19: warning: ‘constexpr bool llvm::Optional::hasValue() const [with T = llvm::CodeModel::Model]’ is deprecated: Use has_value instead. [-Wdeprecated-declarations] warning: 1291 | if (!CM.hasValue()) warning: | ~~~^~ warning: In file included from /usr/local/include/llvm/ADT/STLExtras.h:21, warning: from /usr/local/include/llvm/ADT/ArrayRef.h:15, warning: from llvm-wrapper/LLVMWrapper.h:4, warning: from llvm-wrapper/PassWrapper.cpp:6: warning: /usr/local/include/llvm/ADT/Optional.h:326:18: note: declared here warning: 326 | constexpr bool hasValue() const { warning: | ^~~~

error: failed to run custom build command for rustc_llvm v0.0.0 (/home/p2/projects/rust-mos/compiler/rustc_llvm)

Caused by: process didn't exit successfully: /home/p2/projects/rust-mos/build/x86_64-unknown-linux-gnu/stage0-rustc/release/build/rustc_llvm-79c1d11e42352bd0/build-script-build (exit status: 1) --- stdout cargo:rerun-if-env-changed=RUST_CHECK cargo:rerun-if-env-changed=REAL_LIBRARY_PATH_VAR cargo:rerun-if-env-changed=REAL_LIBRARY_PATH cargo:rerun-if-env-changed=LLVM_CONFIG cargo:rerun-if-changed=/usr/local/bin/llvm-config cargo:rustc-cfg=llvm_component="asmparser" cargo:rustc-cfg=llvm_component="bitreader" cargo:rustc-cfg=llvm_component="bitwriter" cargo:rustc-cfg=llvm_component="coverage" cargo:rustc-cfg=llvm_component="instrumentation" cargo:rustc-cfg=llvm_component="ipo" cargo:rustc-cfg=llvm_component="linker" cargo:rustc-cfg=llvm_component="lto" cargo:rustc-cfg=llvm_component="mos" cargo:rustc-cfg=llvm_component="x86" cargo:rerun-if-env-changed=LLVM_RUSTLLVM cargo:rerun-if-env-changed=LLVM_NDEBUG cargo:rerun-if-changed=llvm-wrapper/CoverageMappingWrapper.cpp cargo:rerun-if-changed=llvm-wrapper/README cargo:rerun-if-changed=llvm-wrapper/PassWrapper.cpp cargo:rerun-if-changed=llvm-wrapper/.editorconfig cargo:rerun-if-changed=llvm-wrapper/ArchiveWrapper.cpp cargo:rerun-if-changed=llvm-wrapper/Linker.cpp cargo:rerun-if-changed=llvm-wrapper/LLVMWrapper.h cargo:rerun-if-changed=llvm-wrapper/RustWrapper.cpp TARGET = Some("x86_64-unknown-linux-gnu") OPT_LEVEL = Some("3") HOST = Some("x86_64-unknown-linux-gnu") CXX_x86_64-unknown-linux-gnu = Some("c++") CXXFLAGS_x86_64-unknown-linux-gnu = Some("-ffunction-sections -fdata-sections -fPIC -m64") CRATE_CC_NO_DEFAULTS = None CARGO_CFG_TARGET_FEATURE = Some("fxsr,llvm14-builtins-abi,sse,sse2") running: "c++" "-O3" "-ffunction-sections" "-fdata-sections" "-fPIC" "-m64" "-ffunction-sections" "-fdata-sections" "-fPIC" "-m64" "-I/usr/local/include" "-std=c++17" "-fno-exceptions" "-fno-rtti" "-D_GNU_SOURCE" "-DSTDC_CONSTANT_MACROS" "-DSTDC_FORMAT_MACROS" "-D__STDC_LIMIT_MACROS" "-DLLVM_COMPONENT_ASMPARSER" "-DLLVM_COMPONENT_BITREADER" "-DLLVM_COMPONENT_BITWRITER" "-DLLVM_COMPONENT_COVERAGE" "-DLLVM_COMPONENT_INSTRUMENTATION" "-DLLVM_COMPONENT_IPO" "-DLLVM_COMPONENT_LINKER" "-DLLVM_COMPONENT_LTO" "-DLLVM_COMPONENT_MOS" "-DLLVM_COMPONENT_X86" "-DNDEBUG" "-o" "/home/p2/projects/rust-mos/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/build/rustc_llvm-c0b7cf8babb6cdd2/out/llvm-wrapper/PassWrapper.o" "-c" "llvm-wrapper/PassWrapper.cpp" cargo:warning=llvm-wrapper/PassWrapper.cpp: In lambda function: cargo:warning=llvm-wrapper/PassWrapper.cpp:988:43: error: ‘ASanGlobalsMetadataAnalysis’ was not declared in this scope cargo:warning= 988 | MPM.addPass(RequireAnalysisPass<ASanGlobalsMetadataAnalysis, Module>()); cargo:warning= | ^~~~~~~ cargo:warning=llvm-wrapper/PassWrapper.cpp:988:78: error: template argument 1 is invalid cargo:warning= 988 | MPM.addPass(RequireAnalysisPass<ASanGlobalsMetadataAnalysis, Module>()); cargo:warning= | ^ cargo:warning=llvm-wrapper/PassWrapper.cpp: In function ‘void LLVMRustSetModuleCodeModel(LLVMModuleRef, LLVMRustCodeModel)’: cargo:warning=llvm-wrapper/PassWrapper.cpp:1291:19: warning: ‘constexpr bool llvm::Optional::hasValue() const [with T = llvm::CodeModel::Model]’ is deprecated: Use has_value instead. [-Wdeprecated-declarations] cargo:warning= 1291 | if (!CM.hasValue()) cargo:warning= | ~~~^~ cargo:warning=In file included from /usr/local/include/llvm/ADT/STLExtras.h:21, cargo:warning= from /usr/local/include/llvm/ADT/ArrayRef.h:15, cargo:warning= from llvm-wrapper/LLVMWrapper.h:4, cargo:warning= from llvm-wrapper/PassWrapper.cpp:6: cargo:warning=/usr/local/include/llvm/ADT/Optional.h:326:18: note: declared here cargo:warning= 326 | constexpr bool hasValue() const { cargo:warning= | ^~~~ exit status: 1

--- stderr

error occurred: Command "c++" "-O3" "-ffunction-sections" "-fdata-sections" "-fPIC" "-m64" "-ffunction-sections" "-fdata-sections" "-fPIC" "-m64" "-I/usr/local/include" "-std=c++17" "-fno-exceptions" "-fno-rtti" "-D_GNU_SOURCE" "-DSTDC_CONSTANT_MACROS" "-DSTDC_FORMAT_MACROS" "-D__STDC_LIMIT_MACROS" "-DLLVM_COMPONENT_ASMPARSER" "-DLLVM_COMPONENT_BITREADER" "-DLLVM_COMPONENT_BITWRITER" "-DLLVM_COMPONENT_COVERAGE" "-DLLVM_COMPONENT_INSTRUMENTATION" "-DLLVM_COMPONENT_IPO" "-DLLVM_COMPONENT_LINKER" "-DLLVM_COMPONENT_LTO" "-DLLVM_COMPONENT_MOS" "-DLLVM_COMPONENT_X86" "-DNDEBUG" "-o" "/home/p2/projects/rust-mos/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/build/rustc_llvm-c0b7cf8babb6cdd2/out/llvm-wrapper/PassWrapper.o" "-c" "llvm-wrapper/PassWrapper.cpp" with args "c++" did not execute successfully (status code exit status: 1).

warning: build failed, waiting for other jobs to finish... Build completed unsuccessfully in 0:00:52

heitbaum commented 1 year ago

See

p2mate commented 1 year ago

Ok, if I apply these changes and some more, then I eventually run into #2

mrk-its commented 1 year ago

Could you try again? I updated rust-mos recently and it should work with current llvm-mos now

p2mate commented 1 year ago

this works indeed!