Tso tawm ntawm CMake 3.17.0 tsim qhov system

Xa los ntawm tso tawm ib tug ntoo khaub lig-platform qhib tsim tsab ntawv generator Cawv 3.17, uas ua raws li lwm txoj hauv kev Autotools thiab siv hauv cov haujlwm xws li KDE, LLVM/Clang, MySQL, MariaDB, ReactOS thiab Blender. CMake code yog sau rau hauv C ++ thiab muab faib raws li BSD daim ntawv tso cai.

CMake yog qhov tseem ceeb rau kev muab cov lus sau yooj yim, txhais tau hais tias txuas ntxiv ua haujlwm los ntawm cov qauv, tsawg kawg ntawm cov kev vam khom (tsis muaj kev khi rau M4, Perl lossis Python), kev txhawb nqa caching, muaj cov cuab yeej rau kev sib sau ua ke, kev txhawb nqa rau kev tsim kho. cov ntaub ntawv rau ntau yam kev tsim cov tshuab thiab cov tshuab sau ua ke, qhov muaj ctest thiab cpack cov khoom siv rau kev txhais cov ntawv xeem thiab cov pob tsev, cmake-gui utility rau kev sib tham sib teeb tsa tsis.

ntsiab kev txhim kho:

  • Lub tshuab hluav taws xob sib dhos tshiab raws li cov khoom siv Ninja tau ntxiv - "Ninja Multi-Config", uas txawv ntawm lub tshuab hluav taws xob qub hauv lub peev xwm los ua ntau qhov kev sib dhos ib zaug.
  • Nyob rau hauv lub sib dhos tsab ntawv generator rau Visual Studio tshwm sim muaj peev xwm los txhais cov ntaub ntawv uas cuam tshuam nrog txhua qhov kev teeb tsa (ib-config qhov chaw).
  • Lub peev xwm los teeb tsa cov ntsuas meta rau CUDA (β€œcuda_std_03”, β€œcuda_std_14”, thiab lwm yam) tau ntxiv rau cov cuab yeej rau kev teeb tsa cov tsis sib xws (Compile Nta).
  • Ntxiv cov hloov pauv "CMAKE_CUDA_RUNTIME_LIBRARY" thiab "CUDA_RUNTIME_LIBRARY" los xaiv hom tsev qiv ntawv runtime thaum siv CUDA.
  • Ntxiv qhov "FindCUDAToolkit" module los txiav txim siab CUDA cov cuab yeej muaj nyob rau hauv lub kaw lus yam tsis tau ua rau CUDA hom lus.
  • Ntxiv "--debug-find" hais kom ua rau cmake kom tso tawm cov kev kuaj mob uas nyeem tau ntxiv thaum ua haujlwm tshawb nrhiav. Rau cov hom phiaj zoo sib xws, CMAKE_FIND_DEBUG_MODE hloov pauv tau ntxiv.
  • Ntxiv kev txhawb nqa rau kev tshawb nrhiav CURL cov cuab yeej siv cmake-tsim cov ntaub ntawv teeb tsa "CURLConfig.cmake" rau "FindCURL" module. Txhawm rau lov tes taw tus cwj pwm no, CURL_NO_CURL_CMAKE hloov pauv tau muab.
  • FindPython module tau ntxiv lub peev xwm los tshawb nrhiav Python Cheebtsam hauv virtual ib puag ncig tswj hwm siv "conda".
  • Cov khoom siv hluav taws xob ctest tau ntxiv qhov "--no-tests = [yuam kev | tsis quav ntsej]" cov kev xaiv los txheeb xyuas tus cwj pwm hauv qhov tsis muaj kev sim thiab "--rov ua dua" los teeb tsa cov xwm txheej rau kev sim rov ua dua (kom txog thaum dhau, tom qab lub sijhawm ua haujlwm).
  • Cov khoom sib dhos lub hom phiaj INTERFACE_LINK_OPTIONS, INTERFACE_LINK_DIRECTORIES thiab INTERFACE_LINK_DEPENDS tam sim no tau pauv mus rau ntawm cov chaw nyob sab hauv ntawm cov tsev qiv ntawv statically sib sau ua ke.
  • Thaum siv cov cuab yeej MinGW, kev tshawb nrhiav cov ntaub ntawv DLL nrog cov lus txib find_library yog xiam oob qhab los ntawm lub neej ntawd (hloov, lub neej ntawd sim yog import ".dll.a" cov tsev qiv ntawv).
  • Lub logic rau xaiv ninja siv hluav taws xob nyob rau hauv Ninja generator tam sim no tsis nyob ntawm lub npe ntawm cov ntaub ntawv executable - thawj ninja-tsim, ninja lossis samu utility pom nyob rau hauv txoj kev uas tau teev tseg los ntawm PATH ib puag ncig hloov pauv tau siv.
  • Ntxiv rau "-E rm" hais kom ua rau cmake uas tuaj yeem siv los tshem tawm cov ntaub ntawv thiab cov npe es tsis txhob cais "-E tshem tawm" thiab "-E tshem_directory" cov lus txib.

Tau qhov twg los: opennet.ru

Ntxiv ib saib