Compilation error in ArchLinux
mortymacs opened this issue · comments
Hi :)
In the linking step, it can't find clang-related libraries while I already have installed Clang and LLVM both on my system.
$ cmake --build build via △ v3.23.1 took 8s
[ 11%] Building CXX object _deps/fmt-build/CMakeFiles/fmt.dir/src/format.cc.o
[ 22%] Building CXX object _deps/fmt-build/CMakeFiles/fmt.dir/src/os.cc.o
[ 33%] Linking CXX static library libfmt.a
[ 33%] Built target fmt
[ 44%] Building CXX object CMakeFiles/fccf_lib.dir/source/searcher.cpp.o
[ 55%] Building CXX object CMakeFiles/fccf_lib.dir/source/sse2_strstr.cpp.o
[ 66%] Building CXX object CMakeFiles/fccf_lib.dir/source/lexer.cpp.o
[ 77%] Building CXX object CMakeFiles/fccf_lib.dir/source/utf8.cpp.o
[ 77%] Built target fccf_lib
[ 88%] Building CXX object CMakeFiles/fccf_exe.dir/source/main.cpp.o
[100%] Linking CXX executable fccf
/usr/bin/ld: cannot find -lclangTooling: No such file or directory
/usr/bin/ld: cannot find -lclangFrontendTool: No such file or directory
/usr/bin/ld: cannot find -lclangFrontend: No such file or directory
/usr/bin/ld: cannot find -lclangDriver: No such file or directory
/usr/bin/ld: cannot find -lclangSerialization: No such file or directory
/usr/bin/ld: cannot find -lclangCodeGen: No such file or directory
/usr/bin/ld: cannot find -lclangParse: No such file or directory
/usr/bin/ld: cannot find -lclangSema: No such file or directory
/usr/bin/ld: cannot find -lclangStaticAnalyzerFrontend: No such file or directory
/usr/bin/ld: cannot find -lclangStaticAnalyzerCheckers: No such file or directory
/usr/bin/ld: cannot find -lclangStaticAnalyzerCore: No such file or directory
/usr/bin/ld: cannot find -lclangAnalysis: No such file or directory
/usr/bin/ld: cannot find -lclangARCMigrate: No such file or directory
/usr/bin/ld: cannot find -lclangEdit: No such file or directory
/usr/bin/ld: cannot find -lclangAST: No such file or directory
/usr/bin/ld: cannot find -lclangLex: No such file or directory
/usr/bin/ld: cannot find -lclangBasic: No such file or directory
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/fccf_exe.dir/build.make:107: fccf] Error 1
make[1]: *** [CMakeFiles/Makefile2:228: CMakeFiles/fccf_exe.dir/all] Error 2
make: *** [Makefile:156: all] Error 2
The Clang header directory:
ls -l /usr/include/clang
total 104
drwxr-xr-x 6 root root 4096 Apr 1 12:06 Analysis
drwxr-xr-x 2 root root 4096 Apr 1 12:06 APINotes
drwxr-xr-x 2 root root 4096 Apr 1 12:06 ARCMigrate
drwxr-xr-x 2 root root 4096 Apr 1 12:06 AST
drwxr-xr-x 3 root root 4096 Apr 1 12:06 ASTMatchers
drwxr-xr-x 2 root root 4096 Apr 1 12:06 Basic
drwxr-xr-x 2 root root 4096 Apr 1 12:06 CodeGen
drwxr-xr-x 2 root root 4096 Apr 1 12:06 Config
drwxr-xr-x 2 root root 4096 Apr 1 12:06 CrossTU
drwxr-xr-x 2 root root 4096 Apr 1 12:06 DirectoryWatcher
drwxr-xr-x 2 root root 4096 Apr 1 12:06 Driver
drwxr-xr-x 2 root root 4096 Apr 1 12:06 Edit
drwxr-xr-x 2 root root 4096 Apr 1 12:06 Format
drwxr-xr-x 2 root root 4096 Apr 1 12:06 Frontend
drwxr-xr-x 2 root root 4096 Apr 1 12:06 FrontendTool
drwxr-xr-x 2 root root 4096 Apr 1 12:06 Index
drwxr-xr-x 2 root root 4096 Apr 1 12:06 IndexSerialization
drwxr-xr-x 2 root root 4096 Apr 1 12:06 Interpreter
drwxr-xr-x 2 root root 4096 Apr 1 12:06 Lex
drwxr-xr-x 2 root root 4096 Apr 1 12:06 Parse
drwxr-xr-x 4 root root 4096 Apr 1 12:06 Rewrite
drwxr-xr-x 2 root root 4096 Apr 1 12:06 Sema
drwxr-xr-x 2 root root 4096 Apr 1 12:06 Serialization
drwxr-xr-x 5 root root 4096 Apr 1 12:06 StaticAnalyzer
drwxr-xr-x 2 root root 4096 Apr 1 12:06 Testing
drwxr-xr-x 9 root root 4096 Apr 1 12:06 Tooling
I'm using ArchLinux with latest update of all packages.
You need to install LLVM. I mention this here.
The build system is looking for libclang*
that is part of the LLVM library.
/usr/lib/llvm-12$ ls -lart include/
total 72
-rw-r--r-- 1 root root 47137 Apr 15 2021 ompt-multiplex.h
lrwxrwxrwx 1 root root 33 Sep 1 2021 llvm-c -> ../../../include/llvm-c-12/llvm-c
lrwxrwxrwx 1 root root 29 Sep 1 2021 llvm -> ../../../include/llvm-12/llvm
drwxr-xr-x 6 root root 4096 Apr 24 00:26 polly
drwxr-xr-x 28 root root 4096 Apr 24 00:26 clang
drwxr-xr-x 2 root root 4096 Apr 24 00:27 clang-c
drwxr-xr-x 29 root root 4096 Apr 24 00:27 clang-tidy
drwxr-xr-x 7 root root 4096 Apr 24 00:28 ..
drwxr-xr-x 6 root root 4096 Apr 24 00:28 .
/usr/lib/llvm-12$ ls lib/
LLVMPolly.so libLLVMHexagonAsmParser.a libLLVMSparcDisassembler.a libclangFrontendTool.a
LLVMgold.so libLLVMHexagonCodeGen.a libLLVMSparcInfo.a libclangHandleCXX.a
clang libLLVMHexagonDesc.a libLLVMSupport.a libclangHandleLLVM.a
cmake libLLVMHexagonDisassembler.a libLLVMSymbolize.a libclangIncludeFixer.a
libLLVM-12.0.0.so libLLVMHexagonInfo.a libLLVMSystemZAsmParser.a libclangIncludeFixerPlugin.a
libLLVM-12.0.0.so.1 libLLVMIRReader.a libLLVMSystemZCodeGen.a libclangIndex.a
libLLVM-12.so libLLVMInstCombine.a libLLVMSystemZDesc.a libclangIndexSerialization.a
libLLVM-12.so.1 libLLVMInstrumentation.a libLLVMSystemZDisassembler.a libclangLex.a
libLLVM.so libLLVMInterfaceStub.a libLLVMSystemZInfo.a libclangMove.a
libLLVMAArch64AsmParser.a libLLVMInterpreter.a libLLVMTableGen.a libclangParse.a
libLLVMAArch64CodeGen.a libLLVMJITLink.a libLLVMTarget.a libclangQuery.a
libLLVMAArch64Desc.a libLLVMLTO.a libLLVMTextAPI.a libclangReorderFields.a
libLLVMAArch64Disassembler.a libLLVMLanaiAsmParser.a libLLVMTransformUtils.a libclangRewrite.a
libLLVMAArch64Info.a libLLVMLanaiCodeGen.a libLLVMVectorize.a libclangRewriteFrontend.a
libLLVMAArch64Utils.a libLLVMLanaiDesc.a libLLVMWebAssemblyAsmParser.a libclangSema.a
libLLVMAMDGPUAsmParser.a libLLVMLanaiDisassembler.a libLLVMWebAssemblyCodeGen.a libclangSerialization.a
libLLVMAMDGPUCodeGen.a libLLVMLanaiInfo.a libLLVMWebAssemblyDesc.a libclangStaticAnalyzerCheckers.a
libLLVMAMDGPUDesc.a libLLVMLibDriver.a libLLVMWebAssemblyDisassembler.a libclangStaticAnalyzerCore.a
libLLVMAMDGPUDisassembler.a libLLVMLineEditor.a libLLVMWebAssemblyInfo.a libclangStaticAnalyzerFrontend.a
libLLVMAMDGPUInfo.a libLLVMLinker.a libLLVMWindowsManifest.a libclangTesting.a
libLLVMAMDGPUUtils.a libLLVMMC.a libLLVMX86AsmParser.a libclangTidy.a
libLLVMARMAsmParser.a libLLVMMCA.a libLLVMX86CodeGen.a libclangTidyAbseilModule.a
libLLVMARMCodeGen.a libLLVMMCDisassembler.a libLLVMX86Desc.a libclangTidyAlteraModule.a
libLLVMARMDesc.a libLLVMMCJIT.a libLLVMX86Disassembler.a libclangTidyAndroidModule.a
libLLVMARMDisassembler.a libLLVMMCParser.a libLLVMX86Info.a libclangTidyBoostModule.a
libLLVMARMInfo.a libLLVMMIRParser.a libLLVMXCoreCodeGen.a libclangTidyBugproneModule.a
libLLVMARMUtils.a libLLVMMSP430AsmParser.a libLLVMXCoreDesc.a libclangTidyCERTModule.a
libLLVMAVRAsmParser.a libLLVMMSP430CodeGen.a libLLVMXCoreDisassembler.a libclangTidyConcurrencyModule.a
libLLVMAVRCodeGen.a libLLVMMSP430Desc.a libLLVMXCoreInfo.a libclangTidyCppCoreGuidelinesModule.a
libLLVMAVRDesc.a libLLVMMSP430Disassembler.a libLLVMXRay.a libclangTidyDarwinModule.a
libLLVMAVRDisassembler.a libLLVMMSP430Info.a libLLVMipo.a libclangTidyFuchsiaModule.a
libLLVMAVRInfo.a libLLVMMipsAsmParser.a libLTO.so libclangTidyGoogleModule.a
libLLVMAggressiveInstCombine.a libLLVMMipsCodeGen.a libLTO.so.12 libclangTidyHICPPModule.a
libLLVMAnalysis.a libLLVMMipsDesc.a libPolly.a libclangTidyLLVMLibcModule.a
libLLVMAsmParser.a libLLVMMipsDisassembler.a libPollyISL.a libclangTidyLLVMModule.a
libLLVMAsmPrinter.a libLLVMMipsInfo.a libPollyPPCG.a libclangTidyLinuxKernelModule.a
libLLVMBPFAsmParser.a libLLVMNVPTXCodeGen.a libRemarks.so libclangTidyMPIModule.a
libLLVMBPFCodeGen.a libLLVMNVPTXDesc.a libRemarks.so.12 libclangTidyMain.a
libLLVMBPFDesc.a libLLVMNVPTXInfo.a libarcher.so libclangTidyMiscModule.a
libLLVMBPFDisassembler.a libLLVMObjCARCOpts.a libarcher_static.a libclangTidyModernizeModule.a
libLLVMBPFInfo.a libLLVMObject.a libclang-12.0.0.so libclangTidyObjCModule.a
libLLVMBinaryFormat.a libLLVMObjectYAML.a libclang-12.so libclangTidyOpenMPModule.a
libLLVMBitReader.a libLLVMOption.a libclang-12.so.1 libclangTidyPerformanceModule.a
libLLVMBitWriter.a libLLVMOrcJIT.a libclang-cpp.so.12 libclangTidyPlugin.a
libLLVMBitstreamReader.a libLLVMOrcShared.a libclang.so libclangTidyPortabilityModule.a
libLLVMCFGuard.a libLLVMOrcTargetProcess.a libclang.so.1 libclangTidyReadabilityModule.a
libLLVMCodeGen.a libLLVMPasses.a libclangAPINotes.a libclangTidyUtils.a
libLLVMCore.a libLLVMPerfJITEvents.a libclangARCMigrate.a libclangTidyZirconModule.a
libLLVMCoroutines.a libLLVMPowerPCAsmParser.a libclangAST.a libclangTooling.a
libLLVMCoverage.a libLLVMPowerPCCodeGen.a libclangASTMatchers.a libclangToolingASTDiff.a
libLLVMDWARFLinker.a libLLVMPowerPCDesc.a libclangAnalysis.a libclangToolingCore.a
libLLVMDebugInfoCodeView.a libLLVMPowerPCDisassembler.a libclangApplyReplacements.a libclangToolingInclusions.a
libLLVMDebugInfoDWARF.a libLLVMPowerPCInfo.a libclangBasic.a libclangToolingRefactoring.a
libLLVMDebugInfoGSYM.a libLLVMProfileData.a libclangChangeNamespace.a libclangToolingSyntax.a
libLLVMDebugInfoMSF.a libLLVMRISCVAsmParser.a libclangCodeGen.a libclangTransformer.a
libLLVMDebugInfoPDB.a libLLVMRISCVCodeGen.a libclangCrossTU.a libclangdRemoteIndex.a
libLLVMDemangle.a libLLVMRISCVDesc.a libclangDaemon.a libclangdSupport.a
libLLVMDlltoolDriver.a libLLVMRISCVDisassembler.a libclangDaemonTweaks.a libfindAllSymbols.a
libLLVMExecutionEngine.a libLLVMRISCVInfo.a libclangDependencyScanning.a libgomp.so
libLLVMExtensions.a libLLVMRemarks.a libclangDirectoryWatcher.a libiomp5.so
libLLVMFileCheck.a libLLVMRuntimeDyld.a libclangDoc.a libomp-12.so.5
libLLVMFrontendOpenACC.a libLLVMScalarOpts.a libclangDriver.a libomp.so
libLLVMFrontendOpenMP.a libLLVMSelectionDAG.a libclangDynamicASTMatchers.a libomp.so.5
libLLVMFuzzMutate.a libLLVMSparcAsmParser.a libclangEdit.a libomptarget.so
libLLVMGlobalISel.a libLLVMSparcCodeGen.a libclangFormat.a libomptarget.so.12
libLLVMHelloNew.a libLLVMSparcDesc.a libclangFrontend.a
/usr/lib/llvm-12$
Yeah, I already installed those requirements. But they're in /usr/lib/
and not /usr/lib/llvm-12
:
$ ls /usr/lib/libLLVM*
/usr/lib/libLLVM-13.0.1.so /usr/lib/libLLVMLineEditor.a
/usr/lib/libLLVM-13.so /usr/lib/libLLVMLinker.a
/usr/lib/libLLVMAArch64AsmParser.a /usr/lib/libLLVMLTO.a
/usr/lib/libLLVMAArch64CodeGen.a /usr/lib/libLLVMMC.a
/usr/lib/libLLVMAArch64Desc.a /usr/lib/libLLVMMCA.a
/usr/lib/libLLVMAArch64Disassembler.a /usr/lib/libLLVMMCACustomBehaviourAMDGPU.a
/usr/lib/libLLVMAArch64Info.a /usr/lib/libLLVMMCDisassembler.a
/usr/lib/libLLVMAArch64Utils.a /usr/lib/libLLVMMCJIT.a
/usr/lib/libLLVMAggressiveInstCombine.a /usr/lib/libLLVMMCParser.a
/usr/lib/libLLVMAMDGPUAsmParser.a /usr/lib/libLLVMMipsAsmParser.a
/usr/lib/libLLVMAMDGPUCodeGen.a /usr/lib/libLLVMMipsCodeGen.a
/usr/lib/libLLVMAMDGPUDesc.a /usr/lib/libLLVMMipsDesc.a
/usr/lib/libLLVMAMDGPUDisassembler.a /usr/lib/libLLVMMipsDisassembler.a
/usr/lib/libLLVMAMDGPUInfo.a /usr/lib/libLLVMMipsInfo.a
/usr/lib/libLLVMAMDGPUUtils.a /usr/lib/libLLVMMIRParser.a
/usr/lib/libLLVMAnalysis.a /usr/lib/libLLVMMSP430AsmParser.a
/usr/lib/libLLVMARMAsmParser.a /usr/lib/libLLVMMSP430CodeGen.a
/usr/lib/libLLVMARMCodeGen.a /usr/lib/libLLVMMSP430Desc.a
/usr/lib/libLLVMARMDesc.a /usr/lib/libLLVMMSP430Disassembler.a
/usr/lib/libLLVMARMDisassembler.a /usr/lib/libLLVMMSP430Info.a
/usr/lib/libLLVMARMInfo.a /usr/lib/libLLVMNVPTXCodeGen.a
/usr/lib/libLLVMARMUtils.a /usr/lib/libLLVMNVPTXDesc.a
/usr/lib/libLLVMAsmParser.a /usr/lib/libLLVMNVPTXInfo.a
/usr/lib/libLLVMAsmPrinter.a /usr/lib/libLLVMObjCARCOpts.a
/usr/lib/libLLVMAVRAsmParser.a /usr/lib/libLLVMObject.a
/usr/lib/libLLVMAVRCodeGen.a /usr/lib/libLLVMObjectYAML.a
/usr/lib/libLLVMAVRDesc.a /usr/lib/libLLVMOption.a
/usr/lib/libLLVMAVRDisassembler.a /usr/lib/libLLVMOrcJIT.a
/usr/lib/libLLVMAVRInfo.a /usr/lib/libLLVMOrcShared.a
/usr/lib/libLLVMBinaryFormat.a /usr/lib/libLLVMOrcTargetProcess.a
/usr/lib/libLLVMBitReader.a /usr/lib/libLLVMPasses.a
/usr/lib/libLLVMBitstreamReader.a /usr/lib/libLLVMPowerPCAsmParser.a
/usr/lib/libLLVMBitWriter.a /usr/lib/libLLVMPowerPCCodeGen.a
/usr/lib/libLLVMBPFAsmParser.a /usr/lib/libLLVMPowerPCDesc.a
/usr/lib/libLLVMBPFCodeGen.a /usr/lib/libLLVMPowerPCDisassembler.a
/usr/lib/libLLVMBPFDesc.a /usr/lib/libLLVMPowerPCInfo.a
/usr/lib/libLLVMBPFDisassembler.a /usr/lib/libLLVMProfileData.a
/usr/lib/libLLVMBPFInfo.a /usr/lib/libLLVMRemarks.a
/usr/lib/libLLVMCFGuard.a /usr/lib/libLLVMRISCVAsmParser.a
/usr/lib/libLLVMCFIVerify.a /usr/lib/libLLVMRISCVCodeGen.a
/usr/lib/libLLVMCodeGen.a /usr/lib/libLLVMRISCVDesc.a
/usr/lib/libLLVMCore.a /usr/lib/libLLVMRISCVDisassembler.a
/usr/lib/libLLVMCoroutines.a /usr/lib/libLLVMRISCVInfo.a
/usr/lib/libLLVMCoverage.a /usr/lib/libLLVMRuntimeDyld.a
/usr/lib/libLLVMDebugInfoCodeView.a /usr/lib/libLLVMScalarOpts.a
/usr/lib/libLLVMDebugInfoDWARF.a /usr/lib/libLLVMSelectionDAG.a
/usr/lib/libLLVMDebugInfoGSYM.a /usr/lib/libLLVM.so
/usr/lib/libLLVMDebugInfoMSF.a /usr/lib/libLLVMSparcAsmParser.a
/usr/lib/libLLVMDebugInfoPDB.a /usr/lib/libLLVMSparcCodeGen.a
/usr/lib/libLLVMDemangle.a /usr/lib/libLLVMSparcDesc.a
/usr/lib/libLLVMDlltoolDriver.a /usr/lib/libLLVMSparcDisassembler.a
/usr/lib/libLLVMDWARFLinker.a /usr/lib/libLLVMSparcInfo.a
/usr/lib/libLLVMDWP.a /usr/lib/libLLVMSupport.a
/usr/lib/libLLVMExecutionEngine.a /usr/lib/libLLVMSymbolize.a
/usr/lib/libLLVMExegesis.a /usr/lib/libLLVMSystemZAsmParser.a
/usr/lib/libLLVMExegesisAArch64.a /usr/lib/libLLVMSystemZCodeGen.a
/usr/lib/libLLVMExegesisMips.a /usr/lib/libLLVMSystemZDesc.a
/usr/lib/libLLVMExegesisPowerPC.a /usr/lib/libLLVMSystemZDisassembler.a
/usr/lib/libLLVMExegesisX86.a /usr/lib/libLLVMSystemZInfo.a
/usr/lib/libLLVMExtensions.a /usr/lib/libLLVMTableGen.a
/usr/lib/libLLVMFileCheck.a /usr/lib/libLLVMTableGenGlobalISel.a
/usr/lib/libLLVMFrontendOpenACC.a /usr/lib/libLLVMTarget.a
/usr/lib/libLLVMFrontendOpenMP.a /usr/lib/libLLVMTextAPI.a
/usr/lib/libLLVMFuzzMutate.a /usr/lib/libLLVMTransformUtils.a
/usr/lib/libLLVMGlobalISel.a /usr/lib/libLLVMVectorize.a
/usr/lib/libLLVMHexagonAsmParser.a /usr/lib/libLLVMWebAssemblyAsmParser.a
/usr/lib/libLLVMHexagonCodeGen.a /usr/lib/libLLVMWebAssemblyCodeGen.a
/usr/lib/libLLVMHexagonDesc.a /usr/lib/libLLVMWebAssemblyDesc.a
/usr/lib/libLLVMHexagonDisassembler.a /usr/lib/libLLVMWebAssemblyDisassembler.a
/usr/lib/libLLVMHexagonInfo.a /usr/lib/libLLVMWebAssemblyInfo.a
/usr/lib/libLLVMInstCombine.a /usr/lib/libLLVMWebAssemblyUtils.a
/usr/lib/libLLVMInstrumentation.a /usr/lib/libLLVMWindowsManifest.a
/usr/lib/libLLVMInterfaceStub.a /usr/lib/libLLVMX86AsmParser.a
/usr/lib/libLLVMInterpreter.a /usr/lib/libLLVMX86CodeGen.a
/usr/lib/libLLVMipo.a /usr/lib/libLLVMX86Desc.a
/usr/lib/libLLVMIRReader.a /usr/lib/libLLVMX86Disassembler.a
/usr/lib/libLLVMJITLink.a /usr/lib/libLLVMX86Info.a
/usr/lib/libLLVMLanaiAsmParser.a /usr/lib/libLLVMXCoreCodeGen.a
/usr/lib/libLLVMLanaiCodeGen.a /usr/lib/libLLVMXCoreDesc.a
/usr/lib/libLLVMLanaiDesc.a /usr/lib/libLLVMXCoreDisassembler.a
/usr/lib/libLLVMLanaiDisassembler.a /usr/lib/libLLVMXCoreInfo.a
/usr/lib/libLLVMLanaiInfo.a /usr/lib/libLLVMXRay.a
/usr/lib/libLLVMLibDriver.a
I also checked the output of llvm-config
command:
$ llvm-config --libs all
-lLLVM-13
I see your output showing libLLVM*
.
Do you have all the libclang*
libraries? Your build error suggests that these libraries are missing.
I think it should be OK if they are in /usr/lib
. CMake build should be able to find it.
~$ ls /usr/lib/llvm-12/lib/libclang*
/usr/lib/llvm-12/lib/libclang-12.0.0.so /usr/lib/llvm-12/lib/libclangStaticAnalyzerCheckers.a
/usr/lib/llvm-12/lib/libclang-12.so /usr/lib/llvm-12/lib/libclangStaticAnalyzerCore.a
/usr/lib/llvm-12/lib/libclang-12.so.1 /usr/lib/llvm-12/lib/libclangStaticAnalyzerFrontend.a
/usr/lib/llvm-12/lib/libclang-cpp.so.12 /usr/lib/llvm-12/lib/libclangTesting.a
/usr/lib/llvm-12/lib/libclang.so /usr/lib/llvm-12/lib/libclangTidy.a
/usr/lib/llvm-12/lib/libclang.so.1 /usr/lib/llvm-12/lib/libclangTidyAbseilModule.a
/usr/lib/llvm-12/lib/libclangAPINotes.a /usr/lib/llvm-12/lib/libclangTidyAlteraModule.a
/usr/lib/llvm-12/lib/libclangARCMigrate.a /usr/lib/llvm-12/lib/libclangTidyAndroidModule.a
/usr/lib/llvm-12/lib/libclangAST.a /usr/lib/llvm-12/lib/libclangTidyBoostModule.a
/usr/lib/llvm-12/lib/libclangASTMatchers.a /usr/lib/llvm-12/lib/libclangTidyBugproneModule.a
/usr/lib/llvm-12/lib/libclangAnalysis.a /usr/lib/llvm-12/lib/libclangTidyCERTModule.a
/usr/lib/llvm-12/lib/libclangApplyReplacements.a /usr/lib/llvm-12/lib/libclangTidyConcurrencyModule.a
/usr/lib/llvm-12/lib/libclangBasic.a /usr/lib/llvm-12/lib/libclangTidyCppCoreGuidelinesModule.a
/usr/lib/llvm-12/lib/libclangChangeNamespace.a /usr/lib/llvm-12/lib/libclangTidyDarwinModule.a
/usr/lib/llvm-12/lib/libclangCodeGen.a /usr/lib/llvm-12/lib/libclangTidyFuchsiaModule.a
/usr/lib/llvm-12/lib/libclangCrossTU.a /usr/lib/llvm-12/lib/libclangTidyGoogleModule.a
/usr/lib/llvm-12/lib/libclangDaemon.a /usr/lib/llvm-12/lib/libclangTidyHICPPModule.a
/usr/lib/llvm-12/lib/libclangDaemonTweaks.a /usr/lib/llvm-12/lib/libclangTidyLLVMLibcModule.a
/usr/lib/llvm-12/lib/libclangDependencyScanning.a /usr/lib/llvm-12/lib/libclangTidyLLVMModule.a
/usr/lib/llvm-12/lib/libclangDirectoryWatcher.a /usr/lib/llvm-12/lib/libclangTidyLinuxKernelModule.a
/usr/lib/llvm-12/lib/libclangDoc.a /usr/lib/llvm-12/lib/libclangTidyMPIModule.a
/usr/lib/llvm-12/lib/libclangDriver.a /usr/lib/llvm-12/lib/libclangTidyMain.a
/usr/lib/llvm-12/lib/libclangDynamicASTMatchers.a /usr/lib/llvm-12/lib/libclangTidyMiscModule.a
/usr/lib/llvm-12/lib/libclangEdit.a /usr/lib/llvm-12/lib/libclangTidyModernizeModule.a
/usr/lib/llvm-12/lib/libclangFormat.a /usr/lib/llvm-12/lib/libclangTidyObjCModule.a
/usr/lib/llvm-12/lib/libclangFrontend.a /usr/lib/llvm-12/lib/libclangTidyOpenMPModule.a
/usr/lib/llvm-12/lib/libclangFrontendTool.a /usr/lib/llvm-12/lib/libclangTidyPerformanceModule.a
/usr/lib/llvm-12/lib/libclangHandleCXX.a /usr/lib/llvm-12/lib/libclangTidyPlugin.a
/usr/lib/llvm-12/lib/libclangHandleLLVM.a /usr/lib/llvm-12/lib/libclangTidyPortabilityModule.a
/usr/lib/llvm-12/lib/libclangIncludeFixer.a /usr/lib/llvm-12/lib/libclangTidyReadabilityModule.a
/usr/lib/llvm-12/lib/libclangIncludeFixerPlugin.a /usr/lib/llvm-12/lib/libclangTidyUtils.a
/usr/lib/llvm-12/lib/libclangIndex.a /usr/lib/llvm-12/lib/libclangTidyZirconModule.a
/usr/lib/llvm-12/lib/libclangIndexSerialization.a /usr/lib/llvm-12/lib/libclangTooling.a
/usr/lib/llvm-12/lib/libclangLex.a /usr/lib/llvm-12/lib/libclangToolingASTDiff.a
/usr/lib/llvm-12/lib/libclangMove.a /usr/lib/llvm-12/lib/libclangToolingCore.a
/usr/lib/llvm-12/lib/libclangParse.a /usr/lib/llvm-12/lib/libclangToolingInclusions.a
/usr/lib/llvm-12/lib/libclangQuery.a /usr/lib/llvm-12/lib/libclangToolingRefactoring.a
/usr/lib/llvm-12/lib/libclangReorderFields.a /usr/lib/llvm-12/lib/libclangToolingSyntax.a
/usr/lib/llvm-12/lib/libclangRewrite.a /usr/lib/llvm-12/lib/libclangTransformer.a
/usr/lib/llvm-12/lib/libclangRewriteFrontend.a /usr/lib/llvm-12/lib/libclangdRemoteIndex.a
/usr/lib/llvm-12/lib/libclangSema.a /usr/lib/llvm-12/lib/libclangdSupport.a
/usr/lib/llvm-12/lib/libclangSerialization.a
The static libraries are not part of the package clang
in ArchLinux. There are only the shared libraries libclang.so
and libclang-cpp.so
. Linking just against libclang.so
works.
The static libraries are not part of the package
clang
in ArchLinux. There are only the shared librarieslibclang.so
andlibclang-cpp.so
. Linking just againstlibclang.so
works.
So, what you've changed to get it compiled?
I removed all the extra static libraries from the linking configuration.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index fa503f4..25d127a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -132,23 +132,6 @@ target_link_libraries(fccf_exe PRIVATE fccf_lib
fmt::fmt
${LLVM_LIBRARIES}
clang
- clangTooling
- clangFrontendTool
- clangFrontend
- clangDriver
- clangSerialization
- clangCodeGen
- clangParse
- clangSema
- clangStaticAnalyzerFrontend
- clangStaticAnalyzerCheckers
- clangStaticAnalyzerCore
- clangAnalysis
- clangARCMigrate
- clangEdit
- clangAST
- clangLex
- clangBasic
)
# ---- Install rules ----
I've made this update (here 0c8504c) since these are unnecessary in Ubuntu as well.
Thanks @tetzank. Hope it works for you @mortymacs.
Released here: https://github.com/p-ranav/fccf/releases/tag/v0.6.0
Cheers
Thanks!
The AUR package is ready https://aur.archlinux.org/packages/fccf