Coder Social home page Coder Social logo

Comments (6)

wsmoses avatar wsmoses commented on July 17, 2024

Interesting, do you mind pasting the output of your cmake (on a new build).

Also your operating system/etc.

from polygeist.

agostini01 avatar agostini01 commented on July 17, 2024

For sure. Here are the outputs after removing and re-creating polygeist build folder and executing the readme commands:

cmake -G Ninja ..   -DMLIR_DIR=$PWD/../llvm-project/build/lib/cmake/mlir   -DCLANG_DIR=$PWD/../llvm-project/build/lib/cmake/clang   -DLLVM_TARGETS_TO_BUILD="host"   -DLLVM_ENABLE_ASSERTIONS=ON   -DCMAKE_BUILD_TYPE=DEBUG
-- The CXX compiler identification is Clang 10.0.0
-- The C compiler identification is Clang 10.0.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/clang++-10 - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/clang-10 - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Searching for MLIRConfig.cmake in: /working_dir/build/../llvm-project/build/lib/cmake/mlir
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.11") 
-- Searching for ClangConfig.cmake in: /working_dir/build/../llvm-project/build/lib/cmake/clang
-- Using MLIRConfig.cmake in: /working_dir/build/../llvm-project/build/lib/cmake/mlir
-- Using LLVMConfig.cmake in: /working_dir/llvm-project/build/lib/cmake/llvm
-- Using ClangConfig.cmake in: /working_dir/build/../llvm-project/build/lib/cmake/clang
-- Linker detection: GNU ld
-- Performing Test LLVM_LIBSTDCXX_MIN
-- Performing Test LLVM_LIBSTDCXX_MIN - Success
-- Performing Test LLVM_LIBSTDCXX_SOFT_ERROR
-- Performing Test LLVM_LIBSTDCXX_SOFT_ERROR - Success
-- Performing Test C_SUPPORTS_FPIC
-- Performing Test C_SUPPORTS_FPIC - Success
-- Performing Test CXX_SUPPORTS_FPIC
-- Performing Test CXX_SUPPORTS_FPIC - Success
-- Building with -fPIC
-- Performing Test SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG
-- Performing Test SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG - Success
-- Performing Test C_SUPPORTS_WERROR_DATE_TIME
-- Performing Test C_SUPPORTS_WERROR_DATE_TIME - Success
-- Performing Test CXX_SUPPORTS_WERROR_DATE_TIME
-- Performing Test CXX_SUPPORTS_WERROR_DATE_TIME - Success
-- Performing Test C_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW
-- Performing Test C_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW - Success
-- Performing Test CXX_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW
-- Performing Test CXX_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW - Success
-- Performing Test CXX_SUPPORTS_MISSING_FIELD_INITIALIZERS_FLAG
-- Performing Test CXX_SUPPORTS_MISSING_FIELD_INITIALIZERS_FLAG - Success
-- Performing Test C_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG
-- Performing Test C_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG - Success
-- Performing Test CXX_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG
-- Performing Test CXX_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG - Success
-- Performing Test C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG
-- Performing Test C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG - Success
-- Performing Test CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG
-- Performing Test CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG - Success
-- Performing Test CXX_SUPPORTS_CLASS_MEMACCESS_FLAG
-- Performing Test CXX_SUPPORTS_CLASS_MEMACCESS_FLAG - Failed
-- Performing Test CXX_SUPPORTS_NOEXCEPT_TYPE_FLAG
-- Performing Test CXX_SUPPORTS_NOEXCEPT_TYPE_FLAG - Success
-- Performing Test CXX_WONT_WARN_ON_FINAL_NONVIRTUALDTOR
-- Performing Test CXX_WONT_WARN_ON_FINAL_NONVIRTUALDTOR - Success
-- Performing Test CXX_SUPPORTS_SUGGEST_OVERRIDE_FLAG
-- Performing Test CXX_SUPPORTS_SUGGEST_OVERRIDE_FLAG - Failed
-- Performing Test C_WCOMMENT_ALLOWS_LINE_WRAP
-- Performing Test C_WCOMMENT_ALLOWS_LINE_WRAP - Success
-- Performing Test C_SUPPORTS_STRING_CONVERSION_FLAG
-- Performing Test C_SUPPORTS_STRING_CONVERSION_FLAG - Success
-- Performing Test CXX_SUPPORTS_STRING_CONVERSION_FLAG
-- Performing Test CXX_SUPPORTS_STRING_CONVERSION_FLAG - Success
-- Performing Test C_SUPPORTS_MISLEADING_INDENTATION_FLAG
-- Performing Test C_SUPPORTS_MISLEADING_INDENTATION_FLAG - Success
-- Performing Test CXX_SUPPORTS_MISLEADING_INDENTATION_FLAG
-- Performing Test CXX_SUPPORTS_MISLEADING_INDENTATION_FLAG - Success
-- Performing Test LINKER_SUPPORTS_COLOR_DIAGNOSTICS
-- Performing Test LINKER_SUPPORTS_COLOR_DIAGNOSTICS - Failed
-- Looking for os_signpost_interval_begin
-- Looking for os_signpost_interval_begin - not found
-- Configuring done
-- Generating done
-- Build files have been written to: /working_dir/build
# Completes ok!
ninja 
[15/22] Building CXX object lib/polygeist/Passes/CMakeFiles/obj.MLIRPolygeistTransforms.dir/CanonicalizeFor.cpp.o
../lib/polygeist/Passes/CanonicalizeFor.cpp:1054:22: warning: unused variable 'i1Ty' [-Wunused-variable]
                auto i1Ty = rewriter.getIntegerType(1);
                     ^
1 warning generated.
[18/22] Building CXX object lib/polygeist/Passes/CMakeFiles/obj.MLIRPolygeistTransforms.dir/ParallelLower.cpp.o
../lib/polygeist/Passes/ParallelLower.cpp:361:14: warning: unused variable 'i1' [-Wunused-variable]
        auto i1 = bz.getI1Type();
             ^
1 warning generated.
[21/22] Building CXX object lib/polygeist/Passes/CMakeFiles/obj.MLIRPolygeistTransforms.dir/LoopRestructure.cpp.o
../lib/polygeist/Passes/LoopRestructure.cpp:104:27: warning: cast from 'const Wrapper *' to 'mlir::Block *' drops const qualifier [-Wcast-qual]
    Region *R = ((Block *)(this))->getParent();
                          ^
../lib/polygeist/Passes/LoopRestructure.cpp:107:53: warning: cast from 'const Wrapper *' to 'mlir::Block *' drops const qualifier [-Wcast-qual]
  mlir::Block &operator*() const { return *(Block *)(this); }
                                                    ^
../lib/polygeist/Passes/LoopRestructure.cpp:108:53: warning: cast from 'const Wrapper *' to 'mlir::Block *' drops const qualifier [-Wcast-qual]
  mlir::Block *operator->() const { return (Block *)(this); }
                                                    ^
3 warnings generated.
[22/22] Linking CXX static library lib/polygeist/Passes/libMLIRPolygeistTransforms.a
# This one fails
ninja check-mlir-clang
[9/11] Building CXX object mlir-clang/CMakeFiles/mlir-clang.dir/mlir-clang.cc.o
../mlir-clang/mlir-clang.cc:334:30: warning: ISO C++11 does not allow conversion from string literal to 'llvm::SmallVectorTemplateBase<char *, true>::ValueParamT' (aka 'char *') [-Wwritable-strings]
          MLIRArgs.push_back("-D");
                             ^
../mlir-clang/mlir-clang.cc:337:30: warning: ISO C++11 does not allow conversion from string literal to 'llvm::SmallVectorTemplateBase<char *, true>::ValueParamT' (aka 'char *') [-Wwritable-strings]
          MLIRArgs.push_back("-I");
                             ^
2 warnings generated.
[10/11] Linking CXX executable mlir-clang/mlir-clang
FAILED: mlir-clang/mlir-clang 
: && /usr/bin/clang++-10 -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wstring-conversion -Wmisleading-indentation -fdiagnostics-color -g -Wl,-rpath-link, mlir-clang/CMakeFiles/mlir-clang.dir/__/llvm-project/clang/tools/driver/cc1_main.cpp.o mlir-clang/CMakeFiles/mlir-clang.dir/__/llvm-project/clang/tools/driver/cc1as_main.cpp.o mlir-clang/CMakeFiles/mlir-clang.dir/__/llvm-project/clang/tools/driver/cc1gen_reproducer_main.cpp.o mlir-clang/CMakeFiles/mlir-clang.dir/mlir-clang.cc.o mlir-clang/CMakeFiles/mlir-clang.dir/Lib/utils.cc.o mlir-clang/CMakeFiles/mlir-clang.dir/Lib/AffineUtils.cc.o mlir-clang/CMakeFiles/mlir-clang.dir/Lib/pragmaHandler.cc.o mlir-clang/CMakeFiles/mlir-clang.dir/Lib/ValueCategory.cc.o mlir-clang/CMakeFiles/mlir-clang.dir/Lib/CGStmt.cc.o -o mlir-clang/mlir-clang -L/working_dir/llvm-project/build/./lib -Wl,-rpath,"\$ORIGIN/../lib:/working_dir/llvm-project/build/./lib"  ../llvm-project/build/lib/libLLVMX86CodeGen.a  ../llvm-project/build/lib/libLLVMX86AsmParser.a  ../llvm-project/build/lib/libLLVMX86Desc.a  ../llvm-project/build/lib/libLLVMX86Disassembler.a  ../llvm-project/build/lib/libLLVMX86Info.a  ../llvm-project/build/lib/libLLVMAnalysis.a  ../llvm-project/build/lib/libLLVMCodeGen.a  ../llvm-project/build/lib/libLLVMCore.a  ../llvm-project/build/lib/libLLVMAggressiveInstCombine.a  ../llvm-project/build/lib/libLLVMInstCombine.a  ../llvm-project/build/lib/libLLVMInstrumentation.a  ../llvm-project/build/lib/libLLVMMC.a  ../llvm-project/build/lib/libLLVMMCParser.a  ../llvm-project/build/lib/libLLVMObjCARCOpts.a  ../llvm-project/build/lib/libLLVMOption.a  ../llvm-project/build/lib/libLLVMScalarOpts.a  ../llvm-project/build/lib/libLLVMSupport.a  ../llvm-project/build/lib/libLLVMTransformUtils.a  ../llvm-project/build/lib/libLLVMVectorize.a  -lpthread  ../llvm-project/build/lib/libMLIRSCFTransforms.a  lib/polygeist/libMLIRPolygeist.a  ../llvm-project/build/lib/libMLIRSupport.a  ../llvm-project/build/lib/libMLIRIR.a  ../llvm-project/build/lib/libMLIRAnalysis.a  ../llvm-project/build/lib/libMLIRLLVMIR.a  ../llvm-project/build/lib/libMLIRNVVMIR.a  ../llvm-project/build/lib/libMLIROpenMP.a  ../llvm-project/build/lib/libMLIRGPUOps.a  ../llvm-project/build/lib/libMLIRTransforms.a  ../llvm-project/build/lib/libMLIRSCFToStandard.a  ../llvm-project/build/lib/libMLIRStandardToLLVM.a  ../llvm-project/build/lib/libMLIRAffineTransforms.a  ../llvm-project/build/lib/libMLIRAffineToStandard.a  ../llvm-project/build/lib/libMLIRMathToLLVM.a  ../llvm-project/build/lib/libMLIRTargetLLVMIRImport.a  lib/polygeist/Passes/libMLIRPolygeistTransforms.a  ../llvm-project/build/lib/libMLIRLLVMToLLVMIRTranslation.a  ../llvm-project/build/lib/libMLIRSCFToOpenMP.a  ../llvm-project/build/lib/libMLIROpenMPToLLVM.a  ../llvm-project/build/lib/libMLIROpenMPToLLVMIRTranslation.a  ../llvm-project/build/lib/libclangAST.a  ../llvm-project/build/lib/libclangBasic.a  ../llvm-project/build/lib/libclangCodeGen.a  ../llvm-project/build/lib/libclangDriver.a  ../llvm-project/build/lib/libclangFrontend.a  ../llvm-project/build/lib/libclangFrontendTool.a  ../llvm-project/build/lib/libclangLex.a  ../llvm-project/build/lib/libclangSerialization.a  ../llvm-project/build/lib/libLLVMAsmPrinter.a  ../llvm-project/build/lib/libLLVMDebugInfoDWARF.a  ../llvm-project/build/lib/libLLVMDebugInfoMSF.a  ../llvm-project/build/lib/libLLVMGlobalISel.a  ../llvm-project/build/lib/libLLVMSelectionDAG.a  ../llvm-project/build/lib/libLLVMCFGuard.a  ../llvm-project/build/lib/libLLVMMCDisassembler.a  ../llvm-project/build/lib/libMLIRVectorToLLVM.a  ../llvm-project/build/lib/libMLIRArmNeon.a  ../llvm-project/build/lib/libMLIRArmSVETransforms.a  ../llvm-project/build/lib/libMLIRArmSVE.a  ../llvm-project/build/lib/libMLIRAMXTransforms.a  ../llvm-project/build/lib/libMLIRAMX.a  ../llvm-project/build/lib/libMLIRX86VectorTransforms.a  ../llvm-project/build/lib/libMLIRX86Vector.a  lib/polygeist/libMLIRPolygeist.a  ../llvm-project/build/lib/libMLIRNVVMIR.a  ../llvm-project/build/lib/libMLIRGPUOps.a  ../llvm-project/build/lib/libMLIRDLTI.a  ../llvm-project/build/lib/libMLIRSCFToStandard.a  ../llvm-project/build/lib/libMLIRStandardOpsTransforms.a  ../llvm-project/build/lib/libMLIRArithmeticTransforms.a  ../llvm-project/build/lib/libMLIRStandardToLLVM.a  ../llvm-project/build/lib/libMLIRArithmeticToLLVM.a  ../llvm-project/build/lib/libMLIRMemRefToLLVM.a  ../llvm-project/build/lib/libMLIRLLVMCommonConversion.a  ../llvm-project/build/lib/libMLIRTransforms.a  ../llvm-project/build/lib/libMLIRCopyOpInterface.a  ../llvm-project/build/lib/libMLIRVector.a  ../llvm-project/build/lib/libMLIRAffineUtils.a  ../llvm-project/build/lib/libMLIRTransformUtils.a  ../llvm-project/build/lib/libMLIRRewrite.a  ../llvm-project/build/lib/libMLIRPDLToPDLInterp.a  ../llvm-project/build/lib/libMLIRPDLInterp.a  ../llvm-project/build/lib/libMLIRPDL.a  ../llvm-project/build/lib/libMLIRLoopAnalysis.a  ../llvm-project/build/lib/libMLIRPresburger.a  ../llvm-project/build/lib/libMLIRLinalg.a  ../llvm-project/build/lib/libMLIRAffine.a  ../llvm-project/build/lib/libMLIRSCF.a  ../llvm-project/build/lib/libMLIRMemRef.a  ../llvm-project/build/lib/libMLIRMemRefUtils.a  ../llvm-project/build/lib/libMLIRLoopLikeInterface.a  ../llvm-project/build/lib/libMLIRTensor.a  ../llvm-project/build/lib/libMLIRStandard.a  ../llvm-project/build/lib/libMLIRArithmetic.a  ../llvm-project/build/lib/libMLIRVectorInterfaces.a  ../llvm-project/build/lib/libMLIRCastInterfaces.a  ../llvm-project/build/lib/libMLIRMath.a  ../llvm-project/build/lib/libMLIRDialect.a  ../llvm-project/build/lib/libMLIRDialectUtils.a  ../llvm-project/build/lib/libMLIRTilingInterface.a  ../llvm-project/build/lib/libMLIROpenMP.a  ../llvm-project/build/lib/libMLIRTargetLLVMIRExport.a  ../llvm-project/build/lib/libMLIRTranslation.a  ../llvm-project/build/lib/libMLIRParser.a  ../llvm-project/build/lib/libMLIRLLVMIRTransforms.a  ../llvm-project/build/lib/libMLIRLLVMIR.a  ../llvm-project/build/lib/libMLIRPass.a  ../llvm-project/build/lib/libMLIRAnalysis.a  ../llvm-project/build/lib/libMLIRCallInterfaces.a  ../llvm-project/build/lib/libMLIRControlFlowInterfaces.a  ../llvm-project/build/lib/libMLIRDataLayoutInterfaces.a  ../llvm-project/build/lib/libMLIRInferTypeOpInterface.a  ../llvm-project/build/lib/libMLIRSideEffectInterfaces.a  ../llvm-project/build/lib/libMLIRViewLikeInterface.a  ../llvm-project/build/lib/libMLIRIR.a  ../llvm-project/build/lib/libMLIRSupport.a  ../llvm-project/build/lib/libclangCodeGen.a  ../llvm-project/build/lib/libLLVMCoverage.a  ../llvm-project/build/lib/libLLVMLTO.a  ../llvm-project/build/lib/libLLVMCodeGen.a  ../llvm-project/build/lib/libLLVMExtensions.a  ../llvm-project/build/lib/libLLVMPasses.a  ../llvm-project/build/lib/libLLVMObjCARCOpts.a  ../llvm-project/build/lib/libLLVMTarget.a  ../llvm-project/build/lib/libLLVMCoroutines.a  ../llvm-project/build/lib/libLLVMipo.a  ../llvm-project/build/lib/libLLVMInstrumentation.a  ../llvm-project/build/lib/libLLVMVectorize.a  ../llvm-project/build/lib/libLLVMBitWriter.a  ../llvm-project/build/lib/libLLVMIRReader.a  ../llvm-project/build/lib/libLLVMAsmParser.a  ../llvm-project/build/lib/libLLVMLinker.a  ../llvm-project/build/lib/libclangRewriteFrontend.a  ../llvm-project/build/lib/libclangARCMigrate.a  ../llvm-project/build/lib/libclangStaticAnalyzerFrontend.a  ../llvm-project/build/lib/libclangStaticAnalyzerCheckers.a  ../llvm-project/build/lib/libclangStaticAnalyzerCore.a  ../llvm-project/build/lib/libclangCrossTU.a  ../llvm-project/build/lib/libclangIndex.a  ../llvm-project/build/lib/libclangFrontend.a  ../llvm-project/build/lib/libclangDriver.a  ../llvm-project/build/lib/libLLVMOption.a  ../llvm-project/build/lib/libclangParse.a  ../llvm-project/build/lib/libclangSerialization.a  ../llvm-project/build/lib/libclangSema.a  ../llvm-project/build/lib/libclangAnalysis.a  ../llvm-project/build/lib/libclangASTMatchers.a  ../llvm-project/build/lib/libclangEdit.a  ../llvm-project/build/lib/libclangAST.a  ../llvm-project/build/lib/libLLVMFrontendOpenMP.a  ../llvm-project/build/lib/libLLVMScalarOpts.a  ../llvm-project/build/lib/libLLVMAggressiveInstCombine.a  ../llvm-project/build/lib/libLLVMInstCombine.a  ../llvm-project/build/lib/libLLVMTransformUtils.a  ../llvm-project/build/lib/libLLVMAnalysis.a  ../llvm-project/build/lib/libLLVMProfileData.a  ../llvm-project/build/lib/libLLVMObject.a  ../llvm-project/build/lib/libLLVMMCParser.a  ../llvm-project/build/lib/libLLVMMC.a  ../llvm-project/build/lib/libLLVMDebugInfoCodeView.a  ../llvm-project/build/lib/libLLVMBitReader.a  ../llvm-project/build/lib/libLLVMTextAPI.a  ../llvm-project/build/lib/libLLVMCore.a  ../llvm-project/build/lib/libLLVMBinaryFormat.a  ../llvm-project/build/lib/libLLVMRemarks.a  ../llvm-project/build/lib/libLLVMBitstreamReader.a  ../llvm-project/build/lib/libclangFormat.a  ../llvm-project/build/lib/libclangToolingInclusions.a  ../llvm-project/build/lib/libclangToolingCore.a  ../llvm-project/build/lib/libclangRewrite.a  ../llvm-project/build/lib/libclangLex.a  ../llvm-project/build/lib/libclangBasic.a  ../llvm-project/build/lib/libLLVMSupport.a  -lrt  -ldl  -lpthread  -lm  /usr/lib/x86_64-linux-gnu/libz.so  /usr/lib/x86_64-linux-gnu/libtinfo.so  ../llvm-project/build/lib/libLLVMDemangle.a && :
/usr/bin/ld: mlir-clang/CMakeFiles/mlir-clang.dir/mlir-clang.cc.o: in function `ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&)':
/working_dir/build/../mlir-clang/mlir-clang.cc:182: undefined reference to `cc1_main(llvm::ArrayRef<char const*>, char const*, void*)'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.

My system is based on a docker image based on tensorflow/tensorflow:latest. Dockerfile attached below.

# ==============================================================================
FROM tensorflow/tensorflow:latest-devel as builder

# Development Tools
RUN apt update && apt install -y curl wget tree less git vim tmux htop

# Compilers
RUN apt update && apt install -y clang-10 lld-10 && \
    ln -s /usr/bin/clang-10 /usr/bin/clang && \
    ln -s /usr/bin/clang++-10 /usr/bin/clang++ 

# Tensorflow latest-devel image comes with clang-format pre-installed 
# RUN apt install clang-format-10 && \
#     ln -s /usr/bin/clang-format-10 /usr/bin/clang-format

WORKDIR /tmp
RUN wget https://github.com/Kitware/CMake/releases/download/v3.18.2/cmake-3.18.2-Linux-x86_64.sh && \
    chmod +x cmake-3.18.2-Linux-x86_64.sh && \
    ./cmake-3.18.2-Linux-x86_64.sh --skip-license --prefix=/usr/local

RUN wget https://github.com/ninja-build/ninja/releases/download/v1.10.1/ninja-linux.zip && \
    unzip ninja-linux.zip && \
    mv ninja /usr/local/bin/ninja && \
    ln -s /usr/local/bin/ninja /usr/sbin/ninja

