接前一篇文章libvirt零知识学习3 —— libvirt源码编译安装(1)

上一篇文章中讲到执行以下构建命令时出现了错误“ERROR: Problem encountered: YAJL 2 is required to build QEMU driver”,本文解决这个错误并且继续执行构建命令。

$ meson build -Dsystem=true -Ddriver_qemu=enabled

参考这篇博客中的解决方法:ubuntu12.04搭建qemu开发环境 - LIULIANG - C++博客

1)下载yajl源码

从Tags · lloyd/yajl · GitHub中下载源码压缩包yajl-2.1.0.tar.gz,并放到指定路径。

这里顺便提一下YAJL是做什么的:

YAJL (Yet Another JSON Library) 是一个小型事件驱动(SAX风格)的JSON解析器,采用ANSIC编写。

2)解压

$ tar zxvf yajl-2.1.0.tar.gz
yajl-2.1.0/
yajl-2.1.0/.gitignore
yajl-2.1.0/BUILDING
yajl-2.1.0/BUILDING.win32
yajl-2.1.0/CMakeLists.txt
yajl-2.1.0/COPYING
yajl-2.1.0/ChangeLog
yajl-2.1.0/README
yajl-2.1.0/TODO
yajl-2.1.0/YAJLDoc.cmake
yajl-2.1.0/configure
yajl-2.1.0/example/
yajl-2.1.0/example/CMakeLists.txt
yajl-2.1.0/example/README.md
yajl-2.1.0/example/parse_config.c
yajl-2.1.0/example/sample.config
yajl-2.1.0/perf/
yajl-2.1.0/perf/CMakeLists.txt
yajl-2.1.0/perf/documents.c
yajl-2.1.0/perf/documents.h
yajl-2.1.0/perf/perftest.c
yajl-2.1.0/reformatter/
yajl-2.1.0/reformatter/CMakeLists.txt
yajl-2.1.0/reformatter/json_reformat.c
yajl-2.1.0/src/
yajl-2.1.0/src/CMakeLists.txt
yajl-2.1.0/src/YAJL.dxy
yajl-2.1.0/src/api/
yajl-2.1.0/src/api/yajl_common.h
yajl-2.1.0/src/api/yajl_gen.h
yajl-2.1.0/src/api/yajl_parse.h
yajl-2.1.0/src/api/yajl_tree.h
yajl-2.1.0/src/api/yajl_version.h.cmake
yajl-2.1.0/src/yajl
yajl-2.1.0/src/yajl.c
yajl-2.1.0/src/yajl.pc.cmake
yajl-2.1.0/src/yajl_alloc.c
yajl-2.1.0/src/yajl_alloc.h
yajl-2.1.0/src/yajl_buf.c
yajl-2.1.0/src/yajl_buf.h
yajl-2.1.0/src/yajl_bytestack.h
yajl-2.1.0/src/yajl_encode.c
yajl-2.1.0/src/yajl_encode.h
yajl-2.1.0/src/yajl_gen.c
yajl-2.1.0/src/yajl_lex.c
yajl-2.1.0/src/yajl_lex.h
yajl-2.1.0/src/yajl_parser.c
yajl-2.1.0/src/yajl_parser.h
yajl-2.1.0/src/yajl_tree.c
yajl-2.1.0/src/yajl_version.c
yajl-2.1.0/test/
yajl-2.1.0/test/CMakeLists.txt
yajl-2.1.0/test/api/
yajl-2.1.0/test/api/CMakeLists.txt
yajl-2.1.0/test/api/gen-extra-close.c
yajl-2.1.0/test/api/run_tests.sh
yajl-2.1.0/test/parsing/
yajl-2.1.0/test/parsing/CMakeLists.txt
yajl-2.1.0/test/parsing/cases/
yajl-2.1.0/test/parsing/cases/ac_difficult_json_c_test_case_with_comments.json
yajl-2.1.0/test/parsing/cases/ac_difficult_json_c_test_case_with_comments.json.gold
yajl-2.1.0/test/parsing/cases/ac_simple_with_comments.json
yajl-2.1.0/test/parsing/cases/ac_simple_with_comments.json.gold
yajl-2.1.0/test/parsing/cases/ag_false_then_garbage.json
yajl-2.1.0/test/parsing/cases/ag_false_then_garbage.json.gold
yajl-2.1.0/test/parsing/cases/ag_null_then_garbage.json
yajl-2.1.0/test/parsing/cases/ag_null_then_garbage.json.gold
yajl-2.1.0/test/parsing/cases/ag_true_then_garbage.json
yajl-2.1.0/test/parsing/cases/ag_true_then_garbage.json.gold
yajl-2.1.0/test/parsing/cases/am_eof.json
yajl-2.1.0/test/parsing/cases/am_eof.json.gold
yajl-2.1.0/test/parsing/cases/am_integers.json
yajl-2.1.0/test/parsing/cases/am_integers.json.gold
yajl-2.1.0/test/parsing/cases/am_multiple.json
yajl-2.1.0/test/parsing/cases/am_multiple.json.gold
yajl-2.1.0/test/parsing/cases/am_stuff.json
yajl-2.1.0/test/parsing/cases/am_stuff.json.gold
yajl-2.1.0/test/parsing/cases/ap_array_open.json
yajl-2.1.0/test/parsing/cases/ap_array_open.json.gold
yajl-2.1.0/test/parsing/cases/ap_eof_str.json
yajl-2.1.0/test/parsing/cases/ap_eof_str.json.gold
yajl-2.1.0/test/parsing/cases/ap_map_open.json
yajl-2.1.0/test/parsing/cases/ap_map_open.json.gold
yajl-2.1.0/test/parsing/cases/ap_partial_ok.json
yajl-2.1.0/test/parsing/cases/ap_partial_ok.json.gold
yajl-2.1.0/test/parsing/cases/array.json
yajl-2.1.0/test/parsing/cases/array.json.gold
yajl-2.1.0/test/parsing/cases/array_close.json
yajl-2.1.0/test/parsing/cases/array_close.json.gold
yajl-2.1.0/test/parsing/cases/bignums.json
yajl-2.1.0/test/parsing/cases/bignums.json.gold
yajl-2.1.0/test/parsing/cases/bogus_char.json
yajl-2.1.0/test/parsing/cases/bogus_char.json.gold
yajl-2.1.0/test/parsing/cases/codepoints_from_unicode_org.json
yajl-2.1.0/test/parsing/cases/codepoints_from_unicode_org.json.gold
yajl-2.1.0/test/parsing/cases/deep_arrays.json
yajl-2.1.0/test/parsing/cases/deep_arrays.json.gold
yajl-2.1.0/test/parsing/cases/difficult_json_c_test_case.json
yajl-2.1.0/test/parsing/cases/difficult_json_c_test_case.json.gold
yajl-2.1.0/test/parsing/cases/doubles.json
yajl-2.1.0/test/parsing/cases/doubles.json.gold
yajl-2.1.0/test/parsing/cases/doubles_in_array.json
yajl-2.1.0/test/parsing/cases/doubles_in_array.json.gold
yajl-2.1.0/test/parsing/cases/empty_array.json
yajl-2.1.0/test/parsing/cases/empty_array.json.gold
yajl-2.1.0/test/parsing/cases/empty_string.json
yajl-2.1.0/test/parsing/cases/empty_string.json.gold
yajl-2.1.0/test/parsing/cases/escaped_bulgarian.json
yajl-2.1.0/test/parsing/cases/escaped_bulgarian.json.gold
yajl-2.1.0/test/parsing/cases/escaped_foobar.json
yajl-2.1.0/test/parsing/cases/escaped_foobar.json.gold
yajl-2.1.0/test/parsing/cases/false.json
yajl-2.1.0/test/parsing/cases/false.json.gold
yajl-2.1.0/test/parsing/cases/fg_false_then_garbage.json
yajl-2.1.0/test/parsing/cases/fg_false_then_garbage.json.gold
yajl-2.1.0/test/parsing/cases/fg_issue_7.json
yajl-2.1.0/test/parsing/cases/fg_issue_7.json.gold
yajl-2.1.0/test/parsing/cases/fg_null_then_garbage.json
yajl-2.1.0/test/parsing/cases/fg_null_then_garbage.json.gold
yajl-2.1.0/test/parsing/cases/fg_true_then_garbage.json
yajl-2.1.0/test/parsing/cases/fg_true_then_garbage.json.gold
yajl-2.1.0/test/parsing/cases/four_byte_utf8.json
yajl-2.1.0/test/parsing/cases/four_byte_utf8.json.gold
yajl-2.1.0/test/parsing/cases/high_overflow.json
yajl-2.1.0/test/parsing/cases/high_overflow.json.gold
yajl-2.1.0/test/parsing/cases/integers.json
yajl-2.1.0/test/parsing/cases/integers.json.gold
yajl-2.1.0/test/parsing/cases/invalid_utf8.json
yajl-2.1.0/test/parsing/cases/invalid_utf8.json.gold
yajl-2.1.0/test/parsing/cases/isolated_surrogate_marker.json
yajl-2.1.0/test/parsing/cases/isolated_surrogate_marker.json.gold
yajl-2.1.0/test/parsing/cases/leading_zero_in_number.json
yajl-2.1.0/test/parsing/cases/leading_zero_in_number.json.gold
yajl-2.1.0/test/parsing/cases/lonely_minus_sign.json
yajl-2.1.0/test/parsing/cases/lonely_minus_sign.json.gold
yajl-2.1.0/test/parsing/cases/lonely_number.json
yajl-2.1.0/test/parsing/cases/lonely_number.json.gold
yajl-2.1.0/test/parsing/cases/low_overflow.json
yajl-2.1.0/test/parsing/cases/low_overflow.json.gold
yajl-2.1.0/test/parsing/cases/map_close.json
yajl-2.1.0/test/parsing/cases/map_close.json.gold
yajl-2.1.0/test/parsing/cases/missing_integer_after_decimal_point.json
yajl-2.1.0/test/parsing/cases/missing_integer_after_decimal_point.json.gold
yajl-2.1.0/test/parsing/cases/missing_integer_after_exponent.json
yajl-2.1.0/test/parsing/cases/missing_integer_after_exponent.json.gold
yajl-2.1.0/test/parsing/cases/multiple.json
yajl-2.1.0/test/parsing/cases/multiple.json.gold
yajl-2.1.0/test/parsing/cases/non_utf8_char_in_string.json
yajl-2.1.0/test/parsing/cases/non_utf8_char_in_string.json.gold
yajl-2.1.0/test/parsing/cases/np_partial_bad.json
yajl-2.1.0/test/parsing/cases/np_partial_bad.json.gold
yajl-2.1.0/test/parsing/cases/null.json
yajl-2.1.0/test/parsing/cases/null.json.gold
yajl-2.1.0/test/parsing/cases/nulls_and_bools.json
yajl-2.1.0/test/parsing/cases/nulls_and_bools.json.gold
yajl-2.1.0/test/parsing/cases/simple.json
yajl-2.1.0/test/parsing/cases/simple.json.gold
yajl-2.1.0/test/parsing/cases/simple_with_comments.json
yajl-2.1.0/test/parsing/cases/simple_with_comments.json.gold
yajl-2.1.0/test/parsing/cases/string_invalid_escape.json
yajl-2.1.0/test/parsing/cases/string_invalid_escape.json.gold
yajl-2.1.0/test/parsing/cases/string_invalid_hex_char.json
yajl-2.1.0/test/parsing/cases/string_invalid_hex_char.json.gold
yajl-2.1.0/test/parsing/cases/string_with_escapes.json
yajl-2.1.0/test/parsing/cases/string_with_escapes.json.gold
yajl-2.1.0/test/parsing/cases/string_with_invalid_newline.json
yajl-2.1.0/test/parsing/cases/string_with_invalid_newline.json.gold
yajl-2.1.0/test/parsing/cases/three_byte_utf8.json
yajl-2.1.0/test/parsing/cases/three_byte_utf8.json.gold
yajl-2.1.0/test/parsing/cases/true.json
yajl-2.1.0/test/parsing/cases/true.json.gold
yajl-2.1.0/test/parsing/cases/unescaped_bulgarian.json
yajl-2.1.0/test/parsing/cases/unescaped_bulgarian.json.gold
yajl-2.1.0/test/parsing/cases/zerobyte.json
yajl-2.1.0/test/parsing/cases/zerobyte.json.gold
yajl-2.1.0/test/parsing/run_tests.sh
yajl-2.1.0/test/parsing/yajl_test.c
yajl-2.1.0/verify/
yajl-2.1.0/verify/CMakeLists.txt
yajl-2.1.0/verify/json_verify.c

3)进入源码路径

$ cd yajl-2.1.0/$ ls
BUILDING  BUILDING.win32  ChangeLog  CMakeLists.txt  configure  COPYING  example  perf  README  reformatter  src  test  TODO  verify  YAJLDoc.cmake

4)配置

$ ./configure
== removing old build files
== running CMake in build directory
CMake Deprecation Warning at CMakeLists.txt:15 (CMAKE_MINIMUM_REQUIRED):Compatibility with CMake < 2.8.12 will be removed from a future version ofCMake.Update the VERSION argument <min> value or use a ...<max> suffix to tellCMake that the project does not need compatibility with older versions.-- The C compiler identification is GNU 12.1.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Performing Test HAVE_GCC_VISIBILITY
-- Performing Test HAVE_GCC_VISIBILITY - Success
running /usr/bin/cmake -E copy_if_different /home/penghao/libvirt/yajl-2.1.0/src/api/yajl_parse.h /home/penghao/libvirt/yajl-2.1.0/build/src/../yajl-2.1.0/include/yajl  2>&1
running /usr/bin/cmake -E copy_if_different /home/penghao/libvirt/yajl-2.1.0/src/api/yajl_gen.h /home/penghao/libvirt/yajl-2.1.0/build/src/../yajl-2.1.0/include/yajl  2>&1
running /usr/bin/cmake -E copy_if_different /home/penghao/libvirt/yajl-2.1.0/src/api/yajl_common.h /home/penghao/libvirt/yajl-2.1.0/build/src/../yajl-2.1.0/include/yajl  2>&1
running /usr/bin/cmake -E copy_if_different /home/penghao/libvirt/yajl-2.1.0/src/api/yajl_tree.h /home/penghao/libvirt/yajl-2.1.0/build/src/../yajl-2.1.0/include/yajl  2>&1
CMake Warning (dev) at reformatter/CMakeLists.txt:38 (GET_TARGET_PROPERTY):Policy CMP0026 is not set: Disallow use of the LOCATION target property.Run "cmake --help-policy CMP0026" for policy details.  Use the cmake_policycommand to set the policy and suppress this warning.The LOCATION property should not be read from target "json_reformat".  Usethe target name directly with add_custom_command, or use the generatorexpression $<TARGET_FILE>, as appropriate.This warning is for project developers.  Use -Wno-dev to suppress it.CMake Warning (dev) at verify/CMakeLists.txt:32 (GET_TARGET_PROPERTY):Policy CMP0026 is not set: Disallow use of the LOCATION target property.Run "cmake --help-policy CMP0026" for policy details.  Use the cmake_policycommand to set the policy and suppress this warning.The LOCATION property should not be read from target "json_verify".  Usethe target name directly with add_custom_command, or use the generatorexpression $<TARGET_FILE>, as appropriate.This warning is for project developers.  Use -Wno-dev to suppress it.** using doxygen at: /usr/bin/doxygen
** documentation output to: /home/penghao/libvirt/yajl-2.1.0/build/yajl-2.1.0/share/doc/yajl-2.1.0
-- Configuring done
-- Generating done
-- Build files have been written to: /home/penghao/libvirt/yajl-2.1.0/build
== Generating Makefile
== Configured with installation prefix: /usr/local

5)编译

$ make
make[1]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[2]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
[  3%] Building C object src/CMakeFiles/yajl_s.dir/yajl.c.o
[  6%] Building C object src/CMakeFiles/yajl_s.dir/yajl_lex.c.o
[  9%] Building C object src/CMakeFiles/yajl_s.dir/yajl_parser.c.o
/home/penghao/libvirt/yajl-2.1.0/src/yajl_parser.c: 在函数‘yajl_do_parse’中:
/home/penghao/libvirt/yajl-2.1.0/src/yajl_parser.c:334:24: 警告:this statement may fall through [-Wimplicit-fallthrough=]334 |                     if (yajl_bs_current(hand->stateStack) ==|                        ^
/home/penghao/libvirt/yajl-2.1.0/src/yajl_parser.c:347:17: 附注:here347 |                 case yajl_tok_colon:|                 ^~~~
/home/penghao/libvirt/yajl-2.1.0/src/yajl_parser.c:405:24: 警告:this statement may fall through [-Wimplicit-fallthrough=]405 |                     if (yajl_bs_current(hand->stateStack) ==|                        ^
/home/penghao/libvirt/yajl-2.1.0/src/yajl_parser.c:414:17: 附注:here414 |                 default:|                 ^~~~~~~
[ 12%] Building C object src/CMakeFiles/yajl_s.dir/yajl_buf.c.o
[ 15%] Building C object src/CMakeFiles/yajl_s.dir/yajl_encode.c.o
[ 18%] Building C object src/CMakeFiles/yajl_s.dir/yajl_gen.c.o
[ 21%] Building C object src/CMakeFiles/yajl_s.dir/yajl_alloc.c.o
[ 24%] Building C object src/CMakeFiles/yajl_s.dir/yajl_tree.c.o
[ 27%] Building C object src/CMakeFiles/yajl_s.dir/yajl_version.c.o
[ 30%] Linking C static library ../yajl-2.1.0/lib/libyajl_s.a
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 30%] Built target yajl_s
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 33%] Building C object src/CMakeFiles/yajl.dir/yajl.c.o
[ 36%] Building C object src/CMakeFiles/yajl.dir/yajl_lex.c.o
[ 39%] Building C object src/CMakeFiles/yajl.dir/yajl_parser.c.o
/home/penghao/libvirt/yajl-2.1.0/src/yajl_parser.c: 在函数‘yajl_do_parse’中:
/home/penghao/libvirt/yajl-2.1.0/src/yajl_parser.c:334:24: 警告:this statement may fall through [-Wimplicit-fallthrough=]334 |                     if (yajl_bs_current(hand->stateStack) ==|                        ^
/home/penghao/libvirt/yajl-2.1.0/src/yajl_parser.c:347:17: 附注:here347 |                 case yajl_tok_colon:|                 ^~~~
/home/penghao/libvirt/yajl-2.1.0/src/yajl_parser.c:405:24: 警告:this statement may fall through [-Wimplicit-fallthrough=]405 |                     if (yajl_bs_current(hand->stateStack) ==|                        ^
/home/penghao/libvirt/yajl-2.1.0/src/yajl_parser.c:414:17: 附注:here414 |                 default:|                 ^~~~~~~
[ 42%] Building C object src/CMakeFiles/yajl.dir/yajl_buf.c.o
[ 45%] Building C object src/CMakeFiles/yajl.dir/yajl_encode.c.o
[ 48%] Building C object src/CMakeFiles/yajl.dir/yajl_gen.c.o
[ 51%] Building C object src/CMakeFiles/yajl.dir/yajl_alloc.c.o
[ 54%] Building C object src/CMakeFiles/yajl.dir/yajl_tree.c.o
[ 57%] Building C object src/CMakeFiles/yajl.dir/yajl_version.c.o
[ 60%] Linking C shared library ../yajl-2.1.0/lib/libyajl.so
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 60%] Built target yajl
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 63%] Building C object test/parsing/CMakeFiles/yajl_test.dir/yajl_test.c.o
[ 66%] Linking C executable yajl_test
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 66%] Built target yajl_test
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 69%] Building C object test/api/CMakeFiles/gen-extra-close.dir/gen-extra-close.c.o
[ 72%] Linking C executable gen-extra-close
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 72%] Built target gen-extra-close
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 75%] Building C object reformatter/CMakeFiles/json_reformat.dir/json_reformat.c.o
[ 78%] Linking C executable json_reformat
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 78%] Built target json_reformat
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 81%] Building C object verify/CMakeFiles/json_verify.dir/json_verify.c.o
[ 84%] Linking C executable json_verify
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 84%] Built target json_verify
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 87%] Building C object example/CMakeFiles/parse_config.dir/parse_config.c.o
[ 90%] Linking C executable parse_config
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 90%] Built target parse_config
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 93%] Building C object perf/CMakeFiles/perftest.dir/perftest.c.o
[ 96%] Building C object perf/CMakeFiles/perftest.dir/documents.c.o
[100%] Linking C executable perftest
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[100%] Built target perftest
make[2]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[1]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[1]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[2]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[4]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[4]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[4]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
warning: Tag 'SHOW_DIRECTORIES' at line 393 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: Tag 'COLS_IN_ALPHA_INDEX' at line 637 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: Tag 'HTML_ALIGN_MEMBERS' at line 692 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: Tag 'XML_SCHEMA' at line 924 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: Tag 'XML_DTD' at line 930 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: Tag 'PERL_PATH' at line 1091 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: Tag 'CLASS_DIAGRAMS' at line 1104 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: Tag 'MSCGEN_PATH' at line 1112 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: argument 'a4wide' for option PAPER_TYPE is not a valid enum value
Using the default: a4!
make[4]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
Built target doc
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[2]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[1]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[1]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[2]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[4]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[4]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[4]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
using test binary: /home/penghao/libvirt/yajl-2.1.0/build/test/parsing/yajl_testtest (ac_difficult_json_c_test_case_with_comments): SUCCESStest (ac_simple_with_comments): SUCCESStest (ag_false_then_garbage): SUCCESStest (ag_null_then_garbage): SUCCESStest (ag_true_then_garbage): SUCCESStest (am_eof): SUCCESStest (am_integers): SUCCESStest (am_multiple): SUCCESStest (am_stuff): SUCCESStest (ap_array_open): SUCCESStest (ap_eof_str): SUCCESStest (ap_map_open): SUCCESStest (ap_partial_ok): SUCCESStest (array_close): SUCCESStest (array): SUCCESStest (bignums): SUCCESStest (bogus_char): SUCCESStest (codepoints_from_unicode_org): SUCCESStest (deep_arrays): SUCCESStest (difficult_json_c_test_case): SUCCESStest (doubles_in_array): SUCCESStest (doubles): SUCCESStest (empty_array): SUCCESStest (empty_string): SUCCESStest (escaped_bulgarian): SUCCESStest (escaped_foobar): SUCCESStest (false): SUCCESStest (fg_false_then_garbage): SUCCESStest (fg_issue_7): SUCCESStest (fg_null_then_garbage): SUCCESStest (fg_true_then_garbage): SUCCESStest (four_byte_utf8): SUCCESStest (high_overflow): SUCCESStest (integers): SUCCESStest (invalid_utf8): SUCCESStest (isolated_surrogate_marker): SUCCESStest (leading_zero_in_number): SUCCESStest (lonely_minus_sign): SUCCESStest (lonely_number): SUCCESStest (low_overflow): SUCCESStest (map_close): SUCCESStest (missing_integer_after_decimal_point): SUCCESStest (missing_integer_after_exponent): SUCCESStest (multiple): SUCCESStest (non_utf8_char_in_string): SUCCESStest (np_partial_bad): SUCCESStest (null): SUCCESStest (nulls_and_bools): SUCCESStest (simple): SUCCESStest (simple_with_comments): SUCCESStest (string_invalid_escape): SUCCESStest (string_invalid_hex_char): SUCCESStest (string_with_escapes): SUCCESStest (string_with_invalid_newline): SUCCESStest (three_byte_utf8): SUCCESStest (true): SUCCESStest (unescaped_bulgarian): SUCCESStest (zerobyte): SUCCESS
58/58 tests successful
make[4]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
Built target test
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[2]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[1]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[1]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[2]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[4]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[4]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[4]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
Running api tests:test(gen-extra-close): SUCCESS
1/1 tests successful
make[4]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
Built target test-api
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[2]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[1]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”

这一步倒是没出现参考博客中提到的缺少device-mapper-devel问题,应该是我这里的系统已经安装好了。

6)安装

$ sudo make install
make[1]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[2]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
Consolidate compiler generated dependencies of target yajl_s
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 30%] Built target yajl_s
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
Consolidate compiler generated dependencies of target yajl
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 60%] Built target yajl
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
Consolidate compiler generated dependencies of target yajl_test
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 66%] Built target yajl_test
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
Consolidate compiler generated dependencies of target gen-extra-close
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 72%] Built target gen-extra-close
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
Consolidate compiler generated dependencies of target json_reformat
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 78%] Built target json_reformat
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
Consolidate compiler generated dependencies of target json_verify
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 84%] Built target json_verify
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
Consolidate compiler generated dependencies of target parse_config
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 90%] Built target parse_config
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
Consolidate compiler generated dependencies of target perftest
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[100%] Built target perftest
make[2]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[1]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[1]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[2]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[4]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[4]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[4]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
warning: Tag 'SHOW_DIRECTORIES' at line 393 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: Tag 'COLS_IN_ALPHA_INDEX' at line 637 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: Tag 'HTML_ALIGN_MEMBERS' at line 692 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: Tag 'XML_SCHEMA' at line 924 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: Tag 'XML_DTD' at line 930 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: Tag 'PERL_PATH' at line 1091 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: Tag 'CLASS_DIAGRAMS' at line 1104 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: Tag 'MSCGEN_PATH' at line 1112 of file 'YAJL.dxy' has become obsolete.To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
warning: argument 'a4wide' for option PAPER_TYPE is not a valid enum value
Using the default: a4!
make[4]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
Built target doc
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[2]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[1]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[1]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[2]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 30%] Built target yajl_s
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 60%] Built target yajl
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 66%] Built target yajl_test
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 72%] Built target gen-extra-close
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 78%] Built target json_reformat
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 84%] Built target json_verify
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[ 90%] Built target parse_config
make[3]: 进入目录“/home/penghao/libvirt/yajl-2.1.0/build”
make[3]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
[100%] Built target perftest
make[2]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/lib/libyajl.so.2.1.0
-- Installing: /usr/local/lib/libyajl.so.2
-- Installing: /usr/local/lib/libyajl.so
-- Installing: /usr/local/lib/libyajl_s.a
-- Installing: /usr/local/include/yajl/yajl_parse.h
-- Installing: /usr/local/include/yajl/yajl_gen.h
-- Installing: /usr/local/include/yajl/yajl_common.h
-- Installing: /usr/local/include/yajl/yajl_tree.h
-- Installing: /usr/local/include/yajl/yajl_version.h
-- Installing: /usr/local/share/pkgconfig/yajl.pc
-- Installing: /usr/local/bin/json_reformat
-- Set runtime path of "/usr/local/bin/json_reformat" to ""
-- Installing: /usr/local/bin/json_verify
-- Set runtime path of "/usr/local/bin/json_verify" to ""
make[1]: 离开目录“/home/penghao/libvirt/yajl-2.1.0/build”

安装了YAJL包之后,恢复执行构建命令命令及结果如下:

$ meson build -Dsystem=true -Ddriver_qemu=enabled
The Meson build system
Version: 0.62.2
Source dir: /home/penghao/libvirt/libvirt-8.10.0
Build dir: /home/penghao/libvirt/libvirt-8.10.0/build
Build type: native build
Project name: libvirt
Project version: 8.10.0
C compiler for the host machine: cc (gcc 12.1.0 "cc (GCC) 12.1.0")
C linker for the host machine: cc ld.bfd 2.38
Host machine cpu family: x86_64
Host machine cpu: x86_64
Configuring configmake.h using configuration
Checking for size of "ptrdiff_t" : 8
Checking for size of "size_t" : 8
Compiler for C supports arguments -fasynchronous-unwind-tables: YES
Compiler for C supports arguments -fexceptions: YES
Compiler for C supports arguments -fipa-pure-const: YES
Compiler for C supports arguments -fno-common: YES
Compiler for C supports arguments -Wabsolute-value: YES
Compiler for C supports arguments -Waddress: YES
Compiler for C supports arguments -Waddress-of-packed-member: YES
Compiler for C supports arguments -Waggressive-loop-optimizations: YES
Compiler for C supports arguments -Walloc-size-larger-than=9223372036854775807: YES
Compiler for C supports arguments -Walloca: YES
Compiler for C supports arguments -Warray-bounds=2: YES
Compiler for C supports arguments -Wattribute-alias=2: YES
Compiler for C supports arguments -Wattribute-warning: YES
Compiler for C supports arguments -Wattributes: YES
Compiler for C supports arguments -Wbool-compare: YES
Compiler for C supports arguments -Wbool-operation: YES
Compiler for C supports arguments -Wbuiltin-declaration-mismatch: YES
Compiler for C supports arguments -Wbuiltin-macro-redefined: YES
Compiler for C supports arguments -Wcannot-profile: YES
Compiler for C supports arguments -Wcast-align: YES
Compiler for C supports arguments -Wcast-align=strict: YES
Compiler for C supports arguments -Wno-cast-function-type: YES
Compiler for C supports arguments -Wchar-subscripts: YES
Compiler for C supports arguments -Wclobbered: YES
Compiler for C supports arguments -Wcomment: YES
Compiler for C supports arguments -Wcomments: YES
Compiler for C supports arguments -Wcoverage-mismatch: YES
Compiler for C supports arguments -Wcpp: YES
Compiler for C supports arguments -Wdangling-else: YES
Compiler for C supports arguments -Wdate-time: YES
Compiler for C supports arguments -Wdeclaration-after-statement: YES
Compiler for C supports arguments -Wdeprecated-declarations: YES
Compiler for C supports arguments -Wdesignated-init: YES
Compiler for C supports arguments -Wdiscarded-array-qualifiers: YES
Compiler for C supports arguments -Wdiscarded-qualifiers: YES
Compiler for C supports arguments -Wdiv-by-zero: YES
Compiler for C supports arguments -Wduplicated-cond: YES
Compiler for C supports arguments -Wduplicate-decl-specifier: YES
Compiler for C supports arguments -Wempty-body: YES
Compiler for C supports arguments -Wendif-labels: YES
Compiler for C supports arguments -Wexpansion-to-defined: YES
Compiler for C supports arguments -Wformat-contains-nul: YES
Compiler for C supports arguments -Wformat-extra-args: YES
Compiler for C supports arguments -Wno-format-nonliteral: YES
Compiler for C supports arguments -Wformat-overflow=2: YES
Compiler for C supports arguments -Wformat-security: YES
Compiler for C supports arguments -Wno-format-truncation: YES
Compiler for C supports arguments -Wformat-y2k: YES
Compiler for C supports arguments -Wformat-zero-length: YES
Compiler for C supports arguments -Wframe-address: YES
Compiler for C supports arguments -Wframe-larger-than=4096: YES
Compiler for C supports arguments -Wfree-nonheap-object: YES
Compiler for C supports arguments -Whsa: YES
Compiler for C supports arguments -Wif-not-aligned: YES
Compiler for C supports arguments -Wignored-attributes: YES
Compiler for C supports arguments -Wignored-qualifiers: YES
Compiler for C supports arguments -Wimplicit: YES
Compiler for C supports arguments -Wimplicit-fallthrough=5: YES
Compiler for C supports arguments -Wimplicit-function-declaration: YES
Compiler for C supports arguments -Wimplicit-int: YES
Compiler for C supports arguments -Wincompatible-pointer-types: YES
Compiler for C supports arguments -Winit-self: YES
Compiler for C supports arguments -Winline: YES
Compiler for C supports arguments -Wint-conversion: YES
Compiler for C supports arguments -Wint-in-bool-context: YES
Compiler for C supports arguments -Wint-to-pointer-cast: YES
Compiler for C supports arguments -Winvalid-memory-model: YES
Compiler for C supports arguments -Winvalid-pch: YES
Compiler for C supports arguments -Wjump-misses-init: YES
Compiler for C supports arguments -Wlogical-not-parentheses: YES
Compiler for C supports arguments -Wlogical-op: YES
Compiler for C supports arguments -Wmain: YES
Compiler for C supports arguments -Wmaybe-uninitialized: YES
Compiler for C supports arguments -Wmemset-elt-size: YES
Compiler for C supports arguments -Wmemset-transposed-args: YES
Compiler for C supports arguments -Wmisleading-indentation: YES
Compiler for C supports arguments -Wmissing-attributes: YES
Compiler for C supports arguments -Wmissing-braces: YES
Compiler for C supports arguments -Wmissing-declarations: YES
Compiler for C supports arguments -Wmissing-field-initializers: YES
Compiler for C supports arguments -Wmissing-include-dirs: YES
Compiler for C supports arguments -Wmissing-parameter-type: YES
Compiler for C supports arguments -Wmissing-profile: YES
Compiler for C supports arguments -Wmissing-prototypes: YES
Compiler for C supports arguments -Wmultichar: YES
Compiler for C supports arguments -Wmultistatement-macros: YES
Compiler for C supports arguments -Wnarrowing: YES
Compiler for C supports arguments -Wnested-externs: YES
Compiler for C supports arguments -Wnonnull: YES
Compiler for C supports arguments -Wnonnull-compare: YES
Compiler for C supports arguments -Wnormalized=nfc: YES
Compiler for C supports arguments -Wnull-dereference: YES
Compiler for C supports arguments -Wodr: YES
Compiler for C supports arguments -Wold-style-declaration: YES
Compiler for C supports arguments -Wold-style-definition: YES
Compiler for C supports arguments -Wopenmp-simd: YES
Compiler for C supports arguments -Woverflow: YES
Compiler for C supports arguments -Woverride-init: YES
Compiler for C supports arguments -Wpacked-bitfield-compat: YES
Compiler for C supports arguments -Wpacked-not-aligned: YES
Compiler for C supports arguments -Wparentheses: YES
Compiler for C supports arguments -Wpointer-arith: YES
Compiler for C supports arguments -Wpointer-compare: YES
Compiler for C supports arguments -Wpointer-sign: YES
Compiler for C supports arguments -Wpointer-to-int-cast: YES
Compiler for C supports arguments -Wpragmas: YES
Compiler for C supports arguments -Wpsabi: YES
Compiler for C supports arguments -Wrestrict: YES
Compiler for C supports arguments -Wreturn-local-addr: YES
Compiler for C supports arguments -Wreturn-type: YES
Compiler for C supports arguments -Wscalar-storage-order: YES
Compiler for C supports arguments -Wsequence-point: YES
Compiler for C supports arguments -Wshadow: YES
Compiler for C supports arguments -Wshift-count-negative: YES
Compiler for C supports arguments -Wshift-count-overflow: YES
Compiler for C supports arguments -Wshift-negative-value: YES
Compiler for C supports arguments -Wshift-overflow=2: YES
Compiler for C supports arguments -Wno-sign-compare: YES
Compiler for C supports arguments -Wsizeof-array-argument: YES
Compiler for C supports arguments -Wsizeof-pointer-div: YES
Compiler for C supports arguments -Wsizeof-pointer-memaccess: YES
Compiler for C supports arguments -Wstrict-aliasing: YES
Compiler for C supports arguments -Wstrict-prototypes: YES
Compiler for C supports arguments -Wstringop-overflow=2: YES
Compiler for C supports arguments -Wstringop-truncation: YES
Compiler for C supports arguments -Wsuggest-attribute=cold: YES
Compiler for C supports arguments -Wno-suggest-attribute=const: YES
Compiler for C supports arguments -Wsuggest-attribute=format: YES
Compiler for C supports arguments -Wsuggest-attribute=noreturn: YES
Compiler for C supports arguments -Wno-suggest-attribute=pure: YES
Compiler for C supports arguments -Wsuggest-final-methods: YES
Compiler for C supports arguments -Wsuggest-final-types: YES
Compiler for C supports arguments -Wswitch: YES
Compiler for C supports arguments -Wswitch-bool: YES
Compiler for C supports arguments -Wswitch-enum: YES
Compiler for C supports arguments -Wswitch-unreachable: YES
Compiler for C supports arguments -Wsync-nand: YES
Compiler for C supports arguments -Wtautological-compare: YES
Compiler for C supports arguments -Wtrampolines: YES
Compiler for C supports arguments -Wtrigraphs: YES
Compiler for C supports arguments -Wtype-limits: YES
Compiler for C supports arguments -Wno-typedef-redefinition: NO
Compiler for C supports arguments -Wuninitialized: YES
Compiler for C supports arguments -Wunknown-pragmas: YES
Compiler for C supports arguments -Wunused: YES
Compiler for C supports arguments -Wunused-but-set-parameter: YES
Compiler for C supports arguments -Wunused-but-set-variable: YES
Compiler for C supports arguments -Wunused-const-variable=2: YES
Compiler for C supports arguments -Wunused-function: YES
Compiler for C supports arguments -Wunused-label: YES
Compiler for C supports arguments -Wunused-local-typedefs: YES
Compiler for C supports arguments -Wunused-parameter: YES
Compiler for C supports arguments -Wunused-result: YES
Compiler for C supports arguments -Wunused-value: YES
Compiler for C supports arguments -Wunused-variable: YES
Compiler for C supports arguments -Wvarargs: YES
Compiler for C supports arguments -Wvariadic-macros: YES
Compiler for C supports arguments -Wvector-operation-performance: YES
Compiler for C supports arguments -Wvla: YES
Compiler for C supports arguments -Wvolatile-register-var: YES
Compiler for C supports arguments -Wwrite-strings: YES
Compiler for C supports arguments -fstack-protector-strong: YES
First supported argument: -fstack-protector-strong
Checking if "-Wdouble-promotion" compiles: YES
Compiler for C supports arguments -Wsuggest-attribute=format: YES (cached)
Compiler for C supports arguments -Wframe-larger-than=262144: YES
Compiler for C supports link arguments -Wl,-z,relro: YES
Compiler for C supports link arguments -Wl,-z,now: YES
Compiler for C supports link arguments -Wl,-z,nodelete: YES
Compiler for C supports link arguments -Wl,-z,defs: YES
Compiler for C supports link arguments -Wl,--no-copy-dt-needed-entries: YES
Compiler for C supports link arguments -Wl,--version-script=/home/penghao/libvirt/libvirt-8.10.0/src/libvirt_qemu.syms: YES
Compiler for C supports link arguments -Wl,-export-dynamic: YES
First supported link argument: -Wl,-export-dynamic
Checking for function "elf_aux_info" : NO
Checking for function "fallocate" : YES
Checking for function "getauxval" : YES
Checking for function "getegid" : YES
Checking for function "geteuid" : YES
Checking for function "getgid" : YES
Checking for function "getifaddrs" : YES
Checking for function "getmntent_r" : YES
Checking for function "getpwuid_r" : YES
Checking for function "getrlimit" : YES
Checking for function "getuid" : YES
Checking for function "getutxid" : YES
Checking for function "if_indextoname" : YES
Checking for function "mmap" : YES
Checking for function "newlocale" : YES
Checking for function "pipe2" : YES
Checking for function "posix_fallocate" : YES
Checking for function "posix_memalign" : YES
Checking for function "prlimit" : YES
Checking for function "sched_setscheduler" : YES
Checking for function "setgroups" : YES
Checking for function "setrlimit" : YES
Checking for function "symlink" : YES
Checking for function "sysctlbyname" : NO
Checking for function "__lxstat" : YES
Checking for function "__lxstat64" : YES
Checking for function "__xstat" : YES
Checking for function "__xstat64" : YES
Checking for function "lstat" : YES
Checking for function "lstat64" : YES
Checking for function "stat" : YES
Checking for function "stat64" : YES
Header <sys/stat.h> has symbol "__lxstat" : NO
Header <sys/stat.h> has symbol "__lxstat64" : NO
Header <sys/stat.h> has symbol "__xstat" : NO
Header <sys/stat.h> has symbol "__xstat64" : NO
Header <sys/stat.h> has symbol "lstat" : YES
Header <sys/stat.h> has symbol "lstat64" : NO
Header <sys/stat.h> has symbol "stat" : YES
Header <sys/stat.h> has symbol "stat64" : NO
Has header "asm/hwcap.h" : NO
Has header "ifaddrs.h" : YES
Has header "libtasn1.h" : YES
Has header "linux/kvm.h" : YES
Has header "linux/magic.h" : YES
Has header "mntent.h" : YES
Has header "net/ethernet.h" : YES
Has header "net/if.h" : YES
Has header "pty.h" : YES
Has header "pwd.h" : YES
Has header "sched.h" : YES
Has header "sys/auxv.h" : YES
Has header "sys/ioctl.h" : YES
Has header "sys/mount.h" : YES
Has header "sys/syscall.h" : YES
Has header "sys/ucred.h" : NO
Has header "syslog.h" : YES
Has header "util.h" : NO
Has header "xlocale.h" : NO
Has header "linux/devlink.h" : YES
Has header "linux/param.h" : YES
Has header "linux/sockios.h" : YES
Has header "linux/if_bridge.h" : YES
Has header "linux/if_tun.h" : YES
Header <endian.h> has symbol "htole64" : YES
Header <linux/ethtool.h> has symbol "ETH_FLAG_TXVLAN" : YES
Header <linux/ethtool.h> has symbol "ETH_FLAG_NTUPLE" : YES
Header <linux/ethtool.h> has symbol "ETH_FLAG_RXHASH" : YES
Header <linux/ethtool.h> has symbol "ETH_FLAG_LRO" : YES
Header <linux/ethtool.h> has symbol "ETHTOOL_GGSO" : YES
Header <linux/ethtool.h> has symbol "ETHTOOL_GGRO" : YES
Header <linux/ethtool.h> has symbol "ETHTOOL_GFLAGS" : YES
Header <linux/ethtool.h> has symbol "ETHTOOL_GFEATURES" : YES
Header <linux/ethtool.h> has symbol "ETHTOOL_SCOALESCE" : YES
Header <linux/ethtool.h> has symbol "ETHTOOL_GCOALESCE" : YES
Header <linux/if_vlan.h> has symbol "GET_VLAN_VID_CMD" : YES
Header <unistd.h> has symbol "SEEK_HOLE" : YES
Header <net/if_dl.h> has symbol "link_addr" : NO
Header <sched.h> has symbol "cpu_set_t" : YES
Header <linux/devlink.h> has symbol "DEVLINK_CMD_ESWITCH_GET" : YES
Header <linux/vhost.h> has symbol "VHOST_VSOCK_SET_GUEST_CID" : YES
Header <linux/bpf.h> has symbol "BPF_PROG_QUERY" : YES
Header <linux/bpf.h> has symbol "BPF_CGROUP_DEVICE" : YES
Header <net/if_bridgevar.h> has symbol "BRDGSFD" : NO
Header <sys/cpuset.h> has symbol "cpuset_getaffinity" : NO
Header <mach/clock.h> has symbol "clock_serv_t" : NO
Checking for type "struct ifreq" : YES
Checking for type "struct sockpeercred" : NO
Checking whether type "struct ifreq" has member "ifr_newname" : YES
Checking whether type "struct ifreq" has member "ifr_ifindex" : YES
Checking whether type "struct ifreq" has member "ifr_index" : NO
Checking whether type "struct ifreq" has member "ifr_hwaddr" : YES
Checking for size of "long" : 8
Program perl found: YES (/usr/bin/perl)
Program python3 found: YES (/usr/bin/python3)
Program xmllint found: YES (/usr/bin/xmllint)
Program xsltproc found: YES (/usr/bin/xsltproc)
Program rpcgen found: YES (/usr/bin/rpcgen)
Program augparse found: NO
Program dmidecode found: YES (/usr/sbin/dmidecode)
Program ebtables found: YES (/usr/sbin/ebtables)
Program flake8 found: NO
Program ip found: YES (/usr/sbin/ip)
Program ip6tables found: YES (/usr/sbin/ip6tables)
Program iptables found: YES (/usr/sbin/iptables)
Program iscsiadm found: NO
Program mdevctl found: NO
Program mm-ctl found: NO
Program modprobe found: YES (/usr/sbin/modprobe)
Program ovs-vsctl found: NO
Program pdwtags found: NO
Program rmmod found: YES (/usr/sbin/rmmod)
Program scrub found: NO
Program tc found: YES (/usr/sbin/tc)
Program udevadm found: YES (/usr/bin/udevadm)
Found pkg-config: /usr/bin/pkg-config (0.29.2)
Run-time dependency libtirpc found: YES 1.3.2
Library acl found: YES
Found CMake: /usr/bin/cmake (3.23.2)
Run-time dependency libapparmor found: NO (tried pkgconfig and cmake)
Library attr found: YES
Run-time dependency audit found: NO (tried pkgconfig and cmake)
Run-time dependency bash-completion found: YES 2.11.0
Run-time dependency blkid found: YES 2.38.0
Run-time dependency libcap-ng found: NO (tried pkgconfig and cmake)
Run-time dependency libcurl found: YES 7.84.0
Run-time dependency devmapper found: YES 1.02.185
Library dl found: YES
Has header "dlfcn.h" : YES
Run-time dependency fuse3 found: NO (tried pkgconfig and cmake)
Run-time dependency fuse found: YES 2.9.9
Run-time dependency glib-2.0 found: YES 2.72.3
Run-time dependency gobject-2.0 found: YES 2.72.3
Run-time dependency gio-unix-2.0 found: YES 2.72.3
Run-time dependency glusterfs-api found: NO (tried pkgconfig and cmake)
Run-time dependency gnutls found: YES 3.7.3
Run-time dependency libiscsi found: NO (tried pkgconfig and cmake)
Run-time dependency libnl-3.0 found: YES 3.5.0
Run-time dependency libnl-route-3.0 found: YES 3.5.0
Run-time dependency libparted found: YES 3.5
pcap-config found: NO need ['>=1.5.0']
Run-time dependency pcap found: NO (tried pkgconfig and config-tool)
Run-time dependency libssh found: NO (tried pkgconfig and cmake)
Run-time dependency libssh2 found: NO (tried pkgconfig and cmake)
Run-time dependency libxml-2.0 found: YES 2.9.14
Library m found: YES
Run-time dependency netcf found: NO (tried pkgconfig and cmake)
Checking for function "gettext" : YES
Has header "libintl.h" : YES
Program xgettext found: YES (/usr/bin/xgettext)
Program msgfmt found: YES (/usr/bin/msgfmt)
Program msgmerge found: YES (/usr/bin/msgmerge)
Library numa found: NO
Run-time dependency openwsman found: NO (tried pkgconfig and cmake)
Run-time dependency parallels-sdk found: NO (tried pkgconfig and cmake)
Run-time dependency pciaccess found: YES 0.16
Library rbd found: NO
Library rados found: NO
Run-time dependency readline found: YES 8.1
Run-time dependency libsanlock_client found: NO (tried pkgconfig and cmake)
Run-time dependency libsasl2 found: NO (tried pkgconfig and cmake)
Run-time dependency libselinux found: NO (tried pkgconfig and cmake)
Run-time dependency threads found: YES
Run-time dependency libudev found: YES 251
Library util found: YES
Run-time dependency wireshark found: NO (tried pkgconfig and cmake)
Run-time dependency yajl found: NO (tried pkgconfig and cmake)
Program pkcheck found: YES (/usr/bin/pkcheck)
Run-time dependency xenlight found: NO (tried pkgconfig and cmake)
Checking if "lxc support" compiles: YES meson.build:1625:6: ERROR: Problem encountered: YAJL 2 is required to build QEMU driver

仍然存在之前的错误。为什么安装了YAJL包,仍然存在之前的错误?放在下一篇文章中进行分析和解决。

libvirt零知识学习4 —— libvirt源码编译安装(2)相关推荐

  1. libvirt零知识学习6 —— libvirt源码编译安装(4)

    接前一篇文章libvirt零知识学习5 -- libvirt源码编译安装(3) 上一篇文章中解决了YAJL包的编译时依赖问题.但是在解决后再次执行meson build时又遇到了新的错误"E ...

  2. libvirt零知识学习3 —— libvirt源码编译安装(1)

    接前一篇文章libvirt零知识学习2 -- libvirt源码下载 上一篇文章中详细介绍了libvirt的源码下载过程,下载了libvirt-8.10.tar.xz并解压.本文在前文的基础上进行源码 ...

  3. 保姆级教程——Ubuntu16.04 Server下深度学习环境搭建:安装CUDA8.0,cuDNN6.0,Bazel0.5.4,源码编译安装TensorFlow1.4.0(GPU版)...

    写在前面 本文叙述了在Ubuntu16.04 Server下安装CUDA8.0,cuDNN6.0以及源码编译安装TensorFlow1.4.0(GPU版)的亲身经历,包括遇到的问题及解决办法,也有一些 ...

  4. postgresql源码学习(一)—— 源码编译安装与gdb调试入门

    一. postgresql源码编译安装 因为只是用来调试的测试环境,把基本的软件装好和库建好就可以,一切从简. 1. 创建用户和目录 mkdir -p /data/postgres/base/ mkd ...

  5. 如何在ARM开发板上从源码编译安装OpenCV和OpenCV contrib

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 本文主要介绍如何在ARM开发板上从源码编译安装OpenCV和OpenCV contrib. OpenC ...

  6. 源码 linux下编译_Linux云服务器软硬链接及源码编译安装python3.8的一些备注

    推荐一个简书作者写的从零开始学习Linux,非常细,授人以鱼不如授人以渔. https://www.jianshu.com/p/54c0e6a1da99 正文:看一下服务器的版本 cat /proc/ ...

  7. LNMP架构环境搭建之PHP、Nginx源码编译安装及其简单配置应用

    LNMP架构中的Mysql见上一篇博文"LNMP架构环境搭建之mysql源码编译安装" 一.PHP简介 PHP(外文名:PHP: Hypertext Preprocessor,中文 ...

  8. mysql5.7.25源码安装_源码编译安装 mysql5.7.25

    以前最烦就是源码编译安装mysql5.7 ,原因无它 - 很麻烦,但最近因学习需要避免不了,主要介绍在centos7 下源码编译安装mysql5.7 . 安装 安装依赖包 yum install -y ...

  9. ssh源码编译安装mysql_总结源码编译安装mysql

    最近在学习源码编译安装LAMP.LNMP时,一直遇到一个难题,就是就是mysql无论怎么源码编译安装,到最后启动服务都提示"Starting MySQL.The server quit wi ...

最新文章

  1. MySQL索引原理及慢查询优化 美团
  2. remap(地址重映射)机制
  3. struts2.3.12+hibernate4.3.11+spring4.2.2整合问题2java.lang.ClassNotFoundException: org.springframework.w
  4. 第一次写blog,哈哈
  5. Node.js与Sails~Model和ORM的持久化
  6. git head指向老版本_Git最全总结
  7. Ubuntu编译内核及grub的一些笔记
  8. 面向对象接口和类的区别
  9. Linux开发环境——RHEL7更换yum源
  10. 联想启天M4880(老机)安装Centos7安装总结
  11. 物联网操作系统的概念和特点
  12. recover 没有捕获异常_Golang学习笔记之错误处理error、panic (抛出错误),recover(捕获错误...
  13. CAD自学笔记21条,零基础学CAD可以看看
  14. 通过 Teardrop 攻击程序学习自制 IP 包及了解包的结构
  15. untiy发布webgl开发记录
  16. golang从channel读数据的各种情况
  17. EXCEL 正则表达式
  18. navicat for mysql新建表_navicat怎么新建表
  19. 使用 advanced installer 为 winform 做自动更新
  20. charles抓包一直返回unkown的解决方法

热门文章

  1. 前端实习生需要到达什么水平?
  2. 使用EventLog Analyzer进行日志取证分析
  3. RH850从0搭建Autosar开发环境【2】- Davinci Configurator配置工程导入DBC与CDD文件
  4. e1000网卡和DMA
  5. java微信公众号开发及源码分享
  6. 小程序日期(日历)时间 选择器组件
  7. Unity关于无法新建项目的可能解决办法
  8. 30岁有哪些方向可以转型?
  9. 交换机的工作原理是什么?
  10. 审批流程设计方案-介绍(一)