내 시스템과 사용 중인 컴파일러에 대한 정보는 다음과 같습니다.
Linux version 4.9.0-5-amd64 ([email protected]) (gcc version
6.3.0 20170516 (Debian 6.3.0-1
8) ) #1 SMP Debian 4.9.65-3+deb9u2 (2018-01-04)
clang version 5.0.1-svn325091-1~exp1 (branches/release_50)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
libcxx를 사용하여 llvm-6.0.0을 빌드하는 데 문제가 있습니다. 나는 그것들을 모두에서 다운로드했다.llvm 다운로드 페이지거기에 소스 코드를 넣으세요.
llvm-6.0
build
llvm-6.0.0
...(other stuff)
tools
clang
projects
libcxx
libcxxabi
이것은 내가 사용하는 명령입니다:
#!/bin/bash
#References: https://libcxx.llvm.org/docs/BuildingLibcxx.html
cd build
#The option for llvm starts from line 5, for libcxx starts from line 15
cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER=clang-5.0 \
-DCMAKE_CXX_COMPILER=clang++-5.0 \
-DCMAKE_INSTALL_PREFIX=/usr/local/ \
-DLLVM_INSTALL_BINUTILS_SYMLINKS=True \
-DLLVM_INSTALL_CCTOOLS_SYMLINKS=True \
-DLLVM_ENABLE_CXX1Y=True \
-DLLVM_ENABLE_EH=True \
-DLLVM_ENABLE_RTTI=True \
-DLLVM_ENABLE_LTO=Thin \
-DLIBCXX_ENABLE_ASSERTIONS=False \
-DLIBCXX_INSTALL_EXPERIMENTAL_LIBRARY=True \
-DLIBCXX_LIBDIR_SUFFIX=/usr/local/lib \
-DLIBCXX_BENCHMARK_NATIVE_STDLIB="libstdc++"\
-G Unix Makefiles \
..
cmake --build .
cmake는 다음을 제공합니다:
[ 0%] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/ItaniumDemangle.cpp.o
[ 0%] Linking CXX static library ../libLLVMDemangle.a
[ 0%] Built target LLVMDemangle
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/AMDGPUMetadata.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/APFloat.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/APInt.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/APSInt.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ARMBuildAttrs.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ARMAttributeParser.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ARMWinEH.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Allocator.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/BinaryStreamError.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/BinaryStreamReader.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/BinaryStreamRef.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/BinaryStreamWriter.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/BlockFrequency.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/BranchProbability.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/CachePruning.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/circular_raw_ostream.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Chrono.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/COM.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/CodeGenCoverage.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/CommandLine.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Compression.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ConvertUTF.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ConvertUTFWrapper.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/CrashRecoveryContext.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/DataExtractor.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Debug.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/DebugCounter.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/DeltaAlgorithm.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/DAGDeltaAlgorithm.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Error.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ErrorHandling.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/FileUtilities.cpp.o
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/FileOutputBuffer.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/FoldingSet.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/FormattedStream.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/FormatVariadic.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/GlobPattern.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/GraphWriter.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Hashing.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/IntEqClasses.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/IntervalMap.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/JamCRC.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/KnownBits.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/LEB128.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/LineIterator.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Locale.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/LockFileManager.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/LowLevelType.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ManagedStatic.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/MathExtras.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/MemoryBuffer.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/MD5.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/NativeFormatting.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Options.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Parallel.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/PluginLoader.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/PrettyStackTrace.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/RandomNumberGenerator.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Regex.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ScaledNumber.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ScopedPrinter.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SHA1.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SmallPtrSet.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SmallVector.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SourceMgr.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SpecialCaseList.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Statistic.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/StringExtras.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/StringMap.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/StringPool.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/StringSaver.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/StringRef.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SystemUtils.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/TarWriter.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/TargetParser.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ThreadPool.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Timer.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ToolOutputFile.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/TrigramIndex.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Triple.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Twine.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Unicode.cpp.o
[ 1%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/YAMLParser.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/YAMLTraits.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/raw_os_ostream.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/raw_ostream.cpp.o
[ 2%] Building C object lib/Support/CMakeFiles/LLVMSupport.dir/regcomp.c.o
[ 2%] Building C object lib/Support/CMakeFiles/LLVMSupport.dir/regerror.c.o
[ 2%] Building C object lib/Support/CMakeFiles/LLVMSupport.dir/regexec.c.o
[ 2%] Building C object lib/Support/CMakeFiles/LLVMSupport.dir/regfree.c.o
[ 2%] Building C object lib/Support/CMakeFiles/LLVMSupport.dir/regstrlcpy.c.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/xxhash.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Atomic.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/DynamicLibrary.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Errno.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Host.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Memory.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Mutex.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Path.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Process.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Program.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/RWMutex.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Signals.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/TargetRegistry.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ThreadLocal.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Threading.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Valgrind.cpp.o
[ 2%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Watchdog.cpp.o
[ 2%] Linking CXX static library ../libLLVMSupport.a
[ 2%] Built target LLVMSupport
[ 2%] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/Error.cpp.o
[ 2%] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/Main.cpp.o
[ 2%] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/Record.cpp.o
[ 2%] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/SetTheory.cpp.o
[ 2%] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/StringMatcher.cpp.o
[ 2%] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/TableGenBackend.cpp.o
[ 2%] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/TGLexer.cpp.o
[ 2%] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/TGParser.cpp.o
[ 2%] Linking CXX static library ../libLLVMTableGen.a
[ 2%] Built target LLVMTableGen
[ 2%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/AsmMatcherEmitter.cpp.o
[ 2%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/AsmWriterEmitter.cpp.o
[ 2%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/AsmWriterInst.cpp.o
[ 2%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/Attributes.cpp.o
[ 2%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/CallingConvEmitter.cpp.o
[ 2%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/CodeEmitterGen.cpp.o
[ 2%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/CodeGenDAGPatterns.cpp.o
[ 2%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/CodeGenHwModes.cpp.o
[ 2%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/CodeGenInstruction.cpp.o
[ 2%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/CodeGenMapTable.cpp.o
[ 2%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/CodeGenRegisters.cpp.o
[ 2%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/CodeGenSchedule.cpp.o
[ 2%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/CodeGenTarget.cpp.o
[ 2%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/DAGISelEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherGen.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherOpt.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcher.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/DFAPacketizerEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/DisassemblerEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/FastISelEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/FixedLenDecoderEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/GlobalISelEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/InfoByHwMode.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/InstrInfoEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/InstrDocsEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/IntrinsicEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/OptParserEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/PseudoLoweringEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/RegisterBankEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/RegisterInfoEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/SDNodeProperties.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/SearchableTableEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/SubtargetEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/SubtargetFeatureInfo.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/TableGen.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/Types.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/X86DisassemblerTables.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/X86EVEX2VEXTablesEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/X86FoldTablesEmitter.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/X86ModRMFilters.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/X86RecognizableInstr.cpp.o
[ 4%] Building CXX object utils/TableGen/CMakeFiles/obj.llvm-tblgen.dir/CTagsEmitter.cpp.o
[ 4%] Built target obj.llvm-tblgen
[ 4%] Linking CXX executable ../../bin/llvm-tblgen
../../lib/libLLVMSupport.a: error adding symbols: Archive has no index; run ranlib to add one
clang: error: linker command failed with exit code 1 (use -v to see invocation)
utils/TableGen/CMakeFiles/llvm-tblgen.dir/build.make:158: recipe for target 'bin/llvm-tblgen' failed
make[2]: *** [bin/llvm-tblgen] Error 1
CMakeFiles/Makefile2:906: recipe for target 'utils/TableGen/CMakeFiles/llvm-tblgen.dir/all' failed
make[1]: *** [utils/TableGen/CMakeFiles/llvm-tblgen.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2
나는 이 문제를 다음과 같이 해결하려고 노력합니다.
cmake --build . --target clean
빌드된 파일을 삭제하고cmake --build .
다시 실행하는데 사용됩니다 .위에 제공된 지침에 따라 디렉터리를 lib로 변경하고
ranlib libLLVMSupport.a
.
그러나 이들 중 어느 것도 작동하지 않습니다. cmake --build .
다시 실행하면 다음과 같은 결과가 나타납니다.
[ 0%] Built target LLVMDemangle
[ 2%] Built target LLVMSupport
[ 2%] Built target LLVMTableGen
[ 4%] Built target obj.llvm-tblgen
[ 4%] Linking CXX executable ../../bin/llvm-tblgen
../../lib/libLLVMSupport.a: error adding symbols: Archive has no index;
run ranlib to add one
clang: error: linker command failed with exit code 1 (use -v to see
invocation)
utils/TableGen/CMakeFiles/llvm-tblgen.dir/build.make:158: recipe for
target 'bin/llvm-tblgen' failed
make[2]: *** [bin/llvm-tblgen] Error 1
CMakeFiles/Makefile2:906: recipe for target
'utils/TableGen/CMakeFiles/llvm-tblgen.dir/all' failed
make[1]: *** [utils/TableGen/CMakeFiles/llvm-tblgen.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2
방법 2에서 lib/libLLVMSupport.a의 타임스탬프를 확인한 결과 변경되지 않았음을 발견했습니다. 즉, .a에 의해 재생성되지 않았음을 의미합니다 cmake --build .
.
이 문제를 어떻게 해결하나요?
답변1
아카이브를 별도의 파일로 보관하면 어떨까요? 그런 다음 애플리케이션을 필요한 모든 아카이브에 연결합니다.
답변2
마침내 이 오류의 실제 원인을 찾았습니다.
cmake는 gnu gold 링커를 사용하고 libLLVMSupport.a 아카이브는 LLVM IR 코드로 구성되어 있으므로 문제가 발생하는 것은 당연합니다.
ld.lld-5.0으로 전환했더니 모든 오류가 사라졌습니다.