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

接前一篇文章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 of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake 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_policy
  command to set the policy and suppress this warning.

  The LOCATION property should not be read from target "json_reformat".  Use
  the target name directly with add_custom_command, or use the generator
  expression $<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_policy
  command to set the policy and suppress this warning.

  The LOCATION property should not be read from target "json_verify".  Use
  the target name directly with add_custom_command, or use the generator
  expression $<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: 附注:here
  347 |                 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: 附注:here
  414 |                 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: 附注:here
  347 |                 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: 附注:here
  414 |                 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_test
 test (ac_difficult_json_c_test_case_with_comments): SUCCESS
 test (ac_simple_with_comments): SUCCESS
 test (ag_false_then_garbage): SUCCESS
 test (ag_null_then_garbage): SUCCESS
 test (ag_true_then_garbage): SUCCESS
 test (am_eof): SUCCESS
 test (am_integers): SUCCESS
 test (am_multiple): SUCCESS
 test (am_stuff): SUCCESS
 test (ap_array_open): SUCCESS
 test (ap_eof_str): SUCCESS
 test (ap_map_open): SUCCESS
 test (ap_partial_ok): SUCCESS
 test (array_close): SUCCESS
 test (array): SUCCESS
 test (bignums): SUCCESS
 test (bogus_char): SUCCESS
 test (codepoints_from_unicode_org): SUCCESS
 test (deep_arrays): SUCCESS
 test (difficult_json_c_test_case): SUCCESS
 test (doubles_in_array): SUCCESS
 test (doubles): SUCCESS
 test (empty_array): SUCCESS
 test (empty_string): SUCCESS
 test (escaped_bulgarian): SUCCESS
 test (escaped_foobar): SUCCESS
 test (false): SUCCESS
 test (fg_false_then_garbage): SUCCESS
 test (fg_issue_7): SUCCESS
 test (fg_null_then_garbage): SUCCESS
 test (fg_true_then_garbage): SUCCESS
 test (four_byte_utf8): SUCCESS
 test (high_overflow): SUCCESS
 test (integers): SUCCESS
 test (invalid_utf8): SUCCESS
 test (isolated_surrogate_marker): SUCCESS
 test (leading_zero_in_number): SUCCESS
 test (lonely_minus_sign): SUCCESS
 test (lonely_number): SUCCESS
 test (low_overflow): SUCCESS
 test (map_close): SUCCESS
 test (missing_integer_after_decimal_point): SUCCESS
 test (missing_integer_after_exponent): SUCCESS
 test (multiple): SUCCESS
 test (non_utf8_char_in_string): SUCCESS
 test (np_partial_bad): SUCCESS
 test (null): SUCCESS
 test (nulls_and_bools): SUCCESS
 test (simple): SUCCESS
 test (simple_with_comments): SUCCESS
 test (string_invalid_escape): SUCCESS
 test (string_invalid_hex_char): SUCCESS
 test (string_with_escapes): SUCCESS
 test (string_with_invalid_newline): SUCCESS
 test (three_byte_utf8): SUCCESS
 test (true): SUCCESS
 test (unescaped_bulgarian): SUCCESS
 test (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包,仍然存在之前的错误?放在下一篇文章中进行分析和解决。

猜你喜欢

转载自blog.csdn.net/phmatthaus/article/details/129724202