# Requirements for VSCODE plugins
WORKDIR /usr/local/bin
RUN wget -q https://github.com/bazelbuild/buildtools/releases/download/3.2.1/buildifier -O buildifier

# Setup some convenient tools/functionalities
WORKDIR /root
RUN git clone https://github.com/agostini01/dotfiles.git && \
    \
    ln -sf dotfiles/.gitignore_global .gitignore_global && \
    \
    curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim && \
    \
    ln -sf dotfiles/.vimrc            .vimrc && \
    ln -sf dotfiles/.ctags            .ctags && \
    ln -sf dotfiles/.inputrc          .inputrc && \
    \
    git clone https://github.com/tmux-plugins/tpm /root/.tmux/plugins/tpm && \
    ln -sf dotfiles/.tmux.conf        .tmux.conf

RUN echo "PS1='\[\033[01;31m\][\[\033[01;30m\]\u@\h\[\033[01;36m\] \W\[\033[01;31m\]]\$\[\033[00m\] '" >> .bashrc

RUN echo "export CXX=/usr/bin/clang++" >> ~/.bashrc && \
    echo "export CC=/usr/bin/clang" >> ~/.bashrc
ENV CXX=/usr/bin/clang++ 
ENV CC=/usr/bin/clang 

The image is based on ubuntu 20.04 and I am using ninja 1.10.1, cmake 3.2.1, clang-10, and GNU ld 2.34.

Please, let me know if you need any additional info.

from polygeist.

lcnzg avatar lcnzg commented on July 17, 2024

Same error here.

from polygeist.

lcnzg avatar lcnzg commented on July 17, 2024

Building Polygeist as an external project (Option 2) worked.

from polygeist.

mmoadeli avatar mmoadeli commented on July 17, 2024

I bumped into the same issue when I tried to build Polygeist using DPC++ to have Polygeist support SYCL input. I managed to fix the issue by building clang in llvm-project/build folder and building mlir in llvm-project/build-mlir folder and using those paths for clang and mlir when building Polygeist.

from polygeist.

mgehre-amd avatar mgehre-amd commented on July 17, 2024

When I removed the option -Wl,-rpath-link, (i.e. with an empty path) from the linker command line and manually rerun the command, it linked correctly. But I didn't spent time to figure out where to fix this in cmake.
Setting LLVM_LIBRARY_OUTPUT_INTDIR in the CMakeLists.txt fixes this issue.

from polygeist.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.