Giter Club home page Giter Club logo

Comments (6)

kofno avatar kofno commented on June 18, 2024 1

The solution to this seems to be adding the llvm stuff to your path after you brew install it.

Here's an example from my own shell config:

### LLVM stuff
export PATH="$(brew --prefix llvm)/bin:$PATH"

from scry.

kofno avatar kofno commented on June 18, 2024

What is the out put of

cc -o "/Users/.../.cache/crystal/crystal-run-scry.tmp" "${@}"  -rdynamic  -lz `pkg-config --libs libssl || printf %s '-lssl -lcrypto'` `pkg-config --libs libcrypto || printf %s '-lcrypto'` /usr/local/Cellar/crystal-lang/0.18.7/src/llvm/ext/llvm_ext.o `$(command -v llvm-config-3.6 || command -v llvm-config36 || command -v llvm-config-3.5 || command -v llvm-config35 || command -v llvm-config) --libs --system-libs --ldflags 2> /dev/null` -lstdc++ -lpcre -lgc -lpthread /usr/local/Cellar/crystal-lang/0.18.7/src/ext/libcrystal.a -levent -liconv -ldl -L/usr/lib -L/usr/local/lib

from scry.

ray-delossantos avatar ray-delossantos commented on June 18, 2024
Undefined symbols for architecture x86_64:
  "llvm::MetadataTracking::track(void*, llvm::Metadata&, llvm::PointerUnion<llvm::MetadataAsValue*, llvm::Metadata*>)", referenced from:
      llvm::TrackingMDRef::operator=(llvm::TrackingMDRef const&) in llvm_ext.o
  "llvm::MetadataTracking::untrack(void*, llvm::Metadata&)", referenced from:
      llvm::TrackingMDRef::operator=(llvm::TrackingMDRef const&) in llvm_ext.o
      llvm::TrackingMDRef::~TrackingMDRef() in llvm_ext.o
  "llvm::ReplaceableMetadataImpl::replaceAllUsesWith(llvm::Metadata*)", referenced from:
      _LLVMMetadataReplaceAllUsesWith in llvm_ext.o
  "llvm::DIRef<llvm::DIType>::DIRef(llvm::Metadata const*)", referenced from:
      _LLVMDIBuilderCreateLocalVariable in llvm_ext.o
  "llvm::MDNode::getTemporary(llvm::LLVMContext&, llvm::ArrayRef<llvm::Metadata*>)", referenced from:
      _LLVMTemporaryMDNode in llvm_ext.o
  "llvm::MDNode::deleteTemporary(llvm::MDNode*)", referenced from:
      _LLVMMetadataReplaceAllUsesWith in llvm_ext.o
  "llvm::DebugLoc::get(unsigned int, unsigned int, llvm::MDNode*, llvm::MDNode*)", referenced from:
      _LLVMSetCurrentDebugLocation2 in llvm_ext.o
  "llvm::DIBuilder::createFile(llvm::StringRef, llvm::StringRef)", referenced from:
      _LLVMDIBuilderCreateFile in llvm_ext.o
  "llvm::DIBuilder::insertDeclare(llvm::Value*, llvm::DIVariable, llvm::DIExpression, llvm::BasicBlock*)", referenced from:
      _LLVMDIBuilderInsertDeclareAtEnd in llvm_ext.o
  "llvm::DIBuilder::createFunction(llvm::DIDescriptor, llvm::StringRef, llvm::StringRef, llvm::DIFile, unsigned int, llvm::DICompositeType, bool, bool, unsigned int, unsigned int, bool, llvm::Function*, llvm::MDNode*, llvm::MDNode*)", referenced from:
      _LLVMDIBuilderCreateFunction in llvm_ext.o
  "llvm::DIBuilder::createBasicType(llvm::StringRef, unsigned long long, unsigned long long, unsigned int)", referenced from:
      _LLVMDIBuilderCreateBasicType in llvm_ext.o
  "llvm::DIBuilder::createEnumerator(llvm::StringRef, long long)", referenced from:
      _LLVMDIBuilderCreateEnumerator in llvm_ext.o
  "llvm::DIBuilder::createExpression(llvm::ArrayRef<long long>)", referenced from:
      _LLVMDIBuilderCreateExpression in llvm_ext.o
  "llvm::DIBuilder::createMemberType(llvm::DIDescriptor, llvm::StringRef, llvm::DIFile, unsigned int, unsigned long long, unsigned long long, unsigned long long, unsigned int, llvm::DIType)", referenced from:
      _LLVMDIBuilderCreateMemberType in llvm_ext.o
  "llvm::DIBuilder::createStructType(llvm::DIDescriptor, llvm::StringRef, llvm::DIFile, unsigned int, unsigned long long, unsigned long long, unsigned int, llvm::DIType, llvm::DITypedArray<llvm::DIDescriptor>, unsigned int, llvm::DIType, llvm::StringRef)", referenced from:
      _LLVMDIBuilderCreateStructType in llvm_ext.o
  "llvm::DIBuilder::getOrCreateArray(llvm::ArrayRef<llvm::Metadata*>)", referenced from:
      _LLVMDIBuilderGetOrCreateArray in llvm_ext.o
  "llvm::DIBuilder::createCompileUnit(unsigned int, llvm::StringRef, llvm::StringRef, llvm::StringRef, bool, llvm::StringRef, unsigned int, llvm::StringRef, llvm::DIBuilder::DebugEmissionKind, bool)", referenced from:
      _LLVMDIBuilderCreateCompileUnit in llvm_ext.o
  "llvm::DIBuilder::createPointerType(llvm::DIType, unsigned long long, unsigned long long, llvm::StringRef)", referenced from:
      _LLVMDIBuilderCreatePointerType in llvm_ext.o
  "llvm::DIBuilder::createLexicalBlock(llvm::DIDescriptor, llvm::DIFile, unsigned int, unsigned int)", referenced from:
      _LLVMDIBuilderCreateLexicalBlock in llvm_ext.o
  "llvm::DIBuilder::createLocalVariable(unsigned int, llvm::DIDescriptor, llvm::StringRef, llvm::DIFile, unsigned int, llvm::DIRef<llvm::DIType>, bool, unsigned int, unsigned int)", referenced from:
      _LLVMDIBuilderCreateLocalVariable in llvm_ext.o
  "llvm::DIBuilder::createSubroutineType(llvm::DIFile, llvm::DITypedArray<llvm::DIRef<llvm::DIType> >, unsigned int)", referenced from:
      _LLVMDIBuilderCreateSubroutineType in llvm_ext.o
  "llvm::DIBuilder::getOrCreateTypeArray(llvm::ArrayRef<llvm::Metadata*>)", referenced from:
      _LLVMDIBuilderGetOrCreateTypeArray in llvm_ext.o
  "llvm::DIBuilder::createEnumerationType(llvm::DIDescriptor, llvm::StringRef, llvm::DIFile, unsigned int, unsigned long long, unsigned long long, llvm::DITypedArray<llvm::DIDescriptor>, llvm::DIType, llvm::StringRef)", referenced from:
      _LLVMDIBuilderCreateEnumerationType in llvm_ext.o
  "llvm::DIBuilder::finalize()", referenced from:
      _LLVMDIBuilderFinalize in llvm_ext.o
  "llvm::DIBuilder::DIBuilder(llvm::Module&, bool)", referenced from:
      _LLVMNewDIBuilder in llvm_ext.o
  "llvm::DIScope::getRef() const", referenced from:
      _LLVMDIBuilderCreateLocalVariable in llvm_ext.o
  "_main", referenced from:
     implicit entry/start for main executable
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

from scry.

kofno avatar kofno commented on June 18, 2024

Did you brew install crystal-lang --with-llvm ?

from scry.

ray-delossantos avatar ray-delossantos commented on June 18, 2024

Hello @kofno :

Thanks for the help. I reinstalled crystal with llvm and i'm now receiving:

Error in /usr/local/Cellar/crystal-lang/0.18.7/src/llvm/lib_llvm.cr:3: expanding macro

{% begin %}
^

in /usr/local/Cellar/crystal-lang/0.18.7/src/llvm/lib_llvm.cr:5: error executing command: command -v llvm-config-3.8 || command -v llvm-config38 || (command -v llvm-config > /dev/null && (case "$(llvm-config --version)" in 3.8*) command -v llvm-config;; *) false;; esac)) || command -v llvm-config-3.6 || command -v llvm-config36 || command -v llvm-config-3.5 || command -v llvm-config35 || command -v llvm-config , got exit status 1

  LLVM_CONFIG = {{`command -v llvm-config-3.8 || command -v llvm-config38 || (command -v llvm-config > /dev/null && (case "$(llvm-config --version)" in 3.8*) command -v llvm-config;; *) false;; esac)) || command -v llvm-config-3.6 || command -v llvm-config36 || command -v llvm-config-3.5 || command -v llvm-config35 || command -v llvm-config `.chomp.stringify}}

Any idea on what could be wrong in my installation?

from scry.

ray-delossantos avatar ray-delossantos commented on June 18, 2024

That worked, thanks again.

from scry.

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.