Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

/usr/bin/ld: CMakeFiles/kcov.dir/engines/system-mode-engine.cc.o: undefined reference to symbol 'crc32' #382

Open
zhuofeng6 opened this issue Aug 27, 2022 · 3 comments

Comments

@zhuofeng6
Copy link

zhuofeng6 commented Aug 27, 2022

it is some bug in compiling.

branch:master

[root@localhost kcov]# make
Consolidate compiler generated dependencies of target kcov_sowrapper
[  3%] Built target kcov_sowrapper
Consolidate compiler generated dependencies of target bash_execve_redirector
[  6%] Built target bash_execve_redirector
Consolidate compiler generated dependencies of target bash_tracefd_cloexec
[  8%] Built target bash_tracefd_cloexec
Consolidate compiler generated dependencies of target kcov_system_lib
[ 13%] Built target kcov_system_lib
[ 15%] Generating bash-cloexec-library.cc
[ 16%] Generating bash-helper.cc
[ 17%] Generating bash-redirector-library.cc
[ 18%] Generating html-data-files.cc
[ 20%] Generating kcov-system-library.cc
[ 21%] Generating library.cc
[ 22%] Generating python-helper.cc
[ 24%] Building CXX object src/CMakeFiles/kcov.dir/capabilities.cc.o
[ 25%] Building CXX object src/CMakeFiles/kcov.dir/collector.cc.o
[ 26%] Building CXX object src/CMakeFiles/kcov.dir/configuration.cc.o
[ 27%] Building CXX object src/CMakeFiles/kcov.dir/engine-factory.cc.o
[ 29%] Building CXX object src/CMakeFiles/kcov.dir/engines/bash-engine.cc.o
[ 30%] Building CXX object src/CMakeFiles/kcov.dir/engines/system-mode-engine.cc.o
[ 31%] Building CXX object src/CMakeFiles/kcov.dir/engines/system-mode-file-format.cc.o
[ 32%] Building CXX object src/CMakeFiles/kcov.dir/engines/python-engine.cc.o
[ 34%] Building CXX object src/CMakeFiles/kcov.dir/filter.cc.o
[ 35%] Building CXX object src/CMakeFiles/kcov.dir/gcov.cc.o
[ 36%] Building CXX object src/CMakeFiles/kcov.dir/main.cc.o
[ 37%] Building CXX object src/CMakeFiles/kcov.dir/merge-file-parser.cc.o
[ 39%] Building CXX object src/CMakeFiles/kcov.dir/output-handler.cc.o
[ 40%] Building CXX object src/CMakeFiles/kcov.dir/parsers/dummy-disassembler.cc.o
[ 41%] Building CXX object src/CMakeFiles/kcov.dir/parser-manager.cc.o
[ 43%] Building CXX object src/CMakeFiles/kcov.dir/reporter.cc.o
[ 44%] Building CXX object src/CMakeFiles/kcov.dir/source-file-cache.cc.o
[ 45%] Building CXX object src/CMakeFiles/kcov.dir/utils.cc.o
[ 46%] Building CXX object src/CMakeFiles/kcov.dir/writers/cobertura-writer.cc.o
[ 48%] Building CXX object src/CMakeFiles/kcov.dir/writers/codecov-writer.cc.o
[ 49%] Building CXX object src/CMakeFiles/kcov.dir/writers/json-writer.cc.o
[ 50%] Building CXX object src/CMakeFiles/kcov.dir/writers/coveralls-writer.cc.o
[ 51%] Building CXX object src/CMakeFiles/kcov.dir/writers/html-writer.cc.o
[ 53%] Building CXX object src/CMakeFiles/kcov.dir/writers/sonarqube-xml-writer.cc.o
[ 54%] Building CXX object src/CMakeFiles/kcov.dir/writers/writer-base.cc.o
[ 55%] Building CXX object src/CMakeFiles/kcov.dir/engines/clang-coverage-engine.cc.o
[ 56%] Building CXX object src/CMakeFiles/kcov.dir/engines/ptrace.cc.o
[ 58%] Building CXX object src/CMakeFiles/kcov.dir/engines/ptrace_linux.cc.o
[ 59%] Building CXX object src/CMakeFiles/kcov.dir/engines/kernel-engine.cc.o
[ 60%] Building CXX object src/CMakeFiles/kcov.dir/parsers/elf.cc.o
[ 62%] Building CXX object src/CMakeFiles/kcov.dir/parsers/elf-parser.cc.o
[ 63%] Building CXX object src/CMakeFiles/kcov.dir/parsers/dwarf.cc.o
[ 64%] Building CXX object src/CMakeFiles/kcov.dir/solib-handler.cc.o
[ 65%] Building C object src/CMakeFiles/kcov.dir/solib-parser/phdr_data.c.o
[ 67%] Building CXX object src/CMakeFiles/kcov.dir/system-mode/file-data.cc.o
[ 68%] Building CXX object src/CMakeFiles/kcov.dir/library.cc.o
[ 69%] Building CXX object src/CMakeFiles/kcov.dir/bash-redirector-library.cc.o
[ 70%] Building CXX object src/CMakeFiles/kcov.dir/bash-cloexec-library.cc.o
[ 72%] Building CXX object src/CMakeFiles/kcov.dir/python-helper.cc.o
[ 73%] Building CXX object src/CMakeFiles/kcov.dir/bash-helper.cc.o
[ 74%] Building CXX object src/CMakeFiles/kcov.dir/kcov-system-library.cc.o
[ 75%] Building CXX object src/CMakeFiles/kcov.dir/html-data-files.cc.o
[ 77%] Building C object src/CMakeFiles/kcov.dir/version.c.o
[ 78%] Linking CXX executable kcov
/usr/bin/ld: CMakeFiles/kcov.dir/engines/system-mode-engine.cc.o: undefined reference to symbol 'crc32'
/usr/bin/ld: /usr/lib64/libz.so.1: error adding symbols: DSO missing from command line
collect2: 错误ld 返回 1
make[2]: *** [src/CMakeFiles/kcov.dir/build.make:826src/kcov] 错误 1
make[1]: *** [CMakeFiles/Makefile2:234src/CMakeFiles/kcov.dir/all] 错误 2
@SimonKagstrom
Copy link
Owner

This looks like some issue with libz, i.e., DSO missing from command line.

Googling a bit, perhaps this helps?

https://zhangboyi.gitlab.io/post/2020-09-14-resolve-dso-missing-from-command-line-error/

@zhuofeng6
Copy link
Author

ok, thanks, but i found kcov-40 is ok

@SimonKagstrom
Copy link
Owner

Good to hear that v40 is working! However, I can't see from the git changelog why that would make any difference.

How does the linking step look if you build with verbose mode? I.e., make VERBOSE=1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants