ãããžã§ã¯ã äžéå ããŒãžã§ã³ããªãªãŒã¹ããŸãã 1.11.0ãªãªãŒã¹ã¯ 4æ13 2026æ³ ãããŠãå€ãã®Linuxãããžã§ã¯ããã¯ãã¹ãã©ãããã©ãŒã ãããžã§ã¯ãã§äœ¿çšãããŠãããæãèåãªããªãŒãã«ãã·ã¹ãã ã®1ã€ãéçºãç¶ããŠããã
Mesonã¯åŸæ¥ãé«éæ§ãäºæž¬å¯èœãªãã«ãèšè¿°ãæ¯èŒçã·ã³ãã«ãªDSLãéèŠããŠããŸããããä»åã®æ°ãªãªãŒã¹ã§ã¯ãå®éã®éçºã·ããªãªã«ãããå®çšçãªæ¹åã«éç¹ã眮ããŠããŸãã
Meson 1.11.0 ã®äž»ãªå€æŽç¹:
- Rustã¢ãžã¥ãŒã«ã§workspace()ãä»ããŠãããã¬ãã«ã®Cargo.tomlãè§£æããæ©èœããµããŒãã
- Rust ã«ããã link_argsãadd_project_link_arguments()ãadd_global_link_arguments() ã®ãµããŒãã
- Rustã¢ãžã¥ãŒã«ã«æ°ããcompiler_target()ã¡ãœããã远å ãããŸããã
- Cythonã¯ãã¯ãCãŸãã¯C++ãæç€ºçã«å«ããå¿ èŠã¯ãããŸããã
- ãªã³ã«ãŒã«ãªãã·ã§ã³ãããæ©ãæž¡ãããã®æ°ããåŒæ° link_early_args ã远å ãããŸããã
- meson dist ã -j/--num-processes ã®ãµããŒãã远å ããŸããã
- install_manãšinstall_headersãinstall_tagããµããŒãããããã«ãªããŸããã
- OpenMPéè€æé€ãªã³ã«ãŒåŒæ°;
- QT_DEBUGãšQT_NO_DEBUGã®èªåæ€åºã
- Windowsç°å¢ããã³rc.exeã«é¢ããæ¹åã
æãé¡èãªå€åã®1ã€ã¯ã RustMeson 1.11.0 ã§ã¯ãRust ã¢ãžã¥ãŒã«å ã§ workspace() ãåŒã³åºãéã«ãæäžäœã® Cargo.toml ãè§£æããããã«ãªããŸãããããã«ãããCargo ã¯ãŒã¯ã¹ããŒã¹ã®èšå®ã«åºã¥ããŠäŸåé¢ä¿ãæ©èœãã©ã°ã解決ã§ããŸãããã®å€æŽã«ãããRust ãããžã§ã¯ããšã®é£æºãå€§å¹ ã«æ¹åãããŸããè¿ãããã¯ãŒã¯ã¹ããŒã¹ ãªããžã§ã¯ãã䜿çšããããšã§ãCargo ãµããããžã§ã¯ãã®äŸåé¢ä¿ãæ©èœæ å ±ãååŸã§ããã ãã§ãªããCargo.toml ã«èšè¿°ãããŠããã¿ãŒã²ããããã«ãããããšãå¯èœã§ãã
éçºè ãã¡ã¯ããªã³ã¯æã®Mesonã®RustãµããŒããæ¡åŒµããŸãããããŒãžã§ã³1.11.0以éãadd_project_link_arguments()ãadd_global_link_arguments()ãããã³link_argsãRustã§ãµããŒãããã-Clink-arg=ã©ãããŒã䜿çšããŠrustcçµç±ã§æž¡ãããŸããããã«ãRustã¢ãžã¥ãŒã«ã«ã¯compiler_target()ã¡ãœããã远å ãããã³ã³ãã€ã©ã®ã¿ãŒã²ããããªãã«ãè¿ãããããã«ãªããŸãããããã«ããããããŸã§TARGETãHOSTãªã©ã®Cargo倿°ã«çŽä»ããããŠããã¹ã¯ãªããã®ç§»æ€ãç°¡çŽ åãããŸãã
ããäžã€ã®å®éçãªå€å㯠ã·ãã³ããã§ãèšèªãæç€ºçã«æå¹ã«ããå¿ èŠããªããªããŸããã C ãŸã㯠C + +Mesonã¯ããããã®èšèªã¯Cythonã®å éšå®è£ ã®è©³çްãšããŠã®ã¿è¿œå ããããã®ã§ãããéåžžã®ãã€ãã£ãC/C++ã¿ãŒã²ããã䞊åã§ãã«ãããããã®æ¬æ Œçãªæ¹æ³ãšããŠè¿œå ããããã®ã§ã¯ãªããšèŠå®ããŠããŸãããŠãŒã¶ãŒã«ãšã£ãŠãããã¯äž»ã«ãã«ãââæ§æãç°¡çŽ åãããã®ã§ãã
ä»åã®ãªãªãŒã¹ã«ã¯ããªã³ã¯ãšã€ã³ã¹ããŒã«ããã现ããå¶åŸ¡ã§ããããã«ããããã®æ¹åãå«ãŸããŠããŸãããªã³ã¯ã¿ãŒã²ããã«æ°ããåŒæ° link_early_args ã远å ããããªããžã§ã¯ããã©ã€ãã©ãªã®åã«ãªã³ã«ãŒã«ãªãã·ã§ã³ãæž¡ããããã«ãªããŸãããããã¯ã-u ã --defsym ãªã©ã®é åºãéèŠãªãªãã·ã§ã³ã«ãšã£ãŠç¹ã«åœ¹ç«ã¡ãŸãããŸããinstall_man ãš install_headers ã«ã¯ install_tag ã®ãµããŒãã远å ãããmeson install --tags ãä»ããŠã€ã³ã¹ããŒã«æžã¿ãã¡ã€ã«ãããæè»ã«ç®¡çã§ããããã«ãªããŸããã
ãã«ããµããŒãããŒã«ã®éçºã泚ç®ã«å€ããŸããmeson ã® dist ã³ãã³ãã¯ã-j ãš --num-processes ãªãã·ã§ã³ãåãå ¥ããããã«ãªãããã£ã¹ããªãã¥ãŒã·ã§ã³ããã§ãã¯ããéã®äžŠåããã»ã¹æ°ãå¶åŸ¡ã§ããããã«ãªããŸãããåæã«ãMeson 㯠-fopenmp ã -qopenmp ãªã©ã® OpenMP ãªã³ã«ãŒåŒæ°ã®éè€æé€ãéå§ããQt ã¢ãžã¥ãŒã«ã¯ãã«ãã¢ãŒãã«å¿ã㊠QT_DEBUG ãŸã㯠QT_NO_DEBUG ãã¯ããèªåçã«æ€åºããããã«ãªããqmake ã®åäœã«è¿ã¥ããŸããã
ãã©ãããã©ãŒã åºæã®ã·ããªãªãšã®äºææ§ã«ã倿ŽããããŸããWindows çšã® external_project ã¢ãžã¥ãŒã«ã¯ãMSYS2 ã Cygwin ãªã©ã®ç°å¢ã§æ§æã¹ã¯ãªãããå®è¡ããéã«ããã¹ã Unix 圢åŒã«æ£ãã倿ããããã« cygpath ã䜿çšããããã«ãªããŸãããããã«ãwindows.compile_resources 㯠rc.exe äœ¿çšæã«ããããŒã®å€æŽã远跡ã§ããããã«ãªãããã®ãªãœãŒã¹ã³ã³ãã€ã©ã®é·å¹Žã®å¶éãåé¿ããŸããã
äžè¬çã«ã äžéå1.11.0 ä»åã®ãªãªãŒã¹ã¯ãé©åœçãªãªãªãŒã¹ãšããããã¯ããããæ°å€ãã®éèŠãªãšã³ãžãã¢ãªã³ã°äžã®æ¹åç¹ãå«ããªãªãŒã¹ãšèšããã§ããããä»åã®ãªãªãŒã¹ã®äž»ãªç®çã¯ããã«ãã·ã¹ãã ããç¹ã«RustãCythonãQtããããŠåŸæ¥ã®C/C++ã³ã³ããŒãã³ããçµã¿åããããããªãçŸä»£ã®å€èšèªãããžã§ã¯ãã«ãšã£ãŠãã䜿ãããããã®ã«ããããšã§ããéçºè ã«ãšã£ãŠãããã¯ã€ã³ãã©ã¹ãã©ã¯ãã£ãæžãæããçç±ã§ã¯ãªããé·å¹Žã«ãããæ¥åžžçãªãªãŒãã³ãœãŒã¹ã¹ã¿ãã¯ã®äžéšãšããŠäœ¿ãããŠããããŒã«ã«å¯Ÿãããæ éãã€æçšãªã¢ããããŒããªã®ã§ãã
åºæïŒ linux.org.ru
