-
Notifications
You must be signed in to change notification settings - Fork 15.2k
Open
Labels
Description
Introduced in 631ae59. I built using mingw on 631ae59 and llvmorg-19.1.0-rc2 with LLVM_BUILD_LLVM_DYLIB
.
The error is
ninja: job failed: : && /opt/bin/x86_64-w64-mingw32-libgfortran5-cxx11/x86_64-w64-mingw32-clang++ --target=x86_64-w64-mingw32 --sysroot=/opt/x86_64-w64-mingw32/x86_64-w64-mingw32/sys-root/ -remap -D__USING_SJLJ_EXCEPTIONS__ -D__CRT__NO_INLINE -pthread -DMLIR_CAPI_ENABLE_WINDOWS_DLL_DECLSPEC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -ffunction-sections -fdata-sections -Wundef -Werror=mismatched-tags -O3 -DNDEBUG -Wl,--gc-sections -shared -o bin/libMLIRExecutionEngineShared.dll -Wl,--out-implib,lib/libMLIRExecutionEngineShared.dll.a -Wl,--major-image-version,0,--minor-image-version,0 tools/mlir/lib/ExecutionEngine/CMakeFiles/MLIRExecutionEngineShared.dir/ExecutionEngine.cpp.obj lib/libMLIR.dll.a lib/libLLVM-19jl.dll.a -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 && :
clang++: warning: argument unused during compilation: '-remap' [-Wunused-command-line-argument]
ld.lld: error: undefined symbol: mlir::openOutputFile(llvm::StringRef, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*)
>>> referenced by tools/mlir/lib/ExecutionEngine/CMakeFiles/MLIRExecutionEngineShared.dir/ExecutionEngine.cpp.obj:(mlir::SimpleObjectCache::dumpToObjectFile(llvm::StringRef))
ld.lld: error: undefined symbol: llvm::ilist_detail::SpecificNodeAccess<llvm::ilist_detail::node_options<mlir::Operation, false, false, void, false, void>>::getValuePtr(llvm::ilist_node_impl<llvm::ilist_detail::node_options<mlir::Operation, false, false, void, false, void>>*)
>>> referenced by tools/mlir/lib/ExecutionEngine/CMakeFiles/MLIRExecutionEngineShared.dir/ExecutionEngine.cpp.obj:(mlir::ExecutionEngine::create(mlir::Operation*, mlir::ExecutionEngineOptions const&, std::unique_ptr<llvm::TargetMachine, std::default_delete<llvm::TargetMachine>>))
>>> referenced by tools/mlir/lib/ExecutionEngine/CMakeFiles/MLIRExecutionEngineShared.dir/ExecutionEngine.cpp.obj:(mlir::ExecutionEngine::create(mlir::Operation*, mlir::ExecutionEngineOptions const&, std::unique_ptr<llvm::TargetMachine, std::default_delete<llvm::TargetMachine>>))
>>> referenced by tools/mlir/lib/ExecutionEngine/CMakeFiles/MLIRExecutionEngineShared.dir/ExecutionEngine.cpp.obj:(llvm::iterator_range<mlir::detail::op_iterator<mlir::LLVM::LLVMFuncOp, mlir::Region::OpIterator>> mlir::Region::getOps<mlir::LLVM::LLVMFuncOp>())
>>> referenced 1 more times
ld.lld: error: undefined symbol: mlir::LLVM::LLVMFuncOp::getSymName()
>>> referenced by tools/mlir/lib/ExecutionEngine/CMakeFiles/MLIRExecutionEngineShared.dir/ExecutionEngine.cpp.obj:(mlir::ExecutionEngine::create(mlir::Operation*, mlir::ExecutionEngineOptions const&, std::unique_ptr<llvm::TargetMachine, std::default_delete<llvm::TargetMachine>>))
ld.lld: error: undefined symbol: mlir::Region::OpIterator::operator++()
>>> referenced by tools/mlir/lib/ExecutionEngine/CMakeFiles/MLIRExecutionEngineShared.dir/ExecutionEngine.cpp.obj:(mlir::ExecutionEngine::create(mlir::Operation*, mlir::ExecutionEngineOptions const&, std::unique_ptr<llvm::TargetMachine, std::default_delete<llvm::TargetMachine>>))
>>> referenced by tools/mlir/lib/ExecutionEngine/CMakeFiles/MLIRExecutionEngineShared.dir/ExecutionEngine.cpp.obj:(llvm::iterator_range<mlir::detail::op_iterator<mlir::LLVM::LLVMFuncOp, mlir::Region::OpIterator>> mlir::Region::getOps<mlir::LLVM::LLVMFuncOp>())
>>> referenced by tools/mlir/lib/ExecutionEngine/CMakeFiles/MLIRExecutionEngineShared.dir/ExecutionEngine.cpp.obj:(llvm::iterator_range<mlir::detail::op_iterator<mlir::LLVM::LLVMFuncOp, mlir::Region::OpIterator>> mlir::Region::getOps<mlir::LLVM::LLVMFuncOp>())
ld.lld: error: undefined symbol: mlir::translateModuleToLLVMIR(mlir::Operation*, llvm::LLVMContext&, llvm::StringRef, bool)
>>> referenced by tools/mlir/lib/ExecutionEngine/CMakeFiles/MLIRExecutionEngineShared.dir/ExecutionEngine.cpp.obj:(mlir::ExecutionEngine::create(mlir::Operation*, mlir::ExecutionEngineOptions const&, std::unique_ptr<llvm::TargetMachine, std::default_delete<llvm::TargetMachine>>))
ld.lld: error: undefined symbol: mlir::Region::OpIterator::OpIterator(mlir::Region*, bool)
>>> referenced by tools/mlir/lib/ExecutionEngine/CMakeFiles/MLIRExecutionEngineShared.dir/ExecutionEngine.cpp.obj:(llvm::iterator_range<mlir::detail::op_iterator<mlir::LLVM::LLVMFuncOp, mlir::Region::OpIterator>> mlir::Region::getOps<mlir::LLVM::LLVMFuncOp>())
>>> referenced by tools/mlir/lib/ExecutionEngine/CMakeFiles/MLIRExecutionEngineShared.dir/ExecutionEngine.cpp.obj:(llvm::iterator_range<mlir::detail::op_iterator<mlir::LLVM::LLVMFuncOp, mlir::Region::OpIterator>> mlir::Region::getOps<mlir::LLVM::LLVMFuncOp>())
ld.lld: error: undefined symbol: mlir::detail::TypeIDResolver<mlir::LLVM::LLVMFuncOp, void>::id
>>> referenced by tools/mlir/lib/ExecutionEngine/CMakeFiles/MLIRExecutionEngineShared.dir/ExecutionEngine.cpp.obj:(.refptr._ZN4mlir6detail14TypeIDResolverINS_4LLVM10LLVMFuncOpEvE2idE)
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
Applying Zentrik@e781d06 fixes mlir::openOutputFile
being undefined. Not sure if the fix is to just include some other libraries as well or something different.