เจฎเฉ‡เจธเจจ เจฌเจฟเจฒเจก เจธเจฟเจธเจŸเจฎ เจฐเฉ€เจฒเฉ€เจœเจผ 1.1

Meson 1.1.0 เจฌเจฟเจฒเจก เจธเจฟเจธเจŸเจฎ เจฆเฉ€ เจฐเฉ€เจฒเจฟเจœเจผ เจชเฉเจฐเจ•เจพเจธเจผเจฟเจค เจ•เฉ€เจคเฉ€ เจ—เจˆ เจนเฉˆ, เจœเฉ‹ เจ•เจฟ X.Org เจธเจฐเจตเจฐ, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME เจ…เจคเฉ‡ GTK เจตเจฐเจ—เฉ‡ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸเจพเจ‚ เจจเฉ‚เฉฐ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจตเจฐเจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค เจฎเฉ‡เจธเจจ เจ•เฉ‹เจก เจชเจพเจˆเจฅเจจ เจตเจฟเฉฑเจš เจฒเจฟเจ–เจฟเจ† เจ—เจฟเจ† เจนเฉˆ เจ…เจคเฉ‡ เจ…เจชเจพเจšเฉ‡ 2.0 เจฒเจพเจ‡เจธเฉฐเจธ เจฆเฉ‡ เจ…เจงเฉ€เจจ เจฒเจพเจ‡เจธเฉฐเจธเจธเจผเฉเจฆเจพ เจนเฉˆเฅค

เจฎเฉ‡เจธเจจ เจฆเจพ เจฎเฉเฉฑเจ– เจตเจฟเจ•เจพเจธ เจŸเฉ€เจšเจพ เจธเจนเฉ‚เจฒเจค เจ…เจคเฉ‡ เจตเจฐเจคเฉ‹เจ‚ เจตเจฟเฉฑเจš เจ…เจธเจพเจจเฉ€ เจฆเฉ‡ เจจเจพเจฒ เจ‡เฉฑเจ• เจ‰เฉฑเจš เจฐเจซเจคเจพเจฐ เจ…เจธเฉˆเจ‚เจฌเจฒเฉ€ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจจเจพ เจนเฉˆเฅค เจฎเฉ‡เจ• เจฆเฉ€ เจฌเจœเจพเจ, เจฌเจฟเจฒเจก เจกเจฟเจซเฉŒเจฒเจŸ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจจเจฟเจจเจœเจพ เจŸเฉ‚เจฒเจ•เจฟเฉฑเจŸ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆ, เจชเจฐ เจนเฉ‹เจฐ เจฌเฉˆเจ•เจเจ‚เจก เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจเจ•เจธเจ•เฉ‹เจก เจ…เจคเฉ‡ เจตเจฟเจœเจผเฉ‚เจ…เจฒ เจธเจŸเฉ‚เจกเฉ€เจ“ เจตเฉ€ เจตเจฐเจคเฉ‡ เจœเจพ เจธเจ•เจฆเฉ‡ เจนเจจเฅค เจธเจฟเจธเจŸเจฎ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจฌเจฟเจฒเจŸ-เจ‡เจจ เจฎเจฒเจŸเฉ€-เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ เจจเจฟเจฐเจญเจฐเจคเจพ เจนเฉˆเจ‚เจกเจฒเจฐ เจนเฉˆ เจœเฉ‹ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจกเจฟเจธเจŸเจฐเฉ€เจฌเจฟเจŠเจธเจผเจจ เจฒเจˆ เจชเฉˆเจ•เฉ‡เจœ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจฎเฉ‡เจธเจจ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค เจ…เจธเฉˆเจ‚เจฌเจฒเฉ€ เจจเจฟเจฏเจฎ เจ‡เฉฑเจ• เจธเจฐเจฒ เจกเฉ‹เจฎเฉ‡เจจ-เจตเจฟเจธเจผเฉ‡เจธเจผ เจญเจพเจธเจผเจพ เจตเจฟเฉฑเจš เจธเฉˆเฉฑเจŸ เจ•เฉ€เจคเฉ‡ เจ—เจ เจนเจจ, เจ‰เจน เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจฒเจˆ เจšเฉฐเจ—เฉ€ เจคเจฐเฉเจนเจพเจ‚ เจชเฉœเฉเจนเจจเจฏเฉ‹เจ— เจ…เจคเฉ‡ เจธเจฎเจเจฃ เจฏเฉ‹เจ— เจนเจจ (เจฒเฉ‡เจ–เจ•เจพเจ‚ เจฆเฉ‡ เจตเจฟเจšเจพเจฐ เจฆเฉ‡ เจ…เจจเฉเจธเจพเจฐ, เจกเจฟเจตเฉˆเจฒเจชเจฐ เจจเฉ‚เฉฐ เจจเจฟเจฏเจฎ เจฒเจฟเจ–เจฃ เจตเจฟเฉฑเจš เจ˜เฉฑเจŸเฉ‹ เจ˜เฉฑเจŸ เจธเจฎเจพเจ‚ เจฌเจฟเจคเจพเจ‰เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ)เฅค

เจฒเฉ€เจจเจ•เจธ, เจ‡เจฒเฉ‚เจฎเฉ‹เจธ/เจธเฉ‹เจฒเจพเจฐเจฟเจธ, เจซเฉเจฐเฉ€เจฌเฉ€เจเจธเจกเฉ€, เจจเฉˆเฉฑเจŸเจฌเฉ€เจเจธเจกเฉ€, เจกเจฐเฉˆเจ—เจจเจซเจฒเจพเจˆ เจฌเฉ€เจเจธเจกเฉ€, เจนเจพเจ‡เจ•เฉ‚, เจฎเฉˆเจ•เฉ‹เจธ เจ…เจคเฉ‡ เจตเจฟเฉฐเจกเฉ‹เจœเจผ 'เจคเฉ‡ เจœเฉ€เจธเฉ€เจธเฉ€, เจ•เจฒเฉˆเจ‚เจ—, เจตเจฟเจœเจผเฉ‚เจ…เจฒ เจธเจŸเฉ‚เจกเฉ€เจ“ เจ…เจคเฉ‡ เจนเฉ‹เจฐ เจ•เฉฐเจชเจพเจˆเจฒเจฐ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ เจ•เจฐเจพเจธ-เจ•เฉฐเจชเจพเจˆเจฒเจฟเฉฐเจ— เจ…เจคเฉ‡ เจฌเจฟเจฒเจกเจฟเฉฐเจ— เจธเจฎเจฐเจฅเจฟเจค เจนเฉˆเฅค C, C++, Fortran, Java เจ…เจคเฉ‡ Rust เจธเจฎเฉ‡เจค เจ•เจˆ เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจฟเฉฐเจ— เจญเจพเจธเจผเจพเจตเจพเจ‚ เจตเจฟเฉฑเจš เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจฌเจฃเจพเจ‰เจฃเฉ‡ เจธเฉฐเจญเจต เจนเจจเฅค เจ‡เฉฑเจ• เจ‡เฉฐเจ•เจฐเฉ€เจฎเฉˆเจ‚เจŸเจฒ เจฌเจฟเจฒเจก เจฎเฉ‹เจก เจธเจฎเจฐเจฅเจฟเจค เจนเฉˆ, เจœเจฟเจธ เจตเจฟเฉฑเจš เจธเจฟเจฐเจซ เจ‰เจน เจญเจพเจ— เจœเฉ‹ เจชเจฟเจ›เจฒเฉ‡ เจฌเจฟเจฒเจก เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจ—เจˆเจ†เจ‚ เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจจเจพเจฒ เจธเจฟเฉฑเจงเฉ‡ เจคเฉŒเจฐ 'เจคเฉ‡ เจธเจฌเฉฐเจงเจค เจนเจจ, เจจเฉ‚เฉฐ เจฆเฉเจฌเจพเจฐเจพ เจฌเจฃเจพเจ‡เจ† เจ—เจฟเจ† เจนเฉˆเฅค เจฎเฉ‡เจธเจจ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจฆเฉเจนเจฐเจพเจ‰เจฃ เจฏเฉ‹เจ— เจฌเจฟเจฒเจก เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจ•เฉ€เจคเฉ€ เจœเจพ เจธเจ•เจฆเฉ€ เจนเฉˆ, เจœเจฟเฉฑเจฅเฉ‡ เจฌเจฟเจฒเจก เจจเฉ‚เฉฐ เจตเฉฑเจ–-เจตเฉฑเจ– เจตเจพเจคเจพเจตเจฐเจฃเจพเจ‚ เจตเจฟเฉฑเจš เจšเจฒเจพเจ‰เจฃ เจจเจพเจฒ เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจ‡เฉฑเจ•เฉ‹ เจœเจฟเจนเฉ‡ เจเจ—เจœเจผเฉ€เจ•เจฟเจŠเจŸเฉ‡เจฌเจฒ เจนเฉเฉฐเจฆเฉ‡ เจนเจจเฅค

เจฎเฉ‡เจธเจจ 1.1 เจฆเฉ€เจ†เจ‚ เจฎเฉเฉฑเจ– เจ•เจพเจขเจพเจ‚:

  • เจ‡เฉฑเจ• เจจเจตเฉ€เจ‚ "เจ†เจฌเจœเฉˆเจ•เจŸเจธ:" เจ†เจฐเจ—เฉ‚เจฎเฉˆเจ‚เจŸ เจจเฉ‚เฉฐ declare_dependency() เจตเจฟเฉฑเจš เจ…เฉฐเจฆเจฐเฉ‚เจจเฉ€ เจจเจฟเจฐเจญเจฐเจคเจพเจตเจพเจ‚ เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจเจ—เจœเจผเฉ€เจ•เจฟเจŠเจŸเฉ‡เจฌเจฒเจพเจ‚ เจจเจพเจฒ เจธเจฟเฉฑเจงเจพ เจœเฉ‹เฉœเจจ เจฒเจˆ เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ† เจนเฉˆ เจœเจฟเจจเฉเจนเจพเจ‚ เจจเฉ‚เฉฐ link_who เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจฆเฉ€ เจฒเฉ‹เฉœ เจจเจนเฉ€เจ‚ เจนเฉˆเฅค
  • "meson devenv -dump" เจ•เจฎเจพเจ‚เจก เจตเจฟเฉฑเจš เจนเฉเจฃ เจ‡เฉฑเจ• เจซเจพเจˆเจฒ เจจเฉ‚เฉฐ เจฎเจฟเจ†เจฐเฉ€ เจ†เจ‰เจŸเจชเฉเฉฑเจŸ เจตเจฟเฉฑเจš เจชเฉเจฐเจฟเฉฐเจŸ เจ•เจฐเจจ เจฆเฉ€ เจฌเจœเจพเจ เจตเจพเจคเจพเจตเจฐเจฃ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจฒเจฟเจ–เจฃ เจฒเจˆ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐเจจ เจฆเจพ เจตเจฟเจ•เจฒเจช เจนเฉˆเฅค
  • เจจเจฟเจฐเจญเจฐเจคเจพ() เจซเฉฐเจ•เจธเจผเจจ เจตเจฟเฉฑเจš เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจชเจพเจธ เจ•เจฐเจจ เจฆเฉ€ เจคเจฟเจ†เจฐเฉ€ เจตเจฟเฉฑเจš เจธเจผเจฐเจคเฉ€เจ† เจฌเจฃเจพเจ‰เจฃเจพ เจ†เจธเจพเจจ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ FeatureOption.enable_if เจ…เจคเฉ‡ FeatureOption.disable_if เจขเฉฐเจ— เจธเจผเจพเจฎเจฒ เจ•เฉ€เจคเฉ‡ เจ—เจ เจนเจจเฅค opt = get_option('feature').disable_if(foo เจจเจนเฉ€เจ‚, error_message : 'Foo เจตเฉ€ เจธเจฎเจฐเฉฑเจฅ เจจเจพ เจนเฉ‹เจฃ 'เจคเฉ‡ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพ เจจเฉ‚เฉฐ เจธเจฎเจฐเฉฑเจฅ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ') dep = เจจเจฟเจฐเจญเจฐเจคเจพ ('foo', เจฒเฉ‹เฉœเฉ€เจ‚เจฆเจพ : opt)
  • "เจ†เจฌเจœเฉˆเจ•เจŸเจธ:" เจจเฉ‚เฉฐ เจ†เจฐเจ—เฉ‚เจฎเฉˆเจ‚เจŸ เจตเจœเฉ‹เจ‚ เจคเจฟเจ†เจฐ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจตเจธเจคเฉ‚เจ†เจ‚ เจจเฉ‚เฉฐ เจชเจพเจธ เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจนเฉˆเฅค
  • เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจซเฉฐเจ•เจธเจผเจจ เจนเฉเจฃ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจฒเจพเจ‡เจธเฉฐเจธ เจฌเจพเจฐเฉ‡ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจตเจพเจฒเฉ€เจ†เจ‚ เจซเจพเจˆเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจธเจฅเจพเจชเจฟเจค เจ•เจฐเจจ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจ•เจฐเจฆเจพ เจนเฉˆเฅค
  • "sudo meson install" เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃเจพ เจ‡เจน เจฏเจ•เฉ€เจจเฉ€ เจฌเจฃเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ เจ•เจฟ เจŸเจพเจฐเจ—เฉ‡เจŸ เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎเจพเจ‚ เจฒเจˆ เจฎเฉเฉœ เจจเจฟเจฐเจฎเจพเจฃ เจฆเฉŒเจฐเจพเจจ เจตเจฟเจธเจผเฉ‡เจธเจผ เจ…เจงเจฟเจ•เจพเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจฐเฉ€เจธเฉˆเจŸ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆเฅค
  • "meson install" เจ•เจฎเจพเจ‚เจก เจฐเฉ‚เจŸ เจ…เจงเจฟเจ•เจพเจฐ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฒเจˆ เจ‡เฉฑเจ• เจตเฉฑเจ–เจฐเจพ เจนเฉˆเจ‚เจกเจฒเจฐ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐเจจ เจฆเฉ€ เจฏเฉ‹เจ—เจคเจพ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเฉ€ เจนเฉˆ (เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจคเฉเจธเฉ€เจ‚ เจชเฉ‹เจฒเจ•เจฟเจŸ, เจธเฉ‚เจกเฉ‹, เจ“เจชเจจเจกเฉ‹เจธ เจœเจพเจ‚ $MESON_ROOT_CMD เจšเฉเจฃ เจธเจ•เจฆเฉ‡ เจนเฉ‹)เฅค เจ—เฉˆเจฐ-เจ‡เฉฐเจŸเจฐเจเจ•เจŸเจฟเจต เจฎเฉ‹เจก เจตเจฟเฉฑเจš "meson install" เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃเจพ เจนเฉเจฃ เจตเจฟเจธเจผเฉ‡เจธเจผ เจ…เจงเจฟเจ•เจพเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจตเจงเจพเจ‰เจฃ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจจเจนเฉ€เจ‚ เจ•เจฐเฉ‡เจ—เจพเฅค
  • meson_options.txt เจฆเฉ€ เจฌเจœเจพเจ meson.options เจซเจพเจˆเจฒ เจคเฉ‹เจ‚ เจชเฉœเฉเจนเจจ เจฆเฉ‡ เจตเจฟเจ•เจฒเจชเจพเจ‚ เจฒเจˆ เจธเจฎเจฐเจฅเจจ เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ†เฅค
  • stderr เจจเฉ‚เฉฐ เจ†เจคเจฎ-เจจเจฟเจฐเฉ€เจ–เจฃ เจฆเฉ€ เจชเฉเจฐเจ—เจคเฉ€ เจฌเจพเจฐเฉ‡ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจฆเจพ เจฐเฉ€เจกเจพเจ‡เจฐเฉˆเจ•เจธเจผเจจ เจชเฉเจฐเจฆเจพเจจ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆเฅค
  • เจ‰เจนเจจเจพเจ‚ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸเจพเจ‚ เจจเฉ‚เฉฐ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจ‡เฉฑเจ• เจจเจตเจพเจ‚ "เจ•เฉ‹เจˆ เจจเจนเฉ€เจ‚" เจฌเฉˆเจ•เจเจ‚เจก (--backend=none) เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ† เจนเฉˆ เจœเจฟเจธ เจตเจฟเฉฑเจš เจธเจฟเจฐเจซเจผ เจ‡เฉฐเจธเจŸเจพเจฒเฉ‡เจธเจผเจจ เจจเจฟเจฏเจฎ เจนเจจ เจ…เจคเฉ‡ เจ•เฉ‹เจˆ เจฌเจฟเจฒเจก เจจเจฟเจฏเจฎ เจจเจนเฉ€เจ‚ เจนเจจเฅค
  • เจ‡เฉฑเจ• เจจเจตเฉ€เจ‚ เจจเจฟเจฐเจญเจฐเจคเจพ pybind11 เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ† เจนเฉˆ, เจจเจฟเจฐเจญเจฐเจคเจพ('pybind11') เจจเฉ‚เฉฐ pybind11-config เจธเจ•เฉเจฐเจฟเจชเจŸ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เฉ€เจคเฉ‡ เจฌเจฟเจจเจพเจ‚ pkg-config เจ…เจคเฉ‡ cmake เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค
  • เจ–เจพเจฒเฉ€ เจฌเจฟเจฒเจกเจฟเจฐ เจจเจพเจฒ "--เจฎเฉเฉœ-เจธเฉฐเจฐเจšเจจเจพ" เจ…เจคเฉ‡ "--wipe" เจตเจฟเจ•เจฒเจชเจพเจ‚ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจนเฉˆ (meson setup --reconfigure builddir เจ…เจคเฉ‡ meson setup --wipe builddir )เฅค
  • "meson install --dry-run" เจจเฉ‚เฉฐ เจ•เจพเจฒ เจ•เจฐเจจ เจตเฉ‡เจฒเฉ‡ เจคเฉเจนเจพเจกเฉ€เจ†เจ‚ เจ–เฉเจฆ เจฆเฉ€เจ†เจ‚ เจ‡เฉฐเจธเจŸเจพเจฒเฉ‡เจธเจผเจจ เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเฉ‡เจฃ เจฒเจˆ meson.add_install_script() เจตเจฟเฉฑเจš dry_run เจ•เฉ€เจตเจฐเจก เจฒเจˆ เจธเจฎเจฐเจฅเจจ เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ† เจนเฉˆเฅค

เจธเจฐเฉ‹เจค: opennet.ru

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