【发布时间】:2014-09-01 20:13:21
【问题描述】:
我正在尝试使用 Mac OS X Yosemite 中提供的 LLVM 在此项目中制作编译器,并在 Github https://github.com/lsegal/my_toy_compiler/issues/17 上收到此问题中提到的以下错误
在运行make all 命令时,似乎会抛出一个错误:
Undefined symbols for architecture x86_64:
"_LLVMInitializeX86Target", referenced from:
llvm::InitializeNativeTarget() in main.o
"_LLVMInitializeX86TargetInfo", referenced from:
llvm::InitializeNativeTarget() in main.o
"_LLVMInitializeX86TargetMC", referenced from:
llvm::InitializeNativeTarget() in main.o
我发现这些都是在这个头文件/usr/local/include/llvm/Config/config.h中定义的
/* LLVM name for the native Target init function, if available */
#define LLVM_NATIVE_TARGET LLVMInitializeX86Target
/* LLVM name for the native TargetInfo init function, if available */
#define LLVM_NATIVE_TARGETINFO LLVMInitializeX86TargetInfo
/* LLVM name for the native target MC init function, if available */
#define LLVM_NATIVE_TARGETMC LLVMInitializeX86TargetMC
我正在使用g++ 编译器构建它,并在使用llvm-g++ 编译器编译时出错。有谁知道问题是什么?我的 Mac 上是否未正确安装 LLVM?
~/Personal> llvm-g++ --version
dyld: Library not loaded: /usr/lib/libltdl.3.dylib
Referenced from: /usr/local/bin/../../..//usr/local/llvm-gcc-install/bin/i686-apple-darwin8-g++-4.0.1
Reason: image not found
编辑:
我还安装了 Xcode Beta 6,所以不确定这是否会影响 llvm-g++ 和使用 OS X Yosemite。
【问题讨论】: