[cfe-dev] linking error when running libTooling tutorial

Lou Wynn via cfe-dev cfe-dev at lists.llvm.org
Mon Oct 22 04:59:10 PDT 2018


I've already added. This is my CMakeLists.txt:

set(LLVM_LINK_COMPONENTS Support)

add_clang_executable(loop-convert
   LoopConvert.cpp
   )
target_link_libraries(loop-convert
   PRIVATE
   clangTooling
   clangBasic
   clangASTMatchers
   )

Love,
Lou

On 10/22/18 7:18 PM, Kristóf Umann wrote:
> Try adding clangFrontend to target_link_libraries in CMakeLists.txt.
>
> Lou Wynn via cfe-dev <cfe-dev at lists.llvm.org 
> <mailto:cfe-dev at lists.llvm.org>> ezt írta (időpont: 2018. okt. 22., H, 
> 12:14):
>
>     I followed the libTooling tutorial at here:
>     http://clang.llvm.org/docs/LibASTMatchersTutorial.html to write
>     the loop-convert program. When I built it, I got the following
>     error (I used the unofficial monorepo to build clang):
>
>
>     $ ninja loop-convert
>     [1/1] Linking CXX executable bin/loop-convert
>     FAILED: : && /usr/bin/clang++-6.0   -fPIC
>     -fvisibility-inlines-hidden -Werror=date-time
>     -Werror=unguarded-availability-new -std=c++11 -Wall -Wextra
>     -Wno-unused-parameter -Wwrite-strings -Wcast-qual
>     -Wmissing-field-initializers -pedantic -Wno-long-long
>     -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor
>     -Wdelete-non-virtual-dtor -Wstring-conversion -fdiagnostics-color
>     -fno-common -Woverloaded-virtual -Wno-nested-anon-types -g 
>     -fuse-ld=lld-6.0 -Wl,--color-diagnostics
>     -Wl,-allow-shlib-undefined
>     tools/clang/tools/extra/loop-convert/CMakeFiles/loop-convert.dir/LoopConvert.cpp.o
>     -o bin/loop-convert  lib/libLLVMSupport.so.8svn -lpthread
>     lib/libclangTooling.so.8svn lib/libclangBasic.so.8svn
>     lib/libclangASTMatchers.so.8svn -Wl,-rpath,"\$ORIGIN/../lib" && :
>     /usr/bin/ld.lld-6.0: error: undefined symbol:
>     clang::PCHContainerOperations::PCHContainerOperations()
>     >>> referenced by new_allocator.h:120
>     (/usr/bin/../lib/gcc/x86_64-linux-gnu/5.4.0/../../../../include/c++/5.4.0/ext/new_allocator.h:120)
>     >>>
>     tools/clang/tools/extra/loop-convert/CMakeFiles/loop-convert.dir/LoopConvert.cpp.o:(void
>     __gnu_cxx::new_allocator<clang::PCHContainerOperations>::construct<clang::PCHContainerOperations>(clang::PCHContainerOperations*))
>
>     /usr/bin/ld.lld-6.0: error: undefined symbol: vtable for
>     clang::SyntaxOnlyAction
>     >>> referenced by FrontendActions.h:158
>     (/home/lu/work/git-repos/llvm-mono/llvm-project/clang/include/clang/Frontend/FrontendActions.h:158)
>     >>>
>     tools/clang/tools/extra/loop-convert/CMakeFiles/loop-convert.dir/LoopConvert.cpp.o:(clang::SyntaxOnlyAction::SyntaxOnlyAction())
>
>     /usr/bin/ld.lld-6.0: error: undefined symbol:
>     clang::FrontendAction::FrontendAction()
>     >>> referenced by FrontendAction.h:253
>     (/home/lu/work/git-repos/llvm-mono/llvm-project/clang/include/clang/Frontend/FrontendAction.h:253)
>     >>>
>     tools/clang/tools/extra/loop-convert/CMakeFiles/loop-convert.dir/LoopConvert.cpp.o:(clang::ASTFrontendAction::ASTFrontendAction())
>
>     /usr/bin/ld.lld-6.0: error: undefined symbol: vtable for
>     clang::ASTFrontendAction
>     >>> referenced by FrontendAction.h:253
>     (/home/lu/work/git-repos/llvm-mono/llvm-project/clang/include/clang/Frontend/FrontendAction.h:253)
>     >>>
>     tools/clang/tools/extra/loop-convert/CMakeFiles/loop-convert.dir/LoopConvert.cpp.o:(clang::ASTFrontendAction::ASTFrontendAction())
>     clang: error: linker command failed with exit code 1 (use -v to
>     see invocation)
>     ninja: build stopped: subcommand failed.
>
>
>     Can anyone point me to the right direction to fix it?
>
>     Thanks.
>
>     -- 
>     Love,
>     Lou
>
>     _______________________________________________
>     cfe-dev mailing list
>     cfe-dev at lists.llvm.org <mailto:cfe-dev at lists.llvm.org>
>     http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20181022/4025f822/attachment.html>


More information about the cfe-dev mailing list