Compiling_from_sources.md.json 348 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. {
  2. "5f725256eb8c8f7ae18cab0f5a03cf4da9ce3f7cd58320b506c5464cbf3c4f6a": {
  3. "original": "You can also configure the build explicitly with flags and options. To enable feature `FOO` add `-DFOO=1` to the CMake call.\nTo disable it, use `-DFOO=0`. If not explicitly noted, enabling a feature that is not available((such as `WITH_GALERA` on an MS Windows build)) will cause the configuration to fail with an error. Disabling a feature, apart from excluding it from the build, also disables its investigation on the system and disables the downloading/building of any related external libraries.\n\n#### Configuration flags and options",
  4. "translations": {
  5. "chinese": "\u60a8\u4e5f\u53ef\u4ee5\u901a\u8fc7\u6807\u5fd7\u548c\u9009\u9879\u663e\u5f0f\u5730\u914d\u7f6e\u6784\u5efa\u3002\u8981\u542f\u7528\u529f\u80fd `FOO`\uff0c\u8bf7\u5728 CMake \u8c03\u7528\u4e2d\u6dfb\u52a0 `-DFOO=1`\u3002\n\u8981\u7981\u7528\u5b83\uff0c\u8bf7\u4f7f\u7528 `-DFOO=0`\u3002\u5982\u679c\u6ca1\u6709\u660e\u786e\u8bf4\u660e\uff0c\u542f\u7528\u4e00\u4e2a\u4e0d\u53ef\u7528\u7684\u529f\u80fd\uff08\u4f8b\u5982\uff0c\u5728 MS Windows \u6784\u5efa\u4e2d `WITH_GALERA`\uff09\u4f1a\u5bfc\u81f4\u914d\u7f6e\u5931\u8d25\u5e76\u51fa\u73b0\u9519\u8bef\u3002\u7981\u7528\u4e00\u4e2a\u529f\u80fd\u4e0d\u4ec5\u4f1a\u4ece\u6784\u5efa\u4e2d\u6392\u9664\u8be5\u529f\u80fd\uff0c\u8fd8\u4f1a\u7981\u7528\u5bf9\u8be5\u7cfb\u7edf\u7684\u68c0\u67e5\uff0c\u5e76\u7981\u7528\u4efb\u4f55\u76f8\u5173\u5916\u90e8\u5e93\u7684\u4e0b\u8f7d/\u6784\u5efa\u3002 \n\n#### \u914d\u7f6e\u6807\u5fd7\u548c\u9009\u9879",
  6. "russian": "\u0412\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u044f\u0432\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0441\u0431\u043e\u0440\u043a\u0443 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0444\u043b\u0430\u0433\u043e\u0432 \u0438 \u043e\u043f\u0446\u0438\u0439. \u0427\u0442\u043e\u0431\u044b \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044e `FOO`, \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 `-DFOO=1` \u043a \u0432\u044b\u0437\u043e\u0432\u0443 CMake.\n\u0427\u0442\u043e\u0431\u044b \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0435\u0451, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 `-DFOO=0`. \u0415\u0441\u043b\u0438 \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u043e \u044f\u0432\u043d\u043e, \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, `WITH_GALERA` \u0432 \u0441\u0431\u043e\u0440\u043a\u0435 \u0434\u043b\u044f MS Windows), \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u0442 \u043a \u043e\u0448\u0438\u0431\u043a\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438. \u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043f\u043e\u043c\u0438\u043c\u043e \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0435\u0451 \u0438\u0437 \u0441\u0431\u043e\u0440\u043a\u0438, \u0442\u0430\u043a\u0436\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0435\u0451 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443/\u0441\u0431\u043e\u0440\u043a\u0443 \u043b\u044e\u0431\u044b\u0445 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a.\n\n#### \u0424\u043b\u0430\u0433\u0438 \u0438 \u043e\u043f\u0446\u0438\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438"
  7. },
  8. "is_code_or_comment": false,
  9. "model": "deepseek/deepseek-v3.2",
  10. "updated_at": 1766370586
  11. },
  12. "f94dd0d362efa49ea3c310aa02819f7463045bbf133c38a78d0774a56bb950f4": {
  13. "original": "# Compiling Manticore from source\n\nCompiling Manticore Search from sources enables custom build configurations, such as disabling certain features or adding new patches for testing. For example, you may want to compile from sources and disable the embedded ICU in order to use a different version installed on your system that can be upgraded independently of Manticore. This is also useful if you are interested in contributing to the Manticore Search project.\n\n## Building using CI Docker\nTo prepare [official release and development packages](https://repo.manticoresearch.com/), we use Docker and a special building image. This image includes essential tooling and is designed to be used with external sysroots, so one container can build packages for all operating systems. You can build the image using the [Dockerfile](https://github.com/manticoresoftware/manticoresearch/blob/master/dist/build_dockers/cross/external_toolchain/Dockerfile) and [README](https://github.com/manticoresoftware/manticoresearch/blob/master/dist/build_dockers/README.md) or use an image from [Docker Hub](https://hub.docker.com/r/manticoresearch/external_toolchain/tags). This is the easiest way to create binaries for any supported operating system and architecture. You'll also need to specify the following environment variables when running the container:\n\n* `DISTR`: the target platform: `bionic`, `focal`, `jammy`, `buster`, `bullseye`, `bookworm`, `rhel7`, `rhel8`, `rhel9`, `rhel10`, `macos`, `windows`, `freebsd13`\n* `arch`: the architecture: `x86_64`, `x64` (for Windows), `aarch64`, `arm64` (for Macos)\n* `SYSROOT_URL`: the URL to the system roots archives. You can use https://repo.manticoresearch.com/repository/sysroots unless you are building the sysroots yourself (instructions can be found [here](https://github.com/manticoresoftware/manticoresearch/tree/master/dist/build_dockers/cross/sysroots)).\n* Use the CI workflow files as a reference to find the other environment variables you might need to use:\n - https://github.com/manticoresoftware/manticoresearch/blob/master/.github/workflows/pack_publish.yml\n - https://github.com/manticoresoftware/manticoresearch/blob/master/.github/workflows/build_template.yml\n\nTo find possible values for `DISTR` and `arch`, you can use the directory https://repo.manticoresearch.com/repository/sysroots/roots_with_zstd/ as a reference, as it includes sysroots for all supported combinations.\n\nAfter that, building packages inside the Docker container is as easy as calling:\n\nCODE_BLOCK_0\n\nFor instance, to create a package for Ubuntu Jammy that is similar to the official version Manticore Core Team provides, you should execute the following commands in the directory containing the Manticore Search sources. This directory is the root of a cloned repository from https://github.com/manticoresoftware/manticoresearch:\n\nCODE_BLOCK_1\nThe long source directory path is required or it may fail to build the sources in some cases (e.g. Centos).\n\nIn the same way, you can build binaries or packages not just for popular Linux distributions, but also for FreeBSD, Windows, and macOS.\n\n#### Building SRPMs using Docker\n\nYou can also you the same special docker image to build SRPMs:\n\nCODE_BLOCK_2\n\nThis will generate a Source RPM (`.src.rpm` file) containing all the source code.\n\n#### Building binary RPMs from the SRPM\n\nOnce you have generated the SRPM, you can use it to build the complete set of binary RPM packages:\n\nCODE_BLOCK_3\n\n> NOTE: **To build RPMs from the SRPM, you need to make sure all the dependencies listed in the SRPM are fully installed, which can be challenging.** The SRPM can still be useful for:\n> - Auditing the build process or inspecting the source and spec files\n> - Making custom modifications or patches to the build\n> - Understanding how the binaries were produced\n> - Meeting open-source license compliance requirements\n\n## Building manually\n\nCompiling Manticore without using the building Docker is **not recommended**, but if you need to do it, here's what you may need to know:\n\n### Required tools\n\n* C++ compiler\n * In Linux - GNU (4.7.2 and above) or Clang can be used\n * In Windows - Microsoft Visual Studio 2019 and above (community edition is enough)\n * On macOS - Clang (from command line tools of XCode, use `xcode-select --install` to install).\n* Bison, Flex - on most systems, they are available as packages, on Windows they are available in the cygwin framework.\n* Cmake - used on all platforms (version 3.19 or above required)\n\n### Fetching sources\n\n#### From git\n\nManticore source code is [hosted on GitHub](https://github.com/manticoresoftware/manticoresearch).\nTo obtain the source code, clone the repository and then check out the desired branch or tag. The branch `master` represents the main development branch. Upon release, a versioned tag is created, such as `3.6.0` and a new branch for the current release is started, in this case `manticore-3.6.0`. The head of the versioned branch after all changes is used as source to build all binary releases. For example, to take sources of version 3.6.0 you can run:\n\nCODE_BLOCK_4\n\n#### From archive\n\nYou can download the desired code from GitHub by using the \"Download ZIP\" button. Both .zip and .tar.gz formats are suitable.\n\nCODE_BLOCK_5\n\n### Configuring\n\nManticore uses CMake. Assuming you are inside the root directory of the cloned repository:\n\nCODE_BLOCK_6\n\nCMake will investigate available features and configure the build according to them. By default, all features are considered enabled if they are available. The script also downloads and builds some external libraries, assuming that you want to use them. Implicitly, you get support for the maximal number of features.",
  14. "translations": {
  15. "chinese": "# \u4ece\u6e90\u7801\u7f16\u8bd1 Manticore\n\n\u4ece\u6e90\u7801\u7f16\u8bd1 Manticore Search \u53ef\u4ee5\u5b9e\u73b0\u81ea\u5b9a\u4e49\u7684\u6784\u5efa\u914d\u7f6e\uff0c\u4f8b\u5982\u7981\u7528\u67d0\u4e9b\u529f\u80fd\u6216\u6dfb\u52a0\u65b0\u7684\u8865\u4e01\u8fdb\u884c\u6d4b\u8bd5\u3002\u4f8b\u5982\uff0c\u60a8\u53ef\u80fd\u5e0c\u671b\u4ece\u6e90\u7801\u7f16\u8bd1\u5e76\u7981\u7528\u5d4c\u5165\u5f0f ICU\uff0c\u4ee5\u4fbf\u4f7f\u7528\u7cfb\u7edf\u4e0a\u5b89\u88c5\u7684\u3001\u53ef\u4ee5\u72ec\u7acb\u4e8e Manticore \u5347\u7ea7\u7684\u4e0d\u540c\u7248\u672c\u3002\u5982\u679c\u60a8\u6709\u5174\u8da3\u4e3a Manticore Search \u9879\u76ee\u505a\u8d21\u732e\uff0c\u8fd9\u4e5f\u5f88\u6709\u7528\u3002\n\n## \u4f7f\u7528 CI Docker \u6784\u5efa\n\u4e3a\u4e86\u51c6\u5907[\u5b98\u65b9\u53d1\u5e03\u548c\u5f00\u53d1\u5305](https://repo.manticoresearch.com/)\uff0c\u6211\u4eec\u4f7f\u7528 Docker \u548c\u4e00\u4e2a\u7279\u6b8a\u7684\u6784\u5efa\u955c\u50cf\u3002\u8be5\u955c\u50cf\u5305\u542b\u5fc5\u8981\u7684\u5de5\u5177\uff0c\u5e76\u8bbe\u8ba1\u4e3a\u4e0e\u5916\u90e8\u7cfb\u7edf\u6839\u76ee\u5f55\uff08sysroots\uff09\u4e00\u8d77\u4f7f\u7528\uff0c\u56e0\u6b64\u4e00\u4e2a\u5bb9\u5668\u53ef\u4ee5\u4e3a\u6240\u6709\u64cd\u4f5c\u7cfb\u7edf\u6784\u5efa\u8f6f\u4ef6\u5305\u3002\u60a8\u53ef\u4ee5\u4f7f\u7528 [Dockerfile](https://github.com/manticoresoftware/manticoresearch/blob/master/dist/build_dockers/cross/external_toolchain/Dockerfile) \u548c [README](https://github.com/manticoresoftware/manticoresearch/blob/master/dist/build_dockers/README.md) \u6765\u6784\u5efa\u8be5\u955c\u50cf\uff0c\u6216\u8005\u4f7f\u7528 [Docker Hub](https://hub.docker.com/r/manticoresearch/external_toolchain/tags) \u4e0a\u7684\u955c\u50cf\u3002\u8fd9\u662f\u4e3a\u4efb\u4f55\u652f\u6301\u7684\u64cd\u4f5c\u7cfb\u7edf\u548c\u67b6\u6784\u521b\u5efa\u4e8c\u8fdb\u5236\u6587\u4ef6\u7684\u6700\u7b80\u5355\u65b9\u6cd5\u3002\u8fd0\u884c\u5bb9\u5668\u65f6\uff0c\u60a8\u8fd8\u9700\u8981\u6307\u5b9a\u4ee5\u4e0b\u73af\u5883\u53d8\u91cf\uff1a\n\n* `DISTR`\uff1a\u76ee\u6807\u5e73\u53f0\uff1a`bionic`\u3001`focal`\u3001`jammy`\u3001`buster`\u3001`bullseye`\u3001`bookworm`\u3001`rhel7`\u3001`rhel8`\u3001`rhel9`\u3001`rhel10`\u3001`macos`\u3001`windows`\u3001`freebsd13`\n* `arch`\uff1a\u67b6\u6784\uff1a`x86_64`\u3001`x64`\uff08\u9002\u7528\u4e8e Windows\uff09\u3001`aarch64`\u3001`arm64`\uff08\u9002\u7528\u4e8e Macos\uff09\n* `SYSROOT_URL`\uff1a\u7cfb\u7edf\u6839\u76ee\u5f55\u5f52\u6863\u6587\u4ef6\u7684 URL\u3002\u9664\u975e\u60a8\u81ea\u5df1\u6784\u5efa\u7cfb\u7edf\u6839\u76ee\u5f55\uff08\u8bf4\u660e\u53ef\u4ee5\u5728[\u8fd9\u91cc](https://github.com/manticoresoftware/manticoresearch/tree/master/dist/build_dockers/cross/sysroots)\u627e\u5230\uff09\uff0c\u5426\u5219\u53ef\u4ee5\u4f7f\u7528 https://repo.manticoresearch.com/repository/sysroots\u3002\n* \u53c2\u8003 CI \u5de5\u4f5c\u6d41\u6587\u4ef6\u4ee5\u67e5\u627e\u60a8\u53ef\u80fd\u9700\u8981\u4f7f\u7528\u7684\u5176\u4ed6\u73af\u5883\u53d8\u91cf\uff1a\n - https://github.com/manticoresoftware/manticoresearch/blob/master/.github/workflows/pack_publish.yml\n - https://github.com/manticoresoftware/manticoresearch/blob/master/.github/workflows/build_template.yml\n\n\u8981\u67e5\u627e `DISTR` \u548c `arch` \u7684\u53ef\u80fd\u503c\uff0c\u60a8\u53ef\u4ee5\u53c2\u8003\u76ee\u5f55 https://repo.manticoresearch.com/repository/sysroots/roots_with_zstd/\uff0c\u56e0\u4e3a\u5b83\u5305\u542b\u4e86\u6240\u6709\u652f\u6301\u7ec4\u5408\u7684\u7cfb\u7edf\u6839\u76ee\u5f55\u3002\n\n\u4e4b\u540e\uff0c\u5728 Docker \u5bb9\u5668\u5185\u6784\u5efa\u8f6f\u4ef6\u5305\u5c31\u50cf\u8c03\u7528\u4ee5\u4e0b\u547d\u4ee4\u4e00\u6837\u7b80\u5355\uff1a\n\nCODE_BLOCK_0\n\n\u4f8b\u5982\uff0c\u8981\u521b\u5efa\u4e00\u4e2a\u7c7b\u4f3c\u4e8e Manticore \u6838\u5fc3\u56e2\u961f\u63d0\u4f9b\u7684\u5b98\u65b9\u7248\u672c\u7684 Ubuntu Jammy \u8f6f\u4ef6\u5305\uff0c\u60a8\u5e94\u8be5\u5728\u5305\u542b Manticore Search \u6e90\u4ee3\u7801\u7684\u76ee\u5f55\u4e2d\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\u3002\u8be5\u76ee\u5f55\u662f\u4ece https://github.com/manticoresoftware/manticoresearch \u514b\u9686\u7684\u4ed3\u5e93\u7684\u6839\u76ee\u5f55\uff1a\n\nCODE_BLOCK_1\n\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff08\u4f8b\u5982 Centos\uff09\uff0c\u9700\u8981\u8f83\u957f\u7684\u6e90\u4ee3\u7801\u76ee\u5f55\u8def\u5f84\uff0c\u5426\u5219\u53ef\u80fd\u65e0\u6cd5\u6210\u529f\u6784\u5efa\u6e90\u4ee3\u7801\u3002\n\n\u540c\u6837\u5730\uff0c\u60a8\u4e0d\u4ec5\u53ef\u4ee5\u4e3a\u6d41\u884c\u7684 Linux \u53d1\u884c\u7248\u6784\u5efa\u4e8c\u8fdb\u5236\u6587\u4ef6\u6216\u8f6f\u4ef6\u5305\uff0c\u8fd8\u53ef\u4ee5\u4e3a FreeBSD\u3001Windows \u548c macOS \u6784\u5efa\u3002\n\n#### \u4f7f\u7528 Docker \u6784\u5efa SRPM\n\n\u60a8\u4e5f\u53ef\u4ee5\u4f7f\u7528\u76f8\u540c\u7684\u7279\u6b8a Docker \u955c\u50cf\u6765\u6784\u5efa SRPM\uff1a\n\nCODE_BLOCK_2\n\n\u8fd9\u5c06\u751f\u6210\u4e00\u4e2a\u5305\u542b\u6240\u6709\u6e90\u4ee3\u7801\u7684\u6e90 RPM\uff08`.src.rpm` \u6587\u4ef6\uff09\u3002\n\n#### \u4ece SRPM \u6784\u5efa\u4e8c\u8fdb\u5236 RPM\n\n\u751f\u6210 SRPM \u540e\uff0c\u60a8\u53ef\u4ee5\u4f7f\u7528\u5b83\u6765\u6784\u5efa\u5b8c\u6574\u7684\u4e8c\u8fdb\u5236 RPM \u8f6f\u4ef6\u5305\u96c6\uff1a\n\nCODE_BLOCK_3\n\n> \u6ce8\u610f\uff1a**\u8981\u4ece SRPM \u6784\u5efa RPM\uff0c\u60a8\u9700\u8981\u786e\u4fdd SRPM \u4e2d\u5217\u51fa\u7684\u6240\u6709\u4f9d\u8d56\u9879\u90fd\u5df2\u5b8c\u5168\u5b89\u88c5\uff0c\u8fd9\u53ef\u80fd\u5177\u6709\u6311\u6218\u6027\u3002** SRPM \u5728\u4ee5\u4e0b\u65b9\u9762\u4ecd\u7136\u6709\u7528\uff1a\n> - \u5ba1\u8ba1\u6784\u5efa\u8fc7\u7a0b\u6216\u68c0\u67e5\u6e90\u4ee3\u7801\u548c spec \u6587\u4ef6\n> - \u5bf9\u6784\u5efa\u8fdb\u884c\u81ea\u5b9a\u4e49\u4fee\u6539\u6216\u6253\u8865\u4e01\n> - \u4e86\u89e3\u4e8c\u8fdb\u5236\u6587\u4ef6\u662f\u5982\u4f55\u751f\u6210\u7684\n> - \u6ee1\u8db3\u5f00\u6e90\u8bb8\u53ef\u8bc1\u5408\u89c4\u6027\u8981\u6c42\n\n## \u624b\u52a8\u6784\u5efa\n\n\u4e0d\u4f7f\u7528\u6784\u5efa Docker \u6765\u7f16\u8bd1 Manticore **\u4e0d\u63a8\u8350**\uff0c\u4f46\u5982\u679c\u60a8\u9700\u8981\u8fd9\u6837\u505a\uff0c\u4ee5\u4e0b\u662f\u4e00\u4e9b\u60a8\u53ef\u80fd\u9700\u8981\u4e86\u89e3\u7684\u4fe1\u606f\uff1a\n\n### \u6240\u9700\u5de5\u5177\n\n* C++ \u7f16\u8bd1\u5668\n * \u5728 Linux \u4e2d - \u53ef\u4ee5\u4f7f\u7528 GNU\uff084.7.2 \u53ca\u4ee5\u4e0a\u7248\u672c\uff09\u6216 Clang\n * \u5728 Windows \u4e2d - Microsoft Visual Studio 2019 \u53ca\u4ee5\u4e0a\u7248\u672c\uff08\u793e\u533a\u7248\u5373\u53ef\uff09\n * \u5728 macOS \u4e2d - Clang\uff08\u6765\u81ea XCode \u7684\u547d\u4ee4\u884c\u5de5\u5177\uff0c\u4f7f\u7528 `xcode-select --install` \u5b89\u88c5\uff09\u3002\n* Bison, Flex - \u5728\u5927\u591a\u6570\u7cfb\u7edf\u4e0a\uff0c\u5b83\u4eec\u53ef\u4ee5\u4f5c\u4e3a\u8f6f\u4ef6\u5305\u4f7f\u7528\uff1b\u5728 Windows \u4e0a\uff0c\u5b83\u4eec\u5728 cygwin \u6846\u67b6\u4e2d\u53ef\u7528\u3002\n* Cmake - \u5728\u6240\u6709\u5e73\u53f0\u4e0a\u4f7f\u7528\uff08\u9700\u8981 3.19 \u6216\u66f4\u9ad8\u7248\u672c\uff09\n\n### \u83b7\u53d6\u6e90\u4ee3\u7801\n\n#### \u4ece git\n\nManticore \u6e90\u4ee3\u7801[\u6258\u7ba1\u5728 GitHub \u4e0a](https://github.com/manticoresoftware/manticoresearch)\u3002\n\u8981\u83b7\u53d6\u6e90\u4ee3\u7801\uff0c\u8bf7\u514b\u9686\u4ed3\u5e93\uff0c\u7136\u540e\u68c0\u51fa\u6240\u9700\u7684\u5206\u652f\u6216\u6807\u7b7e\u3002\u5206\u652f `master` \u4ee3\u8868\u4e3b\u8981\u7684\u5f00\u53d1\u5206\u652f\u3002\u53d1\u5e03\u65f6\uff0c\u4f1a\u521b\u5efa\u4e00\u4e2a\u7248\u672c\u6807\u7b7e\uff0c\u4f8b\u5982 `3.6.0`\uff0c\u5e76\u4e3a\u5f53\u524d\u7248\u672c\u542f\u52a8\u4e00\u4e2a\u65b0\u5206\u652f\uff0c\u5728\u672c\u4f8b\u4e2d\u4e3a `manticore-3.6.0`\u3002\u8be5\u7248\u672c\u5206\u652f\u5728\u6240\u6709\u66f4\u6539\u540e\u7684\u5934\u90e8\u88ab\u7528\u4f5c\u6784\u5efa\u6240\u6709\u4e8c\u8fdb\u5236\u53d1\u5e03\u7684\u6e90\u4ee3\u7801\u3002\u4f8b\u5982\uff0c\u8981\u83b7\u53d6 3.6.0 \u7248\u672c\u7684\u6e90\u4ee3\u7801\uff0c\u60a8\u53ef\u4ee5\u8fd0\u884c\uff1a\n\nCODE_BLOCK_4\n\n#### \u4ece\u5f52\u6863\u6587\u4ef6\n\n\u60a8\u53ef\u4ee5\u901a\u8fc7\u4f7f\u7528 \"Download ZIP\" \u6309\u94ae\u4ece GitHub \u4e0b\u8f7d\u6240\u9700\u7684\u4ee3\u7801\u3002.zip \u548c .tar.gz \u683c\u5f0f\u90fd\u9002\u7528\u3002\n\nCODE_BLOCK_5\n\n### \u914d\u7f6e\n\nManticore \u4f7f\u7528 CMake\u3002\u5047\u8bbe\u60a8\u5728\u514b\u9686\u7684\u4ed3\u5e93\u7684\u6839\u76ee\u5f55\u5185\uff1a\n\nCODE_BLOCK_6\n\nCMake \u5c06\u68c0\u67e5\u53ef\u7528\u7684\u529f\u80fd\u5e76\u6839\u636e\u5b83\u4eec\u914d\u7f6e\u6784\u5efa\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u5982\u679c\u53ef\u7528\uff0c\u6240\u6709\u529f\u80fd\u90fd\u88ab\u89c6\u4e3a\u542f\u7528\u3002\u8be5\u811a\u672c\u8fd8\u4f1a\u4e0b\u8f7d\u5e76\u6784\u5efa\u4e00\u4e9b\u5916\u90e8\u5e93\uff0c\u5047\u8bbe\u60a8\u60f3\u4f7f\u7528\u5b83\u4eec\u3002\u9690\u5f0f\u5730\uff0c\u60a8\u5c06\u83b7\u5f97\u6700\u5927\u6570\u91cf\u529f\u80fd\u7684\u652f\u6301\u3002",
  16. "russian": "# \u041a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f Manticore \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430\n\n\u041a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f Manticore Search \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u043a\u043e\u0434\u043e\u0432 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0441\u0431\u043e\u0440\u043a\u0438, \u0442\u0430\u043a\u0438\u0435 \u043a\u0430\u043a \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0438\u043b\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u043e\u0432\u044b\u0445 \u043f\u0430\u0442\u0447\u0435\u0439 \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u0445\u043e\u0442\u0435\u0442\u044c \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u043a\u043e\u0434\u043e\u0432 \u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 ICU, \u0447\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u0440\u0443\u0433\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u0443\u044e \u0432 \u0432\u0430\u0448\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 Manticore. \u042d\u0442\u043e \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u043b\u0435\u0437\u043d\u043e, \u0435\u0441\u043b\u0438 \u0432\u044b \u0437\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043d\u044b \u0432 \u0443\u0447\u0430\u0441\u0442\u0438\u0438 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 Manticore Search.\n\n## \u0421\u0431\u043e\u0440\u043a\u0430 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c CI Docker\n\u0414\u043b\u044f \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 [\u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0440\u0435\u043b\u0438\u0437\u043d\u044b\u0445 \u0438 development \u043f\u0430\u043a\u0435\u0442\u043e\u0432](https://repo.manticoresearch.com/) \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c Docker \u0438 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043e\u0431\u0440\u0430\u0437 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438. \u042d\u0442\u043e\u0442 \u043e\u0431\u0440\u0430\u0437 \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0432 \u0441\u0435\u0431\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u0438 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438 sysroot, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u0434\u0438\u043d \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043c\u043e\u0436\u0435\u0442 \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0437, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f [Dockerfile](https://github.com/manticoresoftware/manticoresearch/blob/master/dist/build_dockers/cross/external_toolchain/Dockerfile) \u0438 [README](https://github.com/manticoresoftware/manticoresearch/blob/master/dist/build_dockers/README.md), \u0438\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0437 \u0438\u0437 [Docker Hub](https://hub.docker.com/r/manticoresearch/external_toolchain/tags). \u042d\u0442\u043e \u0441\u0430\u043c\u044b\u0439 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0434\u043b\u044f \u043b\u044e\u0431\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b. \u0412\u0430\u043c \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u043f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430:\n\n* `DISTR`: \u0446\u0435\u043b\u0435\u0432\u0430\u044f \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430: `bionic`, `focal`, `jammy`, `buster`, `bullseye`, `bookworm`, `rhel7`, `rhel8`, `rhel9`, `rhel10`, `macos`, `windows`, `freebsd13`\n* `arch`: \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430: `x86_64`, `x64` (\u0434\u043b\u044f Windows), `aarch64`, `arm64` (\u0434\u043b\u044f Macos)\n* `SYSROOT_URL`: URL \u0434\u043b\u044f \u0430\u0440\u0445\u0438\u0432\u043e\u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u043a\u043e\u0440\u043d\u0435\u0439. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c https://repo.manticoresearch.com/repository/sysroots, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0435 sysroot \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e (\u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 [\u0437\u0434\u0435\u0441\u044c](https://github.com/manticoresoftware/manticoresearch/tree/master/dist/build_dockers/cross/sysroots)).\n* \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0444\u0430\u0439\u043b\u044b CI workflow \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430, \u0447\u0442\u043e\u0431\u044b \u043d\u0430\u0439\u0442\u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u0432\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f:\n - https://github.com/manticoresoftware/manticoresearch/blob/master/.github/workflows/pack_publish.yml\n - https://github.com/manticoresoftware/manticoresearch/blob/master/.github/workflows/build_template.yml\n\n\u0427\u0442\u043e\u0431\u044b \u043d\u0430\u0439\u0442\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0434\u043b\u044f `DISTR` \u0438 `arch`, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u0442\u0430\u043b\u043e\u0433 https://repo.manticoresearch.com/repository/sysroots/roots_with_zstd/ \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430, \u0442\u0430\u043a \u043a\u0430\u043a \u043e\u043d \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 sysroot \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u0439.\n\n\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0441\u0431\u043e\u0440\u043a\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0432\u043d\u0443\u0442\u0440\u0438 Docker-\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u0442\u0430\u043a \u0436\u0435 \u043f\u0440\u043e\u0441\u0442\u0430, \u043a\u0430\u043a \u0432\u044b\u0437\u043e\u0432:\n\nCODE_BLOCK_0\n\n\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0447\u0442\u043e\u0431\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442 \u0434\u043b\u044f Ubuntu Jammy, \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0439 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u043e\u0439 Manticore Core Team, \u0432\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0435\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u043a\u043e\u0434\u044b Manticore Search. \u042d\u0442\u043e\u0442 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u043e\u0440\u043d\u0435\u043c \u043a\u043b\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f \u0438\u0437 https://github.com/manticoresoftware/manticoresearch:\n\nCODE_BLOCK_1\n\u0414\u043b\u0438\u043d\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u043a \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u043c\u0443 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0443 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c, \u0438\u043d\u0430\u0447\u0435 \u0441\u0431\u043e\u0440\u043a\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u043a\u043e\u0434\u043e\u0432 \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044c\u0441\u044f \u043d\u0435\u0443\u0434\u0430\u0447\u0435\u0439 \u0432 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Centos).\n\n\u0422\u0430\u043a\u0438\u043c \u0436\u0435 \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0438\u043b\u0438 \u043f\u0430\u043a\u0435\u0442\u044b \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u043e\u0432 Linux, \u043d\u043e \u0438 \u0434\u043b\u044f FreeBSD, Windows \u0438 macOS.\n\n#### \u0421\u0431\u043e\u0440\u043a\u0430 SRPM \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c Docker\n\n\u0412\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u0442 \u0436\u0435 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 docker-\u043e\u0431\u0440\u0430\u0437 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 SRPM:\n\nCODE_BLOCK_2\n\n\u042d\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u0441\u0442 Source RPM (\u0444\u0430\u0439\u043b `.src.rpm`), \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0432\u0435\u0441\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434.\n\n#### \u0421\u0431\u043e\u0440\u043a\u0430 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0445 RPM \u0438\u0437 SRPM\n\n\u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e \u043a\u0430\u043a \u0432\u044b \u0441\u043e\u0437\u0434\u0430\u043b\u0438 SRPM, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0435\u0433\u043e \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u043e\u043b\u043d\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0445 RPM-\u043f\u0430\u043a\u0435\u0442\u043e\u0432:\n\nCODE_BLOCK_3\n\n> \u041f\u0420\u0418\u041c\u0415\u0427\u0410\u041d\u0418\u0415: **\u0414\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 RPM \u0438\u0437 SRPM \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0432\u0441\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438, \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0435 \u0432 SRPM, \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b, \u0447\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0441\u043b\u043e\u0436\u043d\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435\u0439.** SRPM \u0432\u0441\u0435 \u0435\u0449\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u043b\u0435\u0437\u0435\u043d \u0434\u043b\u044f:\n> - \u0410\u0443\u0434\u0438\u0442\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0441\u0431\u043e\u0440\u043a\u0438 \u0438\u043b\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u0438 spec-\u0444\u0430\u0439\u043b\u043e\u0432\n> - \u0412\u043d\u0435\u0441\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0438\u043b\u0438 \u043f\u0430\u0442\u0447\u0435\u0439 \u0432 \u0441\u0431\u043e\u0440\u043a\u0443\n> - \u041f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u0431\u044b\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u044b \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b\n> - \u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0439 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u044f \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044f\u043c \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c\n\n## \u0420\u0443\u0447\u043d\u0430\u044f \u0441\u0431\u043e\u0440\u043a\u0430\n\n\u041a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f Manticore \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f Docker \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 **\u043d\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f**, \u043d\u043e \u0435\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c, \u0432\u043e\u0442 \u0447\u0442\u043e \u0432\u0430\u043c \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0437\u043d\u0430\u0442\u044c:\n\n### \u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b\n\n* \u041a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 C++\n * \u0412 Linux - \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c GNU (4.7.2 \u0438 \u0432\u044b\u0448\u0435) \u0438\u043b\u0438 Clang\n * \u0412 Windows - Microsoft Visual Studio 2019 \u0438 \u0432\u044b\u0448\u0435 (\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e community edition)\n * \u041d\u0430 macOS - Clang (\u0438\u0437 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 XCode, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 `xcode-select --install` \u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438).\n* Bison, Flex - \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u0441\u0438\u0441\u0442\u0435\u043c \u043e\u043d\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0432 \u0432\u0438\u0434\u0435 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u0432 Windows \u043e\u043d\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 cygwin.\n* Cmake - \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043d\u0430 \u0432\u0441\u0435\u0445 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430\u0445 (\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0432\u0435\u0440\u0441\u0438\u044f 3.19 \u0438\u043b\u0438 \u0432\u044b\u0448\u0435)\n\n### \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u043a\u043e\u0434\u043e\u0432\n\n#### \u0418\u0437 git\n\n\u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 Manticore [\u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d \u043d\u0430 GitHub](https://github.com/manticoresoftware/manticoresearch).\n\u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434, \u043a\u043b\u043e\u043d\u0438\u0440\u0443\u0439\u0442\u0435 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439, \u0430 \u0437\u0430\u0442\u0435\u043c \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u0441\u044c \u043d\u0430 \u043d\u0443\u0436\u043d\u0443\u044e \u0432\u0435\u0442\u043a\u0443 \u0438\u043b\u0438 \u0442\u0435\u0433. \u0412\u0435\u0442\u043a\u0430 `master` \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043e\u0441\u043d\u043e\u0432\u043d\u0443\u044e \u0432\u0435\u0442\u043a\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u041f\u0440\u0438 \u0432\u044b\u043f\u0443\u0441\u043a\u0435 \u0440\u0435\u043b\u0438\u0437\u0430 \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u043d\u044b\u0439 \u0442\u0435\u0433, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 `3.6.0`, \u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0442\u043a\u0430 \u0434\u043b\u044f \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0440\u0435\u043b\u0438\u0437\u0430, \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 `manticore-3.6.0`. \u0413\u043e\u043b\u043e\u0432\u0430 \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 \u043f\u043e\u0441\u043b\u0435 \u0432\u0441\u0435\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u0432\u0441\u0435\u0445 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0445 \u0440\u0435\u043b\u0438\u0437\u043e\u0432. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0447\u0442\u043e\u0431\u044b \u0432\u0437\u044f\u0442\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u043a\u043e\u0434\u044b \u0432\u0435\u0440\u0441\u0438\u0438 3.6.0, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c:\n\nCODE_BLOCK_4\n\n#### \u0418\u0437 \u0430\u0440\u0445\u0438\u0432\u0430\n\n\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u044b\u0439 \u043a\u043e\u0434 \u0441 GitHub, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043a\u043d\u043e\u043f\u043a\u0443 \"Download ZIP\". \u041f\u043e\u0434\u0445\u043e\u0434\u044f\u0442 \u043a\u0430\u043a \u0444\u043e\u0440\u043c\u0430\u0442 .zip, \u0442\u0430\u043a \u0438 .tar.gz.\n\nCODE_BLOCK_5\n\n### \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\n\nManticore \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 CMake. \u041f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u044f, \u0447\u0442\u043e \u0432\u044b \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0435\u0441\u044c \u0432 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u043c \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 \u043a\u043b\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f:\n\nCODE_BLOCK_6\n\nCMake \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442 \u0441\u0431\u043e\u0440\u043a\u0443 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u043d\u0438\u043c\u0438. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432\u0441\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0441\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u043c\u0438, \u0435\u0441\u043b\u0438 \u043e\u043d\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b. \u0421\u043a\u0440\u0438\u043f\u0442 \u0442\u0430\u043a\u0436\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u0438 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438, \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u044f, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c. \u041d\u0435\u044f\u0432\u043d\u043e \u0432\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439."
  17. },
  18. "is_code_or_comment": false,
  19. "model": "deepseek/deepseek-v3.2",
  20. "updated_at": 1766370779
  21. },
  22. "14ebf9bcca9687a59f84efb9f52562cc2f48d6fda8b5e387c71c1ef41ab835d7": {
  23. "original": "- **USE_SYSLOG** - allows the use of`syslog` in [query logging](../Logging/Query_logging.md).\n- **WITH_GALERA** -Enables support for replication on the search daemon. Support will be configured for the build, and the sources for the Galera library will be downloaded, built, and included in the distribution/installation. Usually, it is safe to build with Galera, but not distribute the library itself (so no Galera module, no replication). However, sometimes you may need to explicitly disable it, such as if you want to build a static binary that by design cannot load any libraries, so that even the presence of a call to the 'dlopen' function inside the daemon will cause a link error.\n- **WITH_RE2** - Builds with the use of the RE2 regular expression library. This is necessary for functions like [REGEX()](../Functions/String_functions.md#REGEX%28%29), and the [regexp_filter](../Creating_a_table/NLP_and_tokenization/Low-level_tokenization.md#regexp_filter)\n feature.\n- **WITH_RE2_FORCE_STATIC** - Downloads the sources of RE2, compiles them, and links them statically, so that the final binaries will not depend on the presence of a shared `RE2` library in your system.\n- **WITH_STEMMER** - Builds with the use of the Snowball stemming library.\n- **WITH_STEMMER_FORCE_STATIC** - Downloads the Snowball sources, compiles them, and links them statically, so that the final binaries will not depend on the presence of a shared `libstemmer` library in your system.\n- **WITH_ICU** - Builds with the ICU (International Components for Unicode) library. It is used for segmenting Chinese text. It is utilized when morphology=`icu_chinese` is used.\n- **WITH_JIEBA** - Builds with the Jieba Chinese text segmentation tool. It is used for segmenting Chinese text. It is utilized when morphology=`jieba_chinese` is used.\n- **WITH_ICU_FORCE_STATIC** - Downloads the ICU sources, compiles them, and links them statically, so that the final binaries will not depend on the presence of a shared `icu` library in your system. Also includes the ICU data file into the installation/distribution. The purpose of a statically linked ICU is to have a library of a known version, so that behavior is determined and not dependent on any system libraries. You will most likely prefer to use the system ICU instead, as it may be updated over time without the need to recompile the Manticore daemon. In this case, you need to explicitly disable this option. This will also save you some space occupied by the ICU data file (about 30M), as it will not be included in the distribution.\n- **WITH_SSL** - Used for support for HTTPS, and also encrypted MySQL connections to the daemon. The system OpenSSL library will be linked to the daemon. This implies that OpenSSL will be required to start the daemon. This is mandatory for support for HTTPS, but not strictly mandatory for the server (i.e. no SSL means no possibility to connect via HTTPS, but other protocols will work). SSL library versions starting from 1.0.2 to 1.1.1 may be used by Manticore, however note that **for the sake of security it's highly recommended to use the freshest possible SSL\n library**. For now only v1.1.1 is supported, the rest are outdated (\n see [openssl release strategy](https://www.openssl.org/policies/releasestrat.html)\n- **WITH_ZLIB** - used by the indexer to work with compressed columns from MySQL. Used by the daemon to provide support for the compressed MySQL protocol.\n- **WITH_ODBC** - used by the indexer to support indexing sources from ODBC providers (they're typically UnixODBC and iODBC). On MS Windows, ODBC is the proper way to work with MS SQL sources, so indexing of `MSSQL` also implies this flag.\n- **DL_ODBC** - don't link with the ODBC library. If ODBC is linked, but not available, you can't start indexer tool even if you want to process something not related to ODBC. This option asks the indexer to load the library at runtime only when you want to deal with ODBC source.\n- **ODBC_LIB** - name of the ODBC library file. The indexer will try to load that file when you want to process ODBC source. This option is written automatically from available ODBC shared library investigation. You can also override that name at runtime by providing the environment variable `ODBC_LIB` with the proper path to an alternative library before running the indexer.\n- **WITH_EXPAT** - used by the indexer to support indexing xmlpipe sources.\n- **DL_EXPAT** - don't link with the EXPAT library. If EXPAT is linked, but not available, you can't start `indexer` tool even if you want to process something not related to xmlpipe. This option asks the indexer to load the library at runtime only when you want to deal with xmlpipe source.\n- **EXPAT_LIB** - name of the EXPAT library file. The indexer will try to load that file when you want to process xmlpipe source. This option is written automatically from available EXPAT shared library investigation. You can also override that name at runtime by providing the environment variable EXPAT_LIB with the proper path to an alternative library before running the indexer.\n- **WITH_ICONV** - for support different encodings when indexing xmlpipe sources with the indexer.\n- **DL_ICONV** - don't link with the iconv library. If iconv is linked, but not available, you can't start `indexer` tool even if you want to process something not related to xmlpipe. This option asks the indexer to load the library at runtime only when you want to deal with xmlpipe source.\n- **ICONV_LIB** - name of the iconv library file. The indexer will try to load that file when you want to process xmlpipe source. This option is written automatically from the available iconv shared library investigation. You can also override that name at runtime by providing the environment variable `ICONV_LIB` with the proper path to an alternative library before running the indexer.\n- **WITH_MYSQL** - used by the indexer to support indexing MySQL sources.\n- **DL_MYSQL** - don't link with the MySQL library. If MySQL is linked, but not available, you can't start the`indexer` tool even if you want to process something not related to MySQL. This option asks the indexer to load the library at runtime only when you want to deal with a MySQL source.\n- **MYSQL_LIB** -- name of the MySQL library file. The indexer will try to load that file when you want to process a MySQL source. This option is written automatically from the available MySQL shared library investigation. You can also override that name at runtime by providing the environment variable `MYSQL_LIB` with the proper path to an alternative library before running the indexer.\n- **WITH_POSTGRESQL** - used by the indexer to support indexing PostgreSQL sources.\n- **DL_POSTGRESQL** - don't link with the PostgreSQL library. If PostgreSQL is linked, but not available, you can't start the `indexer` ool even if you want to process something not related to PostgreSQL. This option asks the indexer to load the library at runtime only when you want to deal with a PostgreSQL source.\n- **POSTGRESQL_LIB** - name of postgresql library file. The indexer will attempt to load the specified postgresql library file when processing a postgresql source. This option is automatically determined from available postgresql shared library investigation. You can also override the name at runtime by providing the environment variable `POSTGRESQL_LIB` with the proper path to an alternative library before running the indexer.\n- **LOCALDATADIR** - default path where the daemon stores binlogs. If this path is not provided or explicitly disabled in the daemon's runtime config (i.e. the file `manticore.conf`, which is not related to this build configuration), binlogs will be placed in this path. It is typically an absolute path, however, it is not required to be and relative paths can also be used. You probably would not need to change the default value defined by the configuration, which, depending on the target system, might be something like `/var/data`, `/var/lib/manticore/data`, or `/usr/local/var/lib/manticore/data`.\n- **FULL_SHARE_DIR** - default path where all assets are stored. It can be overridden by the environment variable `FULL_SHARE_DIR` before starting any tool that utilizes files from that folder. This is an important path as many things are expected to be found there by default. These include predefined charset tables, stopwords, manticore modules, and icu data files, all placed in that folder. The configuration script usually determines this path to be something like `/usr/share/manticore`, or `/usr/local/share/manticore`.\n- **DISTR_BUILD** - a shortcut for the options for releasing packages. This is a string value with the name of the target platform. It can be used instead of manually configuring all the options. On Debian and Redhat Linuxes, the default value might be determined by light introspection and set to a generic 'Debian' or 'RHEL'. Otherwise, the value is not defined.\n- **PACK** - an even more convenient shortcut. It reads the `DISTR` environment variable, assigns it to the **DISTR_BUILD** parameter, and then works as usual. This is very useful when building in prepared build systems, like Docker containers, where the `DISTR` variable is set at the system level and reflects the target system for which the container is intended.\n- **CMAKE_INSTALL_PREFIX** (path) - where Manticore is expected to be installed. Building does not perform any installations, but it prepares the installation rules that are executed when you run the `cmake --install` command or create a package and then install it. The prefix can be changed at any time, even during installation, by invoking\n `cmake --install . --prefix /path/to/installation`. However, at config time, this variable is used to initialize the default values of `LOCALDATADIR` and `FULL_SHARE_DIR`. For example, setting it to `/my/custom` at configure\n time will hardcode `LOCALDATADIR` as `/my/custom/var/lib/manticore/data`, and `FULL_SHARE_DIR` as\n `/my/custom/usr/share/manticore`.\n- **BUILD_TESTING** (bool) whether to support testing. If enabled, after the build, you can run 'ctest' and test the build. Note that testing implies additional dependencies, like at least the presence of PHP cli, Python, and an available MySQL server with a test database. By default, this parameter is on. So, for 'just build', you might want to disable the option by explicitly specifying 'off' value.\n- **BUILD_SRPMS** (bool) whether to show instructions for building Source RPMs (SRPMs). Due to CPack limitations with component-based packaging, SRPMs cannot be generated directly alongside binary RPMs. When enabled, the build system will display instructions for proper SRPM generation using the source configuration method. By default, this parameter is off.\n- **LIBS_BUNDLE** - path to a folder with different libraries. This is mostly relevant for Windows building, but may also be helpful if you have to build often in order to avoid downloading third-party sources each time. By default, this path is never modified by the configuration script; you should put everything there manually. When, say, we want support for a stemmer - the sources will be downloaded from Snowball homepage, then extracted, configured, built, etc. Instead, you can store the original source tarball (which is `libstemmer_c.tgz`) in this folder. Next time you want to build from scratch, the configuration script will first look up in the bundle, and if it finds the stemmer there, it will not download it again from the Internet.\n- **CACHEB** - path to a folder with stored builds of 3-rd party libraries. Usually features like galera, re2, icu, etc. first downloaded or being got from bundle, then unpacked, built, and installed into a temporary internal folder. When building manticore, that folder is then used as the place where the things required to support the asked feature are live. Finally, they either link with manticore, if it is a library; either go directly to distribution/installation (like galera or icu data). When **CACHEB** is defined either as cmake config param, either as a system environment variable, it is used as the target folder for that builds. This folder might be kept across builds, so that stored libraries there will not be rebuilt anymore, making the whole build process much shorter.",
  24. "translations": {
  25. "chinese": "- **USE_SYSLOG** - \u5141\u8bb8\u5728 [query logging](../Logging/Query_logging.md) \u4e2d\u4f7f\u7528`syslog`\u3002 \n- **WITH_GALERA** -\u542f\u7528\u5bf9\u641c\u7d22\u5b88\u62a4\u8fdb\u7a0b\u590d\u5236\u7684\u652f\u6301\u3002\u5c06\u5728\u6784\u5efa\u65f6\u914d\u7f6e\u6b64\u652f\u6301\uff0c\u5e76\u4e0b\u8f7d\u3001\u6784\u5efa\u5e76\u5305\u542b Galera \u5e93\u7684\u6e90\u4ee3\u7801\u5230\u53d1\u884c/\u5b89\u88c5\u5305\u4e2d\u3002\u901a\u5e38\uff0c\u4f7f\u7528 Galera \u6784\u5efa\u662f\u5b89\u5168\u7684\uff0c\u4f46\u4e0d\u5206\u53d1\u5e93\u672c\u8eab\uff08\u5373\u6ca1\u6709 Galera \u6a21\u5757\uff0c\u6ca1\u6709\u590d\u5236\uff09\u3002\u7136\u800c\uff0c\u6709\u65f6\u60a8\u53ef\u80fd\u9700\u8981\u663e\u5f0f\u5730\u7981\u7528\u5b83\uff0c\u4f8b\u5982\u5982\u679c\u60a8\u60f3\u6784\u5efa\u4e00\u4e2a\u8bbe\u8ba1\u4e0a\u65e0\u6cd5\u52a0\u8f7d\u4efb\u4f55\u5e93\u7684\u9759\u6001\u4e8c\u8fdb\u5236\u6587\u4ef6\uff0c\u4ee5\u4fbf\u5373\u4f7f\u5b88\u62a4\u8fdb\u7a0b\u5185\u90e8\u5b58\u5728\u5bf9 'dlopen' \u51fd\u6570\u7684\u8c03\u7528\u4e5f\u4f1a\u5bfc\u81f4\u94fe\u63a5\u9519\u8bef\u3002 \n- **WITH_RE2** - \u4f7f\u7528 RE2 \u6b63\u5219\u8868\u8fbe\u5f0f\u5e93\u6784\u5efa\u3002\u8fd9\u5bf9\u4e8e [REGEX()](../Functions/String_functions.md#REGEX%28%29) \u7b49\u51fd\u6570\u4ee5\u53ca [regexp_filter](../Creating_a_table/NLP_and_tokenization/Low-level_tokenization.md#regexp_filter) \n \u529f\u80fd\u3002 \n- **WITH_RE2_FORCE_STATIC** - \u4e0b\u8f7d RE2 \u7684\u6e90\u4ee3\u7801\uff0c\u7f16\u8bd1\u5e76\u9759\u6001\u94fe\u63a5\uff0c\u4ee5\u4fbf\u6700\u7ec8\u4e8c\u8fdb\u5236\u6587\u4ef6\u4e0d\u4f9d\u8d56\u7cfb\u7edf\u4e2d\u5171\u4eab\u7684 `RE2` \u5e93\u3002 \n- **WITH_STEMMER** - \u4f7f\u7528 Snowball \u8bcd\u5e72\u63d0\u53d6\u5e93\u6784\u5efa\u3002 \n- **WITH_STEMMER_FORCE_STATIC** - \u4e0b\u8f7d Snowball \u7684\u6e90\u4ee3\u7801\uff0c\u7f16\u8bd1\u5e76\u9759\u6001\u94fe\u63a5\uff0c\u4ee5\u4fbf\u6700\u7ec8\u4e8c\u8fdb\u5236\u6587\u4ef6\u4e0d\u4f9d\u8d56\u7cfb\u7edf\u4e2d\u5171\u4eab\u7684 `libstemmer` \u5e93\u3002 \n- **WITH_ICU** - \u4f7f\u7528 ICU (International Components for Unicode) \u5e93\u6784\u5efa\u3002\u5b83\u7528\u4e8e\u5bf9\u4e2d\u6587\u6587\u672c\u8fdb\u884c\u5206\u8bcd\u3002\u5f53\u8bbe\u7f6e morphology=`icu_chinese` \u65f6\u4f1a\u4f7f\u7528\u5b83\u3002 \n- **WITH_JIEBA** - \u4f7f\u7528 Jieba \u4e2d\u6587\u5206\u8bcd\u5de5\u5177\u6784\u5efa\u3002\u5b83\u7528\u4e8e\u5bf9\u4e2d\u6587\u6587\u672c\u8fdb\u884c\u5206\u8bcd\u3002\u5f53\u8bbe\u7f6e morphology=`jieba_chinese` \u65f6\u4f1a\u4f7f\u7528\u5b83\u3002 \n- **WITH_ICU_FORCE_STATIC** - \u4e0b\u8f7d ICU \u7684\u6e90\u4ee3\u7801\uff0c\u7f16\u8bd1\u5e76\u9759\u6001\u94fe\u63a5\uff0c\u4ee5\u4fbf\u6700\u7ec8\u4e8c\u8fdb\u5236\u6587\u4ef6\u4e0d\u4f9d\u8d56\u7cfb\u7edf\u4e2d\u5171\u4eab\u7684 `icu` \u5e93\u3002\u8fd8\u4f1a\u5c06 ICU \u6570\u636e\u6587\u4ef6\u5305\u542b\u5230\u5b89\u88c5/\u53d1\u884c\u5305\u4e2d\u3002\u9759\u6001\u94fe\u63a5\u7684 ICU \u7684\u76ee\u7684\u662f\u4f7f\u7528\u5df2\u77e5\u7248\u672c\u7684\u5e93\uff0c\u4ee5\u786e\u4fdd\u884c\u4e3a\u786e\u5b9a\u4e14\u4e0d\u4f9d\u8d56\u4efb\u4f55\u7cfb\u7edf\u5e93\u3002\u60a8\u66f4\u53ef\u80fd\u5e0c\u671b\u4f7f\u7528\u7cfb\u7edf ICU\uff0c\u56e0\u4e3a\u5b83\u53ef\u4ee5\u968f\u7740\u65f6\u95f4\u66f4\u65b0\u800c\u65e0\u9700\u91cd\u65b0\u7f16\u8bd1 Manticore \u5b88\u62a4\u8fdb\u7a0b\u3002\u5728\u8fd9\u79cd\u60c5\u51b5\u4e0b\uff0c\u60a8\u9700\u8981\u663e\u5f0f\u7981\u7528\u6b64\u9009\u9879\u3002\u8fd9\u6837\u8fd8\u53ef\u4ee5\u8282\u7701 ICU \u6570\u636e\u6587\u4ef6\u5360\u7528\u7684\u7a7a\u95f4\uff08\u7ea6 30M\uff09\uff0c\u56e0\u4e3a\u5b83\u4e0d\u4f1a\u5305\u542b\u5728\u53d1\u884c\u5305\u4e2d\u3002 \n- **WITH_SSL** - \u7528\u4e8e\u652f\u6301 HTTPS \u4ee5\u53ca\u4e0e\u5b88\u62a4\u8fdb\u7a0b\u7684\u52a0\u5bc6 MySQL \u8fde\u63a5\u3002\u7cfb\u7edf\u7684 OpenSSL \u5e93\u5c06\u94fe\u63a5\u5230\u5b88\u62a4\u8fdb\u7a0b\u3002\u8fd9\u610f\u5473\u7740\u542f\u52a8\u5b88\u62a4\u8fdb\u7a0b\u65f6\u9700\u8981 OpenSSL\u3002\u5bf9\u4e8e\u652f\u6301 HTTPS\uff0c\u8fd9\u662f\u5f3a\u5236\u6027\u7684\uff0c\u4f46\u5bf9\u4e8e\u670d\u52a1\u5668\u672c\u8eab\u5e76\u975e\u4e25\u683c\u5fc5\u8981\uff08\u5373\u6ca1\u6709 SSL \u5219\u65e0\u6cd5\u901a\u8fc7 HTTPS \u8fde\u63a5\uff0c\u4f46\u5176\u4ed6\u534f\u8bae\u4ecd\u53ef\u5de5\u4f5c\uff09\u3002Manticore \u53ef\u4ee5\u4f7f\u7528\u4ece 1.0.2 \u5230 1.1.1 \u7684 SSL \u5e93\u7248\u672c\uff0c \u4f46\u8bf7\u6ce8\u610f **\u51fa\u4e8e\u5b89\u5168\u8003\u8651\uff0c\u5f3a\u70c8\u5efa\u8bae\u4f7f\u7528\u6700\u65b0\u7684 SSL \n \u5e93**\u3002\u76ee\u524d\u4ec5\u652f\u6301 v1.1.1\uff0c\u5176\u4f59\u7248\u672c\u5df2\u8fc7\u65f6\uff08 \n \u53c2\u89c1 [openssl \u53d1\u5e03\u7b56\u7565](https://www.openssl.org/policies/releasestrat.html) \n- **WITH_ZLIB** - \u7d22\u5f15\u5668\u7528\u4e8e\u5904\u7406\u6765\u81ea MySQL \u7684\u538b\u7f29\u5217\u3002\u5b88\u62a4\u8fdb\u7a0b\u7528\u4e8e\u63d0\u4f9b\u5bf9\u538b\u7f29 MySQL \u534f\u8bae\u7684\u652f\u6301\u3002 \n- **WITH_ODBC** - \u7d22\u5f15\u5668\u7528\u4e8e\u652f\u6301\u6765\u81ea ODBC \u63d0\u4f9b\u8005\u7684\u7d22\u5f15\u6e90\uff08\u5b83\u4eec\u901a\u5e38\u662f UnixODBC \u548c iODBC\uff09\u3002\u5728 MS Windows \u4e0a\uff0cODBC \u662f\u5904\u7406 MS SQL \u6e90\u7684\u6b63\u786e\u65b9\u6cd5\uff0c\u56e0\u6b64\u5bf9 `MSSQL` \u7684\u7d22\u5f15\u4e5f\u610f\u5473\u7740\u542f\u7528\u6b64\u6807\u5fd7\u3002 \n- **DL_ODBC** - \u4e0d\u4e0e ODBC \u5e93\u94fe\u63a5\u3002\u5982\u679c ODBC \u5df2\u94fe\u63a5\u4f46\u4e0d\u53ef\u7528\uff0c\u5219\u5373\u4f7f\u60a8\u60f3\u5904\u7406\u4e0e ODBC \u65e0\u5173\u7684\u5185\u5bb9\uff0c\u4e5f\u65e0\u6cd5\u542f\u52a8 indexer \u5de5\u5177\u3002\u6b64\u9009\u9879\u8981\u6c42\u7d22\u5f15\u5668\u4ec5\u5728\u5904\u7406 ODBC \u6e90\u65f6\u624d\u5728\u8fd0\u884c\u65f6\u52a0\u8f7d\u8be5\u5e93\u3002 \n- **ODBC_LIB** - ODBC \u5e93\u6587\u4ef6\u7684\u540d\u79f0\u3002\u5f53\u60a8\u60f3\u5904\u7406 ODBC \u6e90\u65f6\uff0c\u7d22\u5f15\u5668\u5c06\u5c1d\u8bd5\u52a0\u8f7d\u8be5\u6587\u4ef6\u3002\u6b64\u9009\u9879\u6839\u636e\u53ef\u7528\u7684 ODBC \u5171\u4eab\u5e93\u68c0\u6d4b\u81ea\u52a8\u5199\u5165\u3002\u60a8\u4e5f\u53ef\u4ee5\u5728\u8fd0\u884c\u7d22\u5f15\u5668\u4e4b\u524d\uff0c\u901a\u8fc7\u8bbe\u7f6e\u73af\u5883\u53d8\u91cf `ODBC_LIB` \u5e76\u6307\u5b9a\u5907\u7528\u5e93\u7684\u6b63\u786e\u8def\u5f84\u6765\u8986\u76d6\u8be5\u540d\u79f0\u3002 \n- **WITH_EXPAT** - \u7d22\u5f15\u5668\u7528\u4e8e\u652f\u6301\u5bf9 xmlpipe \u6e90\u7684\u7d22\u5f15\u3002 \n- **DL_EXPAT** - \u4e0d\u4e0e EXPAT \u5e93\u94fe\u63a5\u3002\u5982\u679c EXPAT \u5df2\u94fe\u63a5\u4f46\u4e0d\u53ef\u7528\uff0c\u5219\u5373\u4f7f\u60a8\u60f3\u5904\u7406\u4e0e xmlpipe \u65e0\u5173\u7684\u5185\u5bb9\uff0c\u4e5f\u65e0\u6cd5\u542f\u52a8 `indexer` \u5de5\u5177\u3002\u6b64\u9009\u9879\u8981\u6c42\u7d22\u5f15\u5668\u4ec5\u5728\u5904\u7406 xmlpipe \u6e90\u65f6\u624d\u5728\u8fd0\u884c\u65f6\u52a0\u8f7d\u8be5\u5e93\u3002 \n- **EXPAT_LIB** - EXPAT \u5e93\u6587\u4ef6\u7684\u540d\u79f0\u3002\u5f53\u60a8\u60f3\u5904\u7406 xmlpipe \u6e90\u65f6\uff0c\u7d22\u5f15\u5668\u5c06\u5c1d\u8bd5\u52a0\u8f7d\u8be5\u6587\u4ef6\u3002\u6b64\u9009\u9879\u6839\u636e\u53ef\u7528\u7684 EXPAT \u5171\u4eab\u5e93\u68c0\u6d4b\u81ea\u52a8\u5199\u5165\u3002\u60a8\u4e5f\u53ef\u4ee5\u5728\u8fd0\u884c\u7d22\u5f15\u5668\u4e4b\u524d\uff0c\u901a\u8fc7\u8bbe\u7f6e\u73af\u5883\u53d8\u91cf `EXPAT_LIB` \u5e76\u6307\u5b9a\u5907\u7528\u5e93\u7684\u6b63\u786e\u8def\u5f84\u6765\u8986\u76d6\u8be5\u540d\u79f0\u3002 \n- **WITH_ICONV** - \u5728\u4f7f\u7528\u7d22\u5f15\u5668\u7d22\u5f15 xmlpipe \u6e90\u65f6\uff0c\u7528\u4e8e\u652f\u6301\u4e0d\u540c\u7684\u7f16\u7801\u3002 \n- **DL_ICONV** - \u4e0d\u4e0e iconv \u5e93\u94fe\u63a5\u3002\u5982\u679c iconv \u5df2\u94fe\u63a5\u4f46\u4e0d\u53ef\u7528\uff0c\u5219\u5373\u4f7f\u60a8\u60f3\u5904\u7406\u4e0e xmlpipe \u65e0\u5173\u7684\u5185\u5bb9\uff0c\u4e5f\u65e0\u6cd5\u542f\u52a8 `indexer` \u5de5\u5177\u3002\u6b64\u9009\u9879\u8981\u6c42\u7d22\u5f15\u5668\u4ec5\u5728\u5904\u7406 xmlpipe \u6e90\u65f6\u624d\u5728\u8fd0\u884c\u65f6\u52a0\u8f7d\u8be5\u5e93\u3002 \n- **ICONV_LIB** - iconv \u5e93\u6587\u4ef6\u7684\u540d\u79f0\u3002\u5f53\u60a8\u60f3\u5904\u7406 xmlpipe \u6e90\u65f6\uff0c\u7d22\u5f15\u5668\u5c06\u5c1d\u8bd5\u52a0\u8f7d\u8be5\u6587\u4ef6\u3002\u6b64\u9009\u9879\u6839\u636e\u53ef\u7528\u7684 iconv \u5171\u4eab\u5e93\u68c0\u6d4b\u81ea\u52a8\u5199\u5165\u3002\u60a8\u4e5f\u53ef\u4ee5\u5728\u8fd0\u884c\u7d22\u5f15\u5668\u4e4b\u524d\uff0c\u901a\u8fc7\u8bbe\u7f6e\u73af\u5883\u53d8\u91cf `ICONV_LIB` \u5e76\u6307\u5b9a\u5907\u7528\u5e93\u7684\u6b63\u786e\u8def\u5f84\u6765\u8986\u76d6\u8be5\u540d\u79f0\u3002 \n- **WITH_MYSQL** - \u7d22\u5f15\u5668\u7528\u4e8e\u652f\u6301\u7d22\u5f15 MySQL \u6e90\u3002 \n- **DL_MYSQL** - \u4e0d\u4e0e MySQL \u5e93\u94fe\u63a5\u3002\u5982\u679c MySQL \u5df2\u94fe\u63a5\u4f46\u4e0d\u53ef\u7528\uff0c\u5219\u5373\u4f7f\u60a8\u60f3\u5904\u7406\u4e0e MySQL \u65e0\u5173\u7684\u5185\u5bb9\uff0c\u4e5f\u65e0\u6cd5\u542f\u52a8 the`indexer` \u5de5\u5177\u3002\u6b64\u9009\u9879\u8981\u6c42\u7d22\u5f15\u5668\u4ec5\u5728\u5904\u7406 MySQL \u6e90\u65f6\u624d\u5728\u8fd0\u884c\u65f6\u52a0\u8f7d\u8be5\u5e93\u3002 \n- **MYSQL_LIB** -- MySQL \u5e93\u6587\u4ef6\u7684\u540d\u79f0\u3002\u5f53\u60a8\u60f3\u5904\u7406 MySQL \u6e90\u65f6\uff0c\u7d22\u5f15\u5668\u5c06\u5c1d\u8bd5\u52a0\u8f7d\u8be5\u6587\u4ef6\u3002\u6b64\u9009\u9879\u6839\u636e\u53ef\u7528\u7684 MySQL \u5171\u4eab\u5e93\u68c0\u6d4b\u81ea\u52a8\u5199\u5165\u3002\u60a8\u4e5f\u53ef\u4ee5\u5728\u8fd0\u884c\u7d22\u5f15\u5668\u4e4b\u524d\uff0c\u901a\u8fc7\u8bbe\u7f6e\u73af\u5883\u53d8\u91cf `MYSQL_LIB` \u5e76\u6307\u5b9a\u5907\u7528\u5e93\u7684\u6b63\u786e\u8def\u5f84\u6765\u8986\u76d6\u8be5\u540d\u79f0\u3002 \n- **WITH_POSTGRESQL** - \u7d22\u5f15\u5668\u7528\u4e8e\u652f\u6301\u7d22\u5f15 PostgreSQL \u6e90\u3002 \n- **DL_POSTGRESQL** - \u4e0d\u4e0e PostgreSQL \u5e93\u94fe\u63a5\u3002\u5982\u679c PostgreSQL \u5df2\u94fe\u63a5\u4f46\u4e0d\u53ef\u7528\uff0c\u5219\u5373\u4f7f\u60a8\u60f3\u5904\u7406\u4e0e PostgreSQL \u65e0\u5173\u7684\u5185\u5bb9\uff0c\u4e5f\u65e0\u6cd5\u542f\u52a8 `indexer` ool\u3002\u6b64\u9009\u9879\u8981\u6c42\u7d22\u5f15\u5668\u4ec5\u5728\u5904\u7406 PostgreSQL \u6e90\u65f6\u624d\u5728\u8fd0\u884c\u65f6\u52a0\u8f7d\u8be5\u5e93\u3002 \n- **POSTGRESQL_LIB** - PostgreSQL \u5e93\u6587\u4ef6\u7684\u540d\u79f0\u3002\u7d22\u5f15\u5668\u5728\u5904\u7406 PostgreSQL \u6e90\u65f6\u5c06\u5c1d\u8bd5\u52a0\u8f7d\u6307\u5b9a\u7684 PostgreSQL \u5e93\u6587\u4ef6\u3002\u6b64\u9009\u9879\u6839\u636e\u53ef\u7528\u7684 PostgreSQL \u5171\u4eab\u5e93\u68c0\u6d4b\u81ea\u52a8\u786e\u5b9a\u3002\u60a8\u4e5f\u53ef\u4ee5\u5728\u8fd0\u884c\u7d22\u5f15\u5668\u4e4b\u524d\uff0c\u901a\u8fc7\u63d0\u4f9b\u73af\u5883\u53d8\u91cf `POSTGRESQL_LIB` \u5e76\u6307\u5b9a\u5907\u7528\u5e93\u7684\u6b63\u786e\u8def\u5f84\u6765\u8986\u76d6\u8be5\u540d\u79f0\u3002 \n- **LOCALDATADIR** - \u5b88\u62a4\u8fdb\u7a0b\u5b58\u50a8 binlogs \u7684\u9ed8\u8ba4\u8def\u5f84\u3002\u5982\u679c\u6b64\u8def\u5f84\u672a\u5728\u5b88\u62a4\u8fdb\u7a0b\u7684\u8fd0\u884c\u65f6\u914d\u7f6e\u4e2d\u63d0\u4f9b\u6216\u88ab\u663e\u5f0f\u7981\u7528\uff08\u5373\u4e0e\u6b64\u6784\u5efa\u914d\u7f6e\u65e0\u5173\u7684 `manticore.conf` \u6587\u4ef6\uff09\uff0c\u5219 binlogs \u5c06\u653e\u7f6e\u5728\u6b64\u8def\u5f84\u3002\u5b83\u901a\u5e38\u662f\u7edd\u5bf9\u8def\u5f84\uff0c\u4f46\u4e5f\u53ef\u4ee5\u4f7f\u7528\u76f8\u5bf9\u8def\u5f84\u3002\u60a8\u901a\u5e38\u65e0\u9700\u66f4\u6539\u6b64\u914d\u7f6e\u5b9a\u4e49\u7684\u9ed8\u8ba4\u503c\uff0c\u6839\u636e\u76ee\u6807\u7cfb\u7edf\uff0c\u53ef\u80fd\u7c7b\u4f3c `/var/data`\u3001`/var/lib/manticore/data` \u6216 `/usr/local/var/lib/manticore/data`\u3002 \n- **FULL_SHARE_DIR** - \u5b58\u50a8\u6240\u6709\u8d44\u6e90\u7684\u9ed8\u8ba4\u8def\u5f84\u3002\u5728\u542f\u52a8\u4efb\u4f55\u4f7f\u7528\u8be5\u6587\u4ef6\u5939\u4e2d\u6587\u4ef6\u7684\u5de5\u5177\u4e4b\u524d\uff0c\u53ef\u4ee5\u901a\u8fc7\u73af\u5883\u53d8\u91cf `FULL_SHARE_DIR` \u8986\u76d6\u6b64\u8def\u5f84\u3002\u8fd9\u662f\u4e00\u4e2a\u91cd\u8981\u8def\u5f84\uff0c\u56e0\u4e3a\u8bb8\u591a\u5185\u5bb9\u9ed8\u8ba4\u90fd\u671f\u671b\u5728\u6b64\u5904\u627e\u5230\uff0c\u5305\u62ec\u9884\u5b9a\u4e49\u5b57\u7b26\u96c6\u8868\u3001\u505c\u7528\u8bcd\u3001manticore \u6a21\u5757\u548c icu \u6570\u636e\u6587\u4ef6\uff0c\u5747\u653e\u7f6e\u4e8e\u8be5\u6587\u4ef6\u5939\u4e2d\u3002\u914d\u7f6e\u811a\u672c\u901a\u5e38\u4f1a\u5c06\u6b64\u8def\u5f84\u786e\u5b9a\u4e3a\u7c7b\u4f3c `/usr/share/manticore` \u6216 `/usr/local/share/manticore`\u3002 \n- **DISTR_BUILD** - \u53d1\u5e03\u8f6f\u4ef6\u5305\u9009\u9879\u7684\u5feb\u6377\u65b9\u5f0f\u3002\u5b83\u662f\u4e00\u4e2a\u5b57\u7b26\u4e32\u503c\uff0c\u8868\u793a\u76ee\u6807\u5e73\u53f0\u7684\u540d\u79f0\u3002\u53ef\u4ee5\u7528\u5b83\u6765\u4ee3\u66ff\u624b\u52a8\u914d\u7f6e\u6240\u6709\u9009\u9879\u3002\u5728 Debian \u548c Redhat Linux \u4e0a\uff0c\u9ed8\u8ba4\u503c\u53ef\u80fd\u901a\u8fc7\u8f7b\u91cf\u7ea7\u68c0\u6d4b\u786e\u5b9a\u5e76\u8bbe\u7f6e\u4e3a\u901a\u7528\u7684 'Debian' \u6216 'RHEL'\u3002\u5426\u5219\uff0c\u8be5\u503c\u672a\u5b9a\u4e49\u3002 \n- **PACK** - \u66f4\u65b9\u4fbf\u7684\u5feb\u6377\u65b9\u5f0f\u3002\u5b83\u8bfb\u53d6\u73af\u5883\u53d8\u91cf `DISTR`\uff0c\u5c06\u5176\u8d4b\u503c\u7ed9 **DISTR_BUILD** \u53c2\u6570\uff0c\u7136\u540e\u6309\u5e38\u89c4\u65b9\u5f0f\u5de5\u4f5c\u3002\u8fd9\u5728\u4f7f\u7528\u9884\u5148\u51c6\u5907\u7684\u6784\u5efa\u7cfb\u7edf\uff08\u5982 Docker \u5bb9\u5668\uff09\u4e2d\u6784\u5efa\u65f6\u975e\u5e38\u6709\u7528\uff0c `DISTR` \u53d8\u91cf\u5728\u7cfb\u7edf\u7ea7\u522b\u8bbe\u7f6e\uff0c\u5e76\u53cd\u6620\u5bb9\u5668\u6240\u9488\u5bf9\u7684\u76ee\u6807\u7cfb\u7edf\u3002 \n- **CMAKE_INSTALL_PREFIX** (path) - Manticore \u9884\u671f\u5b89\u88c5\u7684\u4f4d\u7f6e\u3002\u6784\u5efa\u4e0d\u4f1a\u6267\u884c\u4efb\u4f55\u5b89\u88c5\uff0c\u4f46\u4f1a\u51c6\u5907\u5728\u8fd0\u884c `cmake --install` \u547d\u4ee4\u6216\u521b\u5efa\u5305\u7136\u540e\u5b89\u88c5\u65f6\u6267\u884c\u7684\u5b89\u88c5\u89c4\u5219\u3002\u524d\u7f00\u53ef\u4ee5\u968f\u65f6\u66f4\u6539\uff0c\u5373\u4f7f\u5728\u5b89\u88c5\u8fc7\u7a0b\u4e2d\uff0c\u4e5f\u53ef\u4ee5\u901a\u8fc7\u8c03\u7528 \n `cmake --install . --prefix /path/to/installation`\u3002\u4f46\u662f\uff0c\u5728\u914d\u7f6e\u65f6\uff0c\u6b64\u53d8\u91cf\u7528\u4e8e\u521d\u59cb\u5316 `LOCALDATADIR` \u548c `FULL_SHARE_DIR` \u7684\u9ed8\u8ba4\u503c\u3002\u4f8b\u5982\uff0c\u5728\u914d\u7f6e\u65f6\u5c06\u5176\u8bbe\u7f6e\u4e3a `/my/custom` \u4f1a \n \u5f3a\u5236\u5c06 `LOCALDATADIR` \u786c\u7f16\u7801\u4e3a `/my/custom/var/lib/manticore/data`\uff0c\u5e76\u5c06 `FULL_SHARE_DIR` \u786c\u7f16\u7801\u4e3a \n `/my/custom/usr/share/manticore`\u3002 \n- **BUILD_TESTING** (bool) \u662f\u5426\u652f\u6301\u6d4b\u8bd5\u3002\u5982\u679c\u542f\u7528\uff0c\u5219\u5728\u6784\u5efa\u540e\u53ef\u4ee5\u8fd0\u884c 'ctest' \u6765\u6d4b\u8bd5\u6784\u5efa\u3002\u8bf7\u6ce8\u610f\uff0c\u6d4b\u8bd5\u9700\u8981\u989d\u5916\u7684\u4f9d\u8d56\uff0c\u4f8b\u5982\u81f3\u5c11\u9700\u8981 PHP cli\u3001Python \u4ee5\u53ca\u53ef\u7528\u7684 MySQL \u670d\u52a1\u5668\u548c\u6d4b\u8bd5\u6570\u636e\u5e93\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u6b64\u53c2\u6570\u4e3a\u5f00\u542f\u3002\u56e0\u6b64\uff0c\u5982\u679c\u4ec5\u60f3\u6784\u5efa\uff0c\u60a8\u53ef\u80fd\u9700\u8981\u901a\u8fc7\u663e\u5f0f\u6307\u5b9a 'off' \u503c\u6765\u7981\u7528\u6b64\u9009\u9879\u3002 \n- **BUILD_SRPMS** (bool) \u662f\u5426\u663e\u793a\u6784\u5efa Source RPM (SRPM) \u7684\u8bf4\u660e\u3002\u7531\u4e8e CPack \u5728\u57fa\u4e8e\u7ec4\u4ef6\u7684\u6253\u5305\u65b9\u9762\u7684\u9650\u5236\uff0cSRPM \u65e0\u6cd5\u4e0e\u4e8c\u8fdb\u5236 RPM \u540c\u65f6\u751f\u6210\u3002\u542f\u7528\u65f6\uff0c\u6784\u5efa\u7cfb\u7edf\u5c06\u663e\u793a\u4f7f\u7528\u6e90\u914d\u7f6e\u65b9\u6cd5\u6b63\u786e\u751f\u6210 SRPM \u7684\u8bf4\u660e\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u6b64\u53c2\u6570\u4e3a\u5173\u95ed\u3002 \n- **LIBS_BUNDLE** - \u5b58\u653e\u5404\u79cd\u5e93\u7684\u6587\u4ef6\u5939\u8def\u5f84\u3002\u8fd9\u4e3b\u8981\u4e0e Windows \u6784\u5efa\u76f8\u5173\uff0c\u4f46\u5982\u679c\u60a8\u9700\u8981\u9891\u7e41\u6784\u5efa\u4ee5\u907f\u514d\u6bcf\u6b21\u90fd\u4e0b\u8f7d\u7b2c\u4e09\u65b9\u6e90\u4ee3\u7801\uff0c\u4e5f\u53ef\u80fd\u5f88\u6709\u5e2e\u52a9\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u914d\u7f6e\u811a\u672c\u4e0d\u4f1a\u4fee\u6539\u6b64\u8def\u5f84\uff1b\u60a8\u5e94\u624b\u52a8\u5c06\u6240\u6709\u5185\u5bb9\u653e\u5728\u5176\u4e2d\u3002\u4f8b\u5982\uff0c\u5f53\u6211\u4eec\u9700\u8981\u652f\u6301\u8bcd\u5e72\u63d0\u53d6\u5668\u65f6\uff0c\u4f1a\u4ece Snowball \u4e3b\u9875\u4e0b\u8f7d\u6e90\u4ee3\u7801\u5305\uff0c\u7136\u540e\u89e3\u538b\u3001\u914d\u7f6e\u3001\u6784\u5efa\u7b49\u3002\u76f8\u53cd\uff0c\u60a8\u53ef\u4ee5\u5c06\u539f\u59cb\u6e90\u4ee3\u7801 tarball\uff08\u5373 `libstemmer_c.tgz`\uff09\u5b58\u653e\u5728\u6b64\u6587\u4ef6\u5939\u4e2d\u3002\u4e0b\u6b21\u4ece\u5934\u5f00\u59cb\u6784\u5efa\u65f6\uff0c\u914d\u7f6e\u811a\u672c\u5c06\u9996\u5148\u5728 bundle \u4e2d\u67e5\u627e\uff0c\u5982\u679c\u5728\u90a3\u91cc\u627e\u5230\u8bcd\u5e72\u63d0\u53d6\u5668\uff0c\u5c31\u4e0d\u4f1a\u518d\u6b21\u4ece Internet \u4e0b\u8f7d\u3002 \n- **CACHEB** - \u5b58\u653e\u7b2c\u4e09\u65b9\u5e93\u6784\u5efa\u7ed3\u679c\u7684\u6587\u4ef6\u5939\u8def\u5f84\u3002\u901a\u5e38\uff0c\u5728\u4f7f\u7528 galera\u3001re2\u3001icu \u7b49\u529f\u80fd\u65f6\uff0c\u4f1a\u5148\u4ece bundle \u4e0b\u8f7d\u6216\u83b7\u53d6\u6e90\u4ee3\u7801\uff0c\u7136\u540e\u89e3\u538b\u3001\u6784\u5efa\u5e76\u5b89\u88c5\u5230\u4e00\u4e2a\u4e34\u65f6\u5185\u90e8\u6587\u4ef6\u5939\u3002\u5f53\u6784\u5efa manticore \u65f6\uff0c\u8be5\u6587\u4ef6\u5939\u5c06\u4f5c\u4e3a\u6240\u9700\u529f\u80fd\u7684\u4f9d\u8d56\u6240\u5728\u4f4d\u7f6e\u3002\u6700\u540e\uff0c\u5b83\u4eec\u8981\u4e48\u4e0e manticore \u94fe\u63a5\uff08\u5982\u679c\u662f\u5e93\uff09\uff1b\u8981\u4e48\u76f4\u63a5\u8fdb\u5165\u53d1\u884c/\u5b89\u88c5\u5305\uff08\u5982 galera \u6216 icu \u6570\u636e\uff09\u3002\u5f53 **CACHEB** \u88ab\u5b9a\u4e49\u4e3a cmake \u914d\u7f6e\u53c2\u6570\u6216\u7cfb\u7edf\u73af\u5883\u53d8\u91cf\u65f6\uff0c\u5b83\u5c06\u88ab\u7528\u4f5c\u8fd9\u4e9b\u6784\u5efa\u7684\u76ee\u6807\u6587\u4ef6\u5939\u3002\u6b64\u6587\u4ef6\u5939\u53ef\u4ee5\u5728\u591a\u6b21\u6784\u5efa\u4e4b\u95f4\u4fdd\u7559\uff0c\u8fd9\u6837\u5b58\u50a8\u5728\u5176\u4e2d\u7684\u5e93\u5c31\u4e0d\u9700\u8981\u518d\u6b21\u6784\u5efa\uff0c\u4ece\u800c\u5927\u5927\u7f29\u77ed\u4e86\u6574\u4e2a\u6784\u5efa\u8fc7\u7a0b\u3002",
  26. "russian": "- **USE_SYSLOG** - \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c `syslog` \u0432 [\u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432](../Logging/Query_logging.md).\n- **WITH_GALERA** -\u0412\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u0438 \u0432 \u0434\u0435\u043c\u043e\u043d\u0435 \u043f\u043e\u0438\u0441\u043a\u0430. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u043f\u0440\u0438 \u0441\u0431\u043e\u0440\u043a\u0435, \u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Galera \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u044b, \u0441\u043e\u0431\u0440\u0430\u043d\u044b, \u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u0432 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432/\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443. \u041e\u0431\u044b\u0447\u043d\u043e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0441 Galera, \u043d\u043e \u043d\u0435 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0442\u044c \u0441\u0430\u043c\u0443 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 (\u0442.\u0435. \u0431\u0435\u0437 \u043c\u043e\u0434\u0443\u043b\u044f Galera, \u0431\u0435\u0437 \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u0438). \u041e\u0434\u043d\u0430\u043a\u043e \u0438\u043d\u043e\u0433\u0434\u0430 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u044f\u0432\u043d\u043e\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0435\u0441\u043b\u0438 \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0441\u0442\u0430\u0442\u0438\u0447\u043d\u044b\u0439 \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e \u0437\u0430\u043c\u044b\u0441\u043b\u0443 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u043d\u0438\u043a\u0430\u043a\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438, \u0442\u0430\u043a \u0447\u0442\u043e \u0434\u0430\u0436\u0435 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0432\u044b\u0437\u043e\u0432\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 'dlopen' \u0432\u043d\u0443\u0442\u0440\u0438 \u0434\u0435\u043c\u043e\u043d\u0430 \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u0442 \u043a \u043e\u0448\u0438\u0431\u043a\u0435 \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u043b\u0438\u043d\u043a\u043e\u0432\u043a\u0438.\n- **WITH_RE2** - \u0421\u0431\u043e\u0440\u043a\u0430 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439 RE2. \u042d\u0442\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u043b\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0432\u0440\u043e\u0434\u0435 [REGEX()](../Functions/String_functions.md#REGEX%28%29), \u0438 \u0434\u043b\u044f [regexp_filter](../Creating_a_table/NLP_and_tokenization/Low-level_tokenization.md#regexp_filter)\n \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438.\n- **WITH_RE2_FORCE_STATIC** - \u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 RE2, \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u0442 \u0438\u0445 \u0438 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043b\u0438\u043d\u043a\u0443\u0435\u0442, \u0442\u0430\u043a \u0447\u0442\u043e \u0438\u0442\u043e\u0433\u043e\u0432\u044b\u0435 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u043d\u0435 \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u0432\u0438\u0441\u0435\u0442\u044c \u043e\u0442 \u043d\u0430\u043b\u0438\u0447\u0438\u044f \u043e\u0431\u0449\u0435\u0439 `RE2` \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0432 \u0432\u0430\u0448\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435.\n- **WITH_STEMMER** - \u0421\u0431\u043e\u0440\u043a\u0430 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Snowball \u0434\u043b\u044f \u0441\u0442\u0435\u043c\u043c\u0438\u043d\u0433\u0430.\n- **WITH_STEMMER_FORCE_STATIC** - \u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 Snowball, \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u0442 \u0438\u0445 \u0438 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043b\u0438\u043d\u043a\u0443\u0435\u0442, \u0442\u0430\u043a \u0447\u0442\u043e \u0438\u0442\u043e\u0433\u043e\u0432\u044b\u0435 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u043d\u0435 \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u0432\u0438\u0441\u0435\u0442\u044c \u043e\u0442 \u043d\u0430\u043b\u0438\u0447\u0438\u044f \u043e\u0431\u0449\u0435\u0439 `libstemmer` \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0432 \u0432\u0430\u0448\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435.\n- **WITH_ICU** - \u0421\u0431\u043e\u0440\u043a\u0430 \u0441 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u043e\u0439 ICU (International Components for Unicode). \u041e\u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0441\u0435\u0433\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u043a\u0438\u0442\u0430\u0439\u0441\u043a\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430. \u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 morphology=`icu_chinese`.\n- **WITH_JIEBA** - \u0421\u0431\u043e\u0440\u043a\u0430 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430 \u0441\u0435\u0433\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u043a\u0438\u0442\u0430\u0439\u0441\u043a\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430 Jieba. \u041e\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0441\u0435\u0433\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u043a\u0438\u0442\u0430\u0439\u0441\u043a\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430. \u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 morphology=`jieba_chinese`.\n- **WITH_ICU_FORCE_STATIC** - \u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 ICU, \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u0442 \u0438\u0445 \u0438 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043b\u0438\u043d\u043a\u0443\u0435\u0442, \u0442\u0430\u043a \u0447\u0442\u043e \u0438\u0442\u043e\u0433\u043e\u0432\u044b\u0435 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u043d\u0435 \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u0432\u0438\u0441\u0435\u0442\u044c \u043e\u0442 \u043d\u0430\u043b\u0438\u0447\u0438\u044f \u043e\u0431\u0449\u0435\u0439 `icu` \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0432 \u0432\u0430\u0448\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435. \u0422\u0430\u043a\u0436\u0435 \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0444\u0430\u0439\u043b \u0434\u0430\u043d\u043d\u044b\u0445 ICU \u0432 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443/\u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432. \u0426\u0435\u043b\u044c \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 ICU \u2014 \u0438\u043c\u0435\u0442\u044c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0431\u044b\u043b\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e \u0438 \u043d\u0435 \u0437\u0430\u0432\u0438\u0441\u0435\u043b\u043e \u043e\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a. \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0432\u044b \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0451\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0443\u044e ICU, \u0442\u0430\u043a \u043a\u0430\u043a \u043e\u043d\u0430 \u043c\u043e\u0436\u0435\u0442 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0441\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u0431\u0435\u0437 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u043f\u0435\u0440\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438 \u0434\u0435\u043c\u043e\u043d\u0430 Manticore. \u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0443\u0436\u043d\u043e \u044f\u0432\u043d\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u0443 \u043e\u043f\u0446\u0438\u044e. \u042d\u0442\u043e \u0442\u0430\u043a\u0436\u0435 \u0441\u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0442 \u043c\u0435\u0441\u0442\u043e, \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u043c\u043e\u0435 \u0444\u0430\u0439\u043b\u043e\u043c \u0434\u0430\u043d\u043d\u044b\u0445 ICU (\u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 30M), \u0442\u0430\u043a \u043a\u0430\u043a \u043e\u043d \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432\u043a\u043b\u044e\u0447\u0451\u043d \u0432 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432.\n- **WITH_SSL** - \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 HTTPS, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 MySQL \u043a \u0434\u0435\u043c\u043e\u043d\u0443. \u0421\u0438\u0441\u0442\u0435\u043c\u043d\u0430\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 OpenSSL \u0431\u0443\u0434\u0435\u0442 \u0441\u0432\u044f\u0437\u0430\u043d\u0430 \u0441 \u0434\u0435\u043c\u043e\u043d\u043e\u043c. \u042d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0434\u0435\u043c\u043e\u043d\u0430 \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f OpenSSL. \u042d\u0442\u043e \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 HTTPS, \u043d\u043e \u043d\u0435 \u0441\u0442\u0440\u043e\u0433\u043e \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430 (\u0442.\u0435. \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 SSL \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043f\u043e HTTPS, \u043d\u043e \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u044b \u0431\u0443\u0434\u0443\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c). \u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 SSL \u0432\u0435\u0440\u0441\u0438\u0439 \u043e\u0442 1.0.2 \u0434\u043e 1.1.1 \u043c\u043e\u0433\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f Manticore, \u043e\u0434\u043d\u0430\u043a\u043e \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e **\u0440\u0430\u0434\u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u043d\u0430\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0430\u043c\u0443\u044e \u0441\u0432\u0435\u0436\u0443\u044e SSL\n \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443**. \u041f\u043e\u043a\u0430 \u0447\u0442\u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e v1.1.1, \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u0438 (\n \u0441\u043c. [\u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044e \u0432\u044b\u043f\u0443\u0441\u043a\u043e\u0432 openssl](https://www.openssl.org/policies/releasestrat.html)\n- **WITH_ZLIB** - \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u0435\u0440\u043e\u043c \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0441\u0436\u0430\u0442\u044b\u043c\u0438 \u0441\u0442\u043e\u043b\u0431\u0446\u0430\u043c\u0438 \u0438\u0437 MySQL. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u0435\u043c\u043e\u043d\u043e\u043c \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0441\u0436\u0430\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 MySQL.\n- **WITH_ODBC** - \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u0435\u0440\u043e\u043c \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432 \u0438\u0437 \u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440\u043e\u0432 ODBC (\u043e\u0431\u044b\u0447\u043d\u043e \u044d\u0442\u043e UnixODBC \u0438 iODBC). \u0412 MS Windows ODBC \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u043c \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430\u043c\u0438 MS SQL, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 `MSSQL` \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u0435\u0442 \u044d\u0442\u043e\u0442 \u0444\u043b\u0430\u0433.\n- **DL_ODBC** - \u043d\u0435 \u043b\u0438\u043d\u043a\u0443\u0435\u0442\u0441\u044f \u0441 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u043e\u0439 ODBC. \u0415\u0441\u043b\u0438 ODBC \u0441\u0432\u044f\u0437\u0430\u043d\u0430, \u043d\u043e \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430, \u0432\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 indexer \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u043d\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u043e\u0435 \u0441 ODBC. \u042d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0437\u0430\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 indexer \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u043c ODBC.\n- **ODBC_LIB** - \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 ODBC. Indexer \u0431\u0443\u0434\u0435\u0442 \u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b, \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u0437\u0430\u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a ODBC. \u042d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043e\u0431\u0449\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a ODBC. \u0412\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u044d\u0442\u043e \u0438\u043c\u044f \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f, \u0437\u0430\u0434\u0430\u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f `ODBC_LIB` \u0441 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u043c \u043f\u0443\u0442\u0435\u043c \u043a \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435 \u043f\u0435\u0440\u0435\u0434 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c indexer.\n- **WITH_EXPAT** - \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u0435\u0440\u043e\u043c \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432 xmlpipe.\n- **DL_EXPAT** - \u043d\u0435 \u043b\u0438\u043d\u043a\u0443\u0435\u0442\u0441\u044f \u0441 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u043e\u0439 EXPAT. \u0415\u0441\u043b\u0438 EXPAT \u0441\u0432\u044f\u0437\u0430\u043d\u0430, \u043d\u043e \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430, \u0432\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 `indexer` \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u043d\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u043e\u0435 \u0441 xmlpipe. \u042d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0437\u0430\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 indexer \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u043c xmlpipe.\n- **EXPAT_LIB** - \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 EXPAT. Indexer \u043f\u043e\u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b, \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u0437\u0430\u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a xmlpipe. \u042d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0438\u0437 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043e\u0431\u0449\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a EXPAT. \u0412\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u044d\u0442\u043e \u0438\u043c\u044f \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f, \u0437\u0430\u0434\u0430\u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f EXPAT_LIB \u0441 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u043c \u043f\u0443\u0442\u0435\u043c \u043a \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435 \u043f\u0435\u0440\u0435\u0434 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c indexer.\n- **WITH_ICONV** - \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043e\u043a \u043f\u0440\u0438 \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432 xmlpipe \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e indexer.\n- **DL_ICONV** - \u043d\u0435 \u043b\u0438\u043d\u043a\u0443\u0435\u0442\u0441\u044f \u0441 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u043e\u0439 iconv. \u0415\u0441\u043b\u0438 iconv \u0441\u0432\u044f\u0437\u0430\u043d\u0430, \u043d\u043e \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430, \u0432\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 `indexer` \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u043d\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u043e\u0435 \u0441 xmlpipe. \u042d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0437\u0430\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 indexer \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u043c xmlpipe.\n- **ICONV_LIB** - \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 iconv. Indexer \u043f\u043e\u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b, \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u0437\u0430\u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a xmlpipe. \u042d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0438\u0437 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043e\u0431\u0449\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a iconv. \u0412\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u044d\u0442\u043e \u0438\u043c\u044f \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f, \u0437\u0430\u0434\u0430\u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f `ICONV_LIB` \u0441 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u043c \u043f\u0443\u0442\u0435\u043c \u043a \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435 \u043f\u0435\u0440\u0435\u0434 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c indexer.\n- **WITH_MYSQL** - \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u0435\u0440\u043e\u043c \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432 MySQL.\n- **DL_MYSQL** - \u043d\u0435 \u043b\u0438\u043d\u043a\u0443\u0435\u0442\u0441\u044f \u0441 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u043e\u0439 MySQL. \u0415\u0441\u043b\u0438 MySQL \u0441\u0432\u044f\u0437\u0430\u043d\u0430, \u043d\u043e \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430, \u0432\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442`indexer` \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u043d\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u043e\u0435 \u0441 MySQL. \u042d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0437\u0430\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 indexer \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u043c MySQL.\n- **MYSQL_LIB** -- \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 MySQL. Indexer \u0431\u0443\u0434\u0435\u0442 \u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b, \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u0437\u0430\u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a MySQL. \u042d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0438\u0437 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043e\u0431\u0449\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a MySQL. \u0412\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u044d\u0442\u043e \u0438\u043c\u044f \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f, \u0437\u0430\u0434\u0430\u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f `MYSQL_LIB` \u0441 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u043c \u043f\u0443\u0442\u0435\u043c \u043a \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435 \u043f\u0435\u0440\u0435\u0434 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c indexer.\n- **WITH_POSTGRESQL** - \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u0435\u0440\u043e\u043c \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432 PostgreSQL.\n- **DL_POSTGRESQL** - \u043d\u0435 \u043b\u0438\u043d\u043a\u0443\u0435\u0442\u0441\u044f \u0441 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u043e\u0439 PostgreSQL. \u0415\u0441\u043b\u0438 PostgreSQL \u0441\u0432\u044f\u0437\u0430\u043d\u0430, \u043d\u043e \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430, \u0432\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 `indexer` ool \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u043d\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u043e\u0435 \u0441 PostgreSQL. \u042d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0437\u0430\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 indexer \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u043c PostgreSQL.\n- **POSTGRESQL_LIB** - \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 postgresql. Indexer \u0431\u0443\u0434\u0435\u0442 \u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 postgresql \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430 postgresql. \u042d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0438\u0437 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043e\u0431\u0449\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a postgresql. \u0412\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u044d\u0442\u043e \u0438\u043c\u044f \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f, \u0437\u0430\u0434\u0430\u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f `POSTGRESQL_LIB` \u0441 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u043c \u043f\u0443\u0442\u0435\u043c \u043a \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435 \u043f\u0435\u0440\u0435\u0434 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c indexer.\n- **LOCALDATADIR** - \u043f\u0443\u0442\u044c \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0433\u0434\u0435 \u0434\u0435\u043c\u043e\u043d \u0445\u0440\u0430\u043d\u0438\u0442 binlogs. \u0415\u0441\u043b\u0438 \u044d\u0442\u043e\u0442 \u043f\u0443\u0442\u044c \u043d\u0435 \u0437\u0430\u0434\u0430\u043d \u0438\u043b\u0438 \u044f\u0432\u043d\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d \u0432 runtime-\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0434\u0435\u043c\u043e\u043d\u0430 (\u0442.\u0435. \u0444\u0430\u0439\u043b `manticore.conf`, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0435 \u0441\u0432\u044f\u0437\u0430\u043d \u0441 \u044d\u0442\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439 \u0441\u0431\u043e\u0440\u043a\u0438), binlogs \u0431\u0443\u0434\u0443\u0442 \u043f\u043e\u043c\u0435\u0449\u0435\u043d\u044b \u0432 \u044d\u0442\u043e\u0442 \u043f\u0443\u0442\u044c. \u041e\u0431\u044b\u0447\u043d\u043e \u044d\u0442\u043e \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u044b\u0439 \u043f\u0443\u0442\u044c, \u043e\u0434\u043d\u0430\u043a\u043e \u043e\u043d \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u043d \u0431\u044b\u0442\u044c \u0442\u0430\u043a\u043e\u0432\u044b\u043c, \u0434\u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f \u0438 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0443\u0442\u0438. \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0432\u0430\u043c \u043d\u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439, \u043a\u043e\u0442\u043e\u0440\u043e\u0435, \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0447\u0435\u043c-\u0442\u043e \u0432\u0440\u043e\u0434\u0435 `/var/data`, `/var/lib/manticore/data` \u0438\u043b\u0438 `/usr/local/var/lib/manticore/data`.\n- **FULL_SHARE_DIR** - \u043f\u0443\u0442\u044c \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0433\u0434\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0432\u0441\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b. \u041e\u043d \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f `FULL_SHARE_DIR` \u043f\u0435\u0440\u0435\u0434 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c \u043b\u044e\u0431\u043e\u0433\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0435\u0433\u043e \u0444\u0430\u0439\u043b\u044b \u0438\u0437 \u044d\u0442\u043e\u0439 \u043f\u0430\u043f\u043a\u0438. \u042d\u0442\u043e \u0432\u0430\u0436\u043d\u044b\u0439 \u043f\u0443\u0442\u044c, \u0442\u0430\u043a \u043a\u0430\u043a \u0442\u0430\u043c \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u043d\u0430\u0439\u0442\u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0432\u0435\u0449\u0435\u0439. \u0421\u044e\u0434\u0430 \u0432\u0445\u043e\u0434\u044f\u0442 \u043f\u0440\u0435\u0434\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043e\u043a, \u0441\u0442\u043e\u043f-\u0441\u043b\u043e\u0432\u0430, \u043c\u043e\u0434\u0443\u043b\u0438 manticore \u0438 \u0444\u0430\u0439\u043b\u044b \u0434\u0430\u043d\u043d\u044b\u0445 icu, \u0432\u0441\u0435 \u043f\u043e\u043c\u0435\u0449\u0451\u043d\u043d\u044b\u0435 \u0432 \u044d\u0442\u0443 \u043f\u0430\u043f\u043a\u0443. \u0421\u043a\u0440\u0438\u043f\u0442 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043e\u0431\u044b\u0447\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u044d\u0442\u043e\u0442 \u043f\u0443\u0442\u044c \u043a\u0430\u043a \u0447\u0442\u043e-\u0442\u043e \u0432\u0440\u043e\u0434\u0435 `/usr/share/manticore` \u0438\u043b\u0438 `/usr/local/share/manticore`.\n- **DISTR_BUILD** - \u044f\u0440\u043b\u044b\u043a \u0434\u043b\u044f \u043e\u043f\u0446\u0438\u0439 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u0430\u043a\u0435\u0442\u043e\u0432. \u042d\u0442\u043e \u0441\u0442\u0440\u043e\u043a\u043e\u0432\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b. \u041e\u043d\u043e \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0432\u043c\u0435\u0441\u0442\u043e \u0440\u0443\u0447\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432\u0441\u0435\u0445 \u043e\u043f\u0446\u0438\u0439. \u0412 Debian \u0438 Redhat Linux \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e \u043f\u0443\u0442\u0451\u043c \u043b\u0451\u0433\u043a\u043e\u0439 \u0438\u043d\u0441\u043f\u0435\u043a\u0446\u0438\u0438 \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e \u043a\u0430\u043a \u043e\u0431\u043e\u0431\u0449\u0451\u043d\u043d\u043e\u0435 'Debian' \u0438\u043b\u0438 'RHEL'. \u0412 \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f.\n- **PACK** - \u0435\u0449\u0451 \u0431\u043e\u043b\u0435\u0435 \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u044f\u0440\u043b\u044b\u043a. \u041e\u043d \u0447\u0438\u0442\u0430\u0435\u0442 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f `DISTR`, \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u0442 \u0435\u0451 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0443 **DISTR_BUILD** \u0438 \u0437\u0430\u0442\u0435\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u043e. \u042d\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u043f\u0440\u0438 \u0441\u0431\u043e\u0440\u043a\u0435 \u0432 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0441\u0431\u043e\u0440\u043a\u0438, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b Docker, \u0433\u0434\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f `DISTR` \u0437\u0430\u0434\u0430\u0451\u0442\u0441\u044f \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438 \u043e\u0442\u0440\u0430\u0436\u0430\u0435\u0442 \u0446\u0435\u043b\u0435\u0432\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440.\n- **CMAKE_INSTALL_PREFIX** (path) - \u043f\u0443\u0442\u044c, \u043a\u0443\u0434\u0430 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c Manticore. \u0421\u0431\u043e\u0440\u043a\u0430 \u043d\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443, \u043d\u043e \u043f\u043e\u0434\u0433\u043e\u0442\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u043f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b `cmake --install` \u0438\u043b\u0438 \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043f\u0430\u043a\u0435\u0442\u0430 \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0435\u0433\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435. \u041f\u0440\u0435\u0444\u0438\u043a\u0441 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0451\u043d \u0432 \u043b\u044e\u0431\u043e\u0439 \u043c\u043e\u043c\u0435\u043d\u0442, \u0434\u0430\u0436\u0435 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438, \u0432\u044b\u0437\u043e\u0432\u043e\u043c\n `cmake --install . --prefix /path/to/installation`. \u041e\u0434\u043d\u0430\u043a\u043e \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u044d\u0442\u0430 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0434\u043b\u044f `LOCALDATADIR` \u0438 `FULL_SHARE_DIR`. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0435\u0451 \u0432 `/my/custom` \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\n \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u0442 \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e `LOCALDATADIR` \u0431\u0443\u0434\u0435\u0442 \u0436\u0451\u0441\u0442\u043a\u043e \u0437\u0430\u0434\u0430\u043d \u043a\u0430\u043a `/my/custom/var/lib/manticore/data`, \u0430 `FULL_SHARE_DIR` \u043a\u0430\u043a\n `/my/custom/usr/share/manticore`.\n- **BUILD_TESTING** (bool) \u043d\u0443\u0436\u043d\u0430 \u043b\u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0415\u0441\u043b\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043e, \u043f\u043e\u0441\u043b\u0435 \u0441\u0431\u043e\u0440\u043a\u0438 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c 'ctest' \u0438 \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0431\u043e\u0440\u043a\u0443. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u0435\u0442 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438, \u0442\u0430\u043a\u0438\u0435 \u043a\u0430\u043a \u043d\u0430\u043b\u0438\u0447\u0438\u0435 PHP cli, Python \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 MySQL \u0441 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0439 \u0431\u0430\u0437\u043e\u0439. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u044d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0432\u043a\u043b\u044e\u0447\u0451\u043d. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u043b\u044f '\u043f\u0440\u043e\u0441\u0442\u043e \u0441\u0431\u043e\u0440\u043a\u0438' \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043e\u043f\u0446\u0438\u044e, \u044f\u0432\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 'off'.\n- **BUILD_SRPMS** (bool) \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043b\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u043f\u043e \u0441\u0431\u043e\u0440\u043a\u0435 Source RPMs (SRPMs). \u0418\u0437-\u0437\u0430 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439 CPack \u043f\u0440\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043d\u043e\u043c \u0443\u043f\u0430\u043a\u043e\u0432\u043a\u0435 SRPMs \u043d\u0435 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u043c\u0438 RPM. \u041f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0441\u0431\u043e\u0440\u043a\u0438 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u043f\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 SRPM \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043c\u0435\u0442\u043e\u0434\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u044d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d.\n- **LIBS_BUNDLE** - \u043f\u0443\u0442\u044c \u043a \u043f\u0430\u043f\u043a\u0435 \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430\u043c\u0438. \u042d\u0442\u043e \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u0432 Windows, \u043d\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0438 \u0432 \u0434\u0440\u0443\u0433\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445, \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u044d\u0442\u043e\u0442 \u043f\u0443\u0442\u044c \u043d\u0435 \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u043c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438; \u0432\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u043f\u043e\u043c\u0435\u0449\u0430\u0442\u044c \u0432\u0441\u0451 \u0442\u0443\u0434\u0430. \u041a\u043e\u0433\u0434\u0430, \u0441\u043a\u0430\u0436\u0435\u043c, \u043d\u0443\u0436\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0441\u0442\u0435\u043c\u043c\u0435\u0440\u0430, \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u044b \u0441 \u0441\u0430\u0439\u0442\u0430 Snowball, \u0437\u0430\u0442\u0435\u043c \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u0430\u043d\u044b, \u0441\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u044b, \u0441\u043e\u0431\u0440\u0430\u043d\u044b \u0438 \u0442.\u0434. \u0412\u043c\u0435\u0441\u0442\u043e \u044d\u0442\u043e\u0433\u043e \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u0440\u0445\u0438\u0432 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432 (\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u043c\u0435\u0435\u0442 \u0438\u043c\u044f `libstemmer_c.tgz`) \u0432 \u044d\u0442\u0443 \u043f\u0430\u043f\u043a\u0443. \u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0440\u0430\u0437 \u043f\u0440\u0438 \u0441\u0431\u043e\u0440\u043a\u0435 \u0441 \u043d\u0443\u043b\u044f \u0441\u043a\u0440\u0438\u043f\u0442 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442 \u0431\u0430\u043d\u0434\u043b, \u0438 \u0435\u0441\u043b\u0438 \u043d\u0430\u0439\u0434\u0451\u0442 \u0442\u0430\u043c \u0441\u0442\u0435\u043c\u043c\u0435\u0440, \u043e\u043d \u043d\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442 \u0435\u0433\u043e \u0441\u043d\u043e\u0432\u0430 \u0438\u0437 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430.\n- **CACHEB** - \u043f\u0443\u0442\u044c \u043a \u043f\u0430\u043f\u043a\u0435 \u0441\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0451\u043d\u043d\u044b\u043c\u0438 \u0441\u0431\u043e\u0440\u043a\u0430\u043c\u0438 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a. \u041e\u0431\u044b\u0447\u043d\u043e \u0442\u0430\u043a\u0438\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b, \u043a\u0430\u043a galera, re2, icu \u0438 \u0442.\u0434., \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u044e\u0442\u0441\u044f \u0438\u043b\u0438 \u0431\u0435\u0440\u0443\u0442\u0441\u044f \u0438\u0437 \u0431\u0430\u043d\u0434\u043b\u0430, \u0437\u0430\u0442\u0435\u043c \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u044b\u0432\u0430\u044e\u0442\u0441\u044f, \u0441\u043e\u0431\u0438\u0440\u0430\u044e\u0442\u0441\u044f \u0438 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0432\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044e\u044e \u043f\u0430\u043f\u043a\u0443. \u041f\u0440\u0438 \u0441\u0431\u043e\u0440\u043a\u0435 manticore \u044d\u0442\u0430 \u043f\u0430\u043f\u043a\u0430 \u0437\u0430\u0442\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u043c\u0435\u0441\u0442\u043e, \u0433\u0434\u0435 \u0440\u0430\u0441\u043f\u043e\u043b\u0430\u0433\u0430\u044e\u0442\u0441\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0448\u0435\u043d\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b. \u0412 \u043a\u043e\u043d\u0446\u0435 \u043e\u043d\u0438 \u043b\u0438\u0431\u043e \u043b\u0438\u043d\u043a\u0443\u044e\u0442\u0441\u044f \u0441 manticore (\u0435\u0441\u043b\u0438 \u044d\u0442\u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430), \u043b\u0438\u0431\u043e \u0438\u0434\u0443\u0442 \u043f\u0440\u044f\u043c\u043e \u0432 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432/\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, galera \u0438\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 icu). \u041a\u043e\u0433\u0434\u0430 **CACHEB** \u0437\u0430\u0434\u0430\u043d\u0430 \u043b\u0438\u0431\u043e \u043a\u0430\u043a \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 cmake, \u043b\u0438\u0431\u043e \u043a\u0430\u043a \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f, \u043e\u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u043f\u0430\u043f\u043a\u0438 \u0434\u043b\u044f \u044d\u0442\u0438\u0445 \u0441\u0431\u043e\u0440\u043e\u043a. \u042d\u0442\u0443 \u043f\u0430\u043f\u043a\u0443 \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0442\u044c \u043c\u0435\u0436\u0434\u0443 \u0441\u0431\u043e\u0440\u043a\u0430\u043c\u0438, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u0442\u0430\u043c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u043f\u0435\u0440\u0435\u0441\u043e\u0431\u0438\u0440\u0430\u043b\u0438\u0441\u044c, \u0447\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043e\u043a\u0440\u0430\u0449\u0430\u0435\u0442 \u0432\u0440\u0435\u043c\u044f \u0432\u0441\u0435\u0439 \u0441\u0431\u043e\u0440\u043a\u0438."
  27. },
  28. "is_code_or_comment": false,
  29. "model": "openai:o4-mini",
  30. "updated_at": 1766371679
  31. },
  32. "41d6e806c4a1b5051e872286c98e222e05cadc12b2225b6c4410702995f27bcb": {
  33. "original": "If you want to specify the build type but don't want to care about whether it is a 'single' or 'multi' config generator - just provide the necessary keys in both places. I.e., configure with `-DCMAKE_BUILD_TYPE=Debug`, and then build with `--config Debug`. Just be sure that both values are the same. If the target builder is a single-config, it will consume the configuration param. If it is multi-config, the configuration param will be ignored, but the correct build configuration will be selected by the `--config` key.\n\nIf you want `RelWithDebInfo` (i.e. just build for production) and know you're on a single-config platform (that is all, except Windows) - you can omit the `--config` flag on the cmake invocation. The default `CMAKE_BUILD_TYPE=RelWithDebInfo` will be configured then, and used. All the commands for 'building', 'installation' and 'building package' will become shorter then.\n\n#### Explicitly select build system generators\n\nCmake is the tool that doesn't perform building by itself, but it generates rules for the local build system.\nUsually, it determines the available build system well, but sometimes you might need to provide a generator explicitly. You\ncan run `cmake -G` and review the list of available generators.\n\n- On Windows, if you have more than one version of Visual Studio installed, you might need to specify which one to use,\nas:\nCODE_BLOCK_14\n- On all other platforms - usually Unix Makefiles are used, but you can specify another one, such as Ninja, or Ninja Multi-Config, as:\n Multi-Config`, as:\nCODE_BLOCK_15\n or\nCODE_BLOCK_16\nNinja Multi-Config is quite useful as it is really 'multi-config' and available on Linux/macOS/BSD. With this generator, you may shift the choosing of configuration type to build time, and also you may build several configurations in one and the same build folder, changing only the `--config` param.\n\n### Caveats\n\n1. If you want to finally build a full-featured RPM package, the path to the build directory must be long enough in order to correctly build debug symbols.\nLike `/manticore012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789`, for example. That is because RPM tools modify the path over compiled binaries when building debug info, and it can just write over existing room and won't allocate more. The aforementioned long path has 100 chars and that is quite enough for such a case.\n\n## External dependencies\n\nSome libraries should be available if you want to use them.\n- For indexing (`indexer` tool): `expat`, `iconv`, `mysql`, `odbc`, `postgresql`. Without them, you can only process `tsv` and `csv` sources.\n- For serving queries (`searchd` daemon): `openssl` might be necessary.\n- For all (required, mandatory!) we need the Boost library. The minimal version is 1.61.0, however, we build the binaries with a fresher version 1.75.0. Even more recent versions (like 1.76) should also be okay. On Windows, you can download pre-built Boost from their site (boost.org) and install it into the default suggested path (i.e. `C:\\\\boost...`). On MacOs, the one provided in brew is okay. On Linux, you can check the available version in official repositories, and if it doesn't match requirements, you can build from sources. We need the component 'context', you can also build components 'system' and 'program_options', they will be necessary if you also want to build Galera library from the sources. Look into `dist/build_dockers/xxx/boost_175/Dockerfile` for a short self-documented script/instruction on how to do it.\n\nOn the build system, you need the 'dev' or 'devel' versions of these packages installed (i.e. - libmysqlclient-devel, unixodbc-devel, etc. Look to our dockerfiles for the names of concrete packages).\n\nOn run systems, these packages should be present at least in the final (non-dev) variants. (devel variants usually larger, as they include not only target binaries, but also different development stuff like include headers, etc.).\n\n### Building on Windows\n\nApart from necessary prerequisites, you might need prebuilt `expat`, `iconv`, `mysql`, and `postgresql` client libraries. You have to either build them yourself or contact us to get our build bundle (a simple zip archive where the folder with these targets is located).\n\n- ODBC is not necessary as it is a system library.\n- OpenSSL might be built from sources or downloaded prebuilt from https://slproweb.com/products/Win32OpenSSL.html (as mentioned in the cmake internal script on FindOpenSSL).\n- Boost might be downloaded pre-built from https://www.boost.org/ releases.\n\n### See what is compiled\n\nRun `indexer -h`. It will show which features were configured and built (whether they're explicit or investigated, doesn't matter):\n\nCODE_BLOCK_17\n<!-- proofread -->\n\n",
  34. "translations": {
  35. "chinese": "\u5982\u679c\u4f60\u60f3\u8981\u6307\u5b9a\u6784\u5efa\u7c7b\u578b\uff0c\u4f46\u4e0d\u60f3\u5173\u5fc3\u5b83\u662f 'single' \u8fd8\u662f 'multi' \u914d\u7f6e\u751f\u6210\u5668\u2014\u2014\u53ea\u9700\u5728\u4e24\u4e2a\u4f4d\u7f6e\u63d0\u4f9b\u5fc5\u8981\u7684\u952e\u3002\u5373\uff0c\u4f7f\u7528 `-DCMAKE_BUILD_TYPE=Debug` \u8fdb\u884c\u914d\u7f6e\uff0c\u7136\u540e\u4f7f\u7528 `--config Debug` \u8fdb\u884c\u6784\u5efa\u3002\u53ea\u8981\u786e\u4fdd\u4e24\u4e2a\u503c\u76f8\u540c\u5373\u53ef\u3002\u5982\u679c\u76ee\u6807\u6784\u5efa\u5668\u662f\u5355\u914d\u7f6e\uff0c\u5b83\u5c06\u4f7f\u7528\u914d\u7f6e\u53c2\u6570\u3002\u5982\u679c\u662f\u591a\u914d\u7f6e\uff0c\u914d\u7f6e\u53c2\u6570\u5c06\u88ab\u5ffd\u7565\uff0c\u4f46\u6b63\u786e\u7684\u6784\u5efa\u914d\u7f6e\u5c06\u901a\u8fc7 `--config` \u952e\u9009\u62e9\u3002\n\n\u5982\u679c\u4f60\u60f3\u4f7f\u7528 `RelWithDebInfo`\uff08\u5373\u4ec5\u6784\u5efa\u751f\u4ea7\u73af\u5883\uff09\u5e76\u4e14\u77e5\u9053\u4f60\u5904\u4e8e\u5355\u914d\u7f6e\u5e73\u53f0\uff08\u9664\u4e86 Windows \u4ee5\u5916\u7684\u6240\u6709\u5e73\u53f0\uff09\u2014\u2014\u4f60\u53ef\u4ee5\u5728 cmake \u8c03\u7528\u65f6\u7701\u7565 `--config` \u6807\u5fd7\u3002\u6b64\u65f6\u5c06\u914d\u7f6e\u9ed8\u8ba4\u7684 `CMAKE_BUILD_TYPE=RelWithDebInfo`\uff0c\u5e76\u4f7f\u7528\u5b83\u3002\u7136\u540e\uff0c\u201c\u6784\u5efa\u201d\u3001\u201c\u5b89\u88c5\u201d\u548c\u201c\u6784\u5efa\u5305\u201d\u7684\u6240\u6709\u547d\u4ee4\u90fd\u4f1a\u53d8\u5f97\u66f4\u7b80\u77ed\u3002\n\n#### \u663e\u5f0f\u9009\u62e9\u6784\u5efa\u7cfb\u7edf\u751f\u6210\u5668\n\nCMake \u662f\u4e00\u4e2a\u672c\u8eab\u4e0d\u6267\u884c\u6784\u5efa\u7684\u5de5\u5177\uff0c\u4f46\u5b83\u4e3a\u672c\u5730\u6784\u5efa\u7cfb\u7edf\u751f\u6210\u89c4\u5219\u3002\n\u901a\u5e38\uff0c\u5b83\u80fd\u5f88\u597d\u5730\u786e\u5b9a\u53ef\u7528\u7684\u6784\u5efa\u7cfb\u7edf\uff0c\u4f46\u6709\u65f6\u4f60\u53ef\u80fd\u9700\u8981\u663e\u5f0f\u63d0\u4f9b\u751f\u6210\u5668\u3002\u4f60\n\u53ef\u4ee5\u8fd0\u884c `cmake -G` \u5e76\u67e5\u770b\u53ef\u7528\u751f\u6210\u5668\u7684\u5217\u8868\u3002\n\n- \u5728 Windows \u4e0a\uff0c\u5982\u679c\u4f60\u5b89\u88c5\u4e86\u591a\u4e2a\u7248\u672c\u7684 Visual Studio\uff0c\u4f60\u53ef\u80fd\u9700\u8981\u6307\u5b9a\u4f7f\u7528\u54ea\u4e00\u4e2a\uff0c\n \u4f8b\u5982\uff1a\nCODE_BLOCK_14\n- \u5728\u6240\u6709\u5176\u4ed6\u5e73\u53f0\u4e0a\u2014\u2014\u901a\u5e38\u4f7f\u7528 Unix Makefiles\uff0c\u4f46\u4f60\u53ef\u4ee5\u6307\u5b9a\u53e6\u4e00\u4e2a\uff0c\u4f8b\u5982 Ninja \u6216 Ninja Multi-Config\uff0c\u4f8b\u5982\uff1a\n Multi-Config`\uff0c\u4f8b\u5982\uff1a\nCODE_BLOCK_15\n \u6216\nCODE_BLOCK_16\nNinja Multi-Config \u975e\u5e38\u6709\u7528\uff0c\u56e0\u4e3a\u5b83\u786e\u5b9e\u662f\u201c\u591a\u914d\u7f6e\u201d\u7684\uff0c\u5e76\u4e14\u5728 Linux/macOS/BSD \u4e0a\u53ef\u7528\u3002\u4f7f\u7528\u6b64\u751f\u6210\u5668\uff0c\u4f60\u53ef\u4ee5\u5c06\u914d\u7f6e\u7c7b\u578b\u7684\u9009\u62e9\u63a8\u8fdf\u5230\u6784\u5efa\u65f6\uff0c\u5e76\u4e14\u53ef\u4ee5\u5728\u540c\u4e00\u4e2a\u6784\u5efa\u6587\u4ef6\u5939\u4e2d\u6784\u5efa\u591a\u4e2a\u914d\u7f6e\uff0c\u53ea\u9700\u66f4\u6539 `--config` \u53c2\u6570\u5373\u53ef\u3002\n\n### \u6ce8\u610f\u4e8b\u9879\n\n1. \u5982\u679c\u4f60\u6700\u7ec8\u60f3\u8981\u6784\u5efa\u4e00\u4e2a\u529f\u80fd\u9f50\u5168\u7684 RPM \u5305\uff0c\u6784\u5efa\u76ee\u5f55\u7684\u8def\u5f84\u5fc5\u987b\u8db3\u591f\u957f\uff0c\u4ee5\u4fbf\u6b63\u786e\u6784\u5efa\u8c03\u8bd5\u7b26\u53f7\u3002\n \u4f8b\u5982\uff0c\u50cf `/manticore012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789` \u8fd9\u6837\u7684\u8def\u5f84\u3002\u8fd9\u662f\u56e0\u4e3a RPM \u5de5\u5177\u5728\u6784\u5efa\u8c03\u8bd5\u4fe1\u606f\u65f6\u4f1a\u4fee\u6539\u7f16\u8bd1\u540e\u7684\u4e8c\u8fdb\u5236\u6587\u4ef6\u7684\u8def\u5f84\uff0c\u5b83\u53ef\u80fd\u4f1a\u8986\u76d6\u73b0\u6709\u7a7a\u95f4\u800c\u4e0d\u4f1a\u5206\u914d\u66f4\u591a\u7a7a\u95f4\u3002\u4e0a\u8ff0\u957f\u8def\u5f84\u6709 100 \u4e2a\u5b57\u7b26\uff0c\u8fd9\u5728\u8fd9\u79cd\u60c5\u51b5\u4e2d\u5df2\u7ecf\u8db3\u591f\u3002\n\n## \u5916\u90e8\u4f9d\u8d56\u9879\n\n\u5982\u679c\u4f60\u60f3\u4f7f\u7528\u67d0\u4e9b\u5e93\uff0c\u5b83\u4eec\u5fc5\u987b\u53ef\u7528\u3002\n- \u5bf9\u4e8e\u7d22\u5f15\uff08`indexer` \u5de5\u5177\uff09\uff1a`expat`\u3001`iconv`\u3001`mysql`\u3001`odbc`\u3001`postgresql`\u3002\u6ca1\u6709\u5b83\u4eec\uff0c\u4f60\u53ea\u80fd\u5904\u7406 `tsv` \u548c `csv` \u6e90\u3002\n- \u5bf9\u4e8e\u67e5\u8be2\u670d\u52a1\uff08`searchd` \u5b88\u62a4\u8fdb\u7a0b\uff09\uff1a\u53ef\u80fd\u9700\u8981 `openssl`\u3002\n- \u5bf9\u4e8e\u6240\u6709\uff08\u5fc5\u9700\u3001\u5f3a\u5236\uff01\uff09\u6211\u4eec\u9700\u8981 Boost \u5e93\u3002\u6700\u4f4e\u7248\u672c\u662f 1.61.0\uff0c\u4f46\u6211\u4eec\u5728\u6784\u5efa\u4e8c\u8fdb\u5236\u6587\u4ef6\u65f6\u4f7f\u7528\u66f4\u65b0\u7684\u7248\u672c 1.75.0\u3002\u751a\u81f3\u66f4\u65b0\u7684\u7248\u672c\uff08\u5982 1.76\uff09\u4e5f\u5e94\u8be5\u53ef\u4ee5\u3002\u5728 Windows \u4e0a\uff0c\u4f60\u53ef\u4ee5\u4ece\u4ed6\u4eec\u7684\u7f51\u7ad9\uff08boost.org\uff09\u4e0b\u8f7d\u9884\u6784\u5efa\u7684 Boost \u5e76\u5b89\u88c5\u5230\u9ed8\u8ba4\u5efa\u8bae\u7684\u8def\u5f84\uff08\u5373 `C:\\\\boost...`\uff09\u3002\u5728 MacOs \u4e0a\uff0cbrew \u63d0\u4f9b\u7684\u7248\u672c\u662f\u53ef\u4ee5\u7684\u3002\u5728 Linux \u4e0a\uff0c\u4f60\u53ef\u4ee5\u68c0\u67e5\u5b98\u65b9\u4ed3\u5e93\u4e2d\u7684\u53ef\u7528\u7248\u672c\uff0c\u5982\u679c\u4e0d\u7b26\u5408\u8981\u6c42\uff0c\u4f60\u53ef\u4ee5\u4ece\u6e90\u4ee3\u7801\u6784\u5efa\u3002\u6211\u4eec\u9700\u8981\u7ec4\u4ef6 'context'\uff0c\u4f60\u4e5f\u53ef\u4ee5\u6784\u5efa\u7ec4\u4ef6 'system' \u548c 'program_options'\uff0c\u5982\u679c\u4f60\u8fd8\u60f3\u4ece\u6e90\u4ee3\u7801\u6784\u5efa Galera \u5e93\uff0c\u5b83\u4eec\u5c06\u662f\u5fc5\u8981\u7684\u3002\u67e5\u770b `dist/build_dockers/xxx/boost_175/Dockerfile` \u4ee5\u83b7\u53d6\u7b80\u77ed\u7684\u81ea\u6587\u6863\u811a\u672c/\u8bf4\u660e\uff0c\u4e86\u89e3\u5982\u4f55\u64cd\u4f5c\u3002\n\n\u5728\u6784\u5efa\u7cfb\u7edf\u4e0a\uff0c\u4f60\u9700\u8981\u5b89\u88c5\u8fd9\u4e9b\u5305\u7684 'dev' \u6216 'devel' \u7248\u672c\uff08\u4f8b\u5982\uff1alibmysqlclient-devel\u3001unixodbc-devel \u7b49\u3002\u67e5\u770b\u6211\u4eec\u7684 dockerfile \u4ee5\u83b7\u53d6\u5177\u4f53\u5305\u7684\u540d\u79f0\uff09\u3002\n\n\u5728\u8fd0\u884c\u7cfb\u7edf\u4e0a\uff0c\u8fd9\u4e9b\u5305\u81f3\u5c11\u5e94\u5728\u6700\u7ec8\uff08\u975e\u5f00\u53d1\uff09\u7248\u672c\u4e2d\u5b58\u5728\u3002\uff08\u5f00\u53d1\u7248\u672c\u901a\u5e38\u66f4\u5927\uff0c\u56e0\u4e3a\u5b83\u4eec\u4e0d\u4ec5\u5305\u542b\u76ee\u6807\u4e8c\u8fdb\u5236\u6587\u4ef6\uff0c\u8fd8\u5305\u542b\u5176\u4ed6\u5f00\u53d1\u5185\u5bb9\uff0c\u5982\u5305\u542b\u5934\u6587\u4ef6\u7b49\u3002\uff09\n\n### \u5728 Windows \u4e0a\u6784\u5efa\n\n\u9664\u4e86\u5fc5\u8981\u7684\u524d\u63d0\u6761\u4ef6\u5916\uff0c\u4f60\u53ef\u80fd\u8fd8\u9700\u8981\u9884\u6784\u5efa\u7684 `expat`\u3001`iconv`\u3001`mysql` \u548c `postgresql` \u5ba2\u6237\u7aef\u5e93\u3002\u4f60\u5fc5\u987b\u81ea\u5df1\u6784\u5efa\u5b83\u4eec\uff0c\u6216\u8005\u8054\u7cfb\u6211\u4eec\u4ee5\u83b7\u53d6\u6211\u4eec\u7684\u6784\u5efa\u6346\u7ed1\u5305\uff08\u4e00\u4e2a\u7b80\u5355\u7684 zip \u5b58\u6863\uff0c\u5176\u4e2d\u5305\u542b\u8fd9\u4e9b\u76ee\u6807\u7684\u6587\u4ef6\u5939\uff09\u3002\n\n- ODBC \u4e0d\u662f\u5fc5\u9700\u7684\uff0c\u56e0\u4e3a\u5b83\u662f\u4e00\u4e2a\u7cfb\u7edf\u5e93\u3002\n- OpenSSL \u53ef\u4ee5\u4ece\u6e90\u4ee3\u7801\u6784\u5efa\uff0c\u6216\u8005\u4ece https://slproweb.com/products/Win32OpenSSL.html \u4e0b\u8f7d\u9884\u6784\u5efa\u7684\uff08\u5982 cmake \u5185\u90e8\u811a\u672c FindOpenSSL \u4e2d\u63d0\u5230\u7684\uff09\u3002\n- Boost \u53ef\u4ee5\u4ece https://www.boost.org/ \u4e0b\u8f7d\u9884\u6784\u5efa\u7684\u7248\u672c\u3002\n\n### \u67e5\u770b\u5df2\u7f16\u8bd1\u7684\u5185\u5bb9\n\n\u8fd0\u884c `indexer -h`\u3002\u5b83\u5c06\u663e\u793a\u54ea\u4e9b\u529f\u80fd\u88ab\u914d\u7f6e\u548c\u6784\u5efa\uff08\u65e0\u8bba\u5b83\u4eec\u662f\u663e\u5f0f\u8fd8\u662f\u88ab\u8c03\u67e5\uff0c\u65e0\u5173\u7d27\u8981\uff09\uff1a\n\nCODE_BLOCK_17\n<!-- proofread -->\n\n",
  36. "russian": "\u0415\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438, \u043d\u043e \u043d\u0435 \u0445\u043e\u0442\u0438\u0442\u0435 \u0437\u0430\u0431\u043e\u0442\u0438\u0442\u044c\u0441\u044f \u043e \u0442\u043e\u043c, \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043b\u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 'single' \u0438\u043b\u0438 'multi' config \u2014 \u043f\u0440\u043e\u0441\u0442\u043e \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043a\u043b\u044e\u0447\u0438 \u0432 \u043e\u0431\u043e\u0438\u0445 \u043c\u0435\u0441\u0442\u0430\u0445. \u0422\u043e \u0435\u0441\u0442\u044c, \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u0442\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e `-DCMAKE_BUILD_TYPE=Debug`, \u0430 \u0437\u0430\u0442\u0435\u043c \u0441\u043e\u0431\u0435\u0440\u0438\u0442\u0435 \u0441 `--config Debug`. \u041f\u0440\u043e\u0441\u0442\u043e \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u043e\u0431\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b. \u0415\u0441\u043b\u0438 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0441\u0431\u043e\u0440\u0449\u0438\u043a \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f single-config, \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438. \u0415\u0441\u043b\u0438 \u043e\u043d multi-config, \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0438\u0433\u043d\u043e\u0440\u0438\u0440\u043e\u0432\u0430\u043d, \u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0431\u0440\u0430\u043d\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043b\u044e\u0447\u0430 `--config`.\n\n\u0415\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 `RelWithDebInfo` (\u0442.\u0435. \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u0430\u043a\u0448\u0435\u043d\u0430) \u0438 \u0437\u043d\u0430\u0435\u0442\u0435, \u0447\u0442\u043e \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0435\u0441\u044c \u043d\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 \u0441 single-config (\u044d\u0442\u043e \u0432\u0441\u0435, \u043a\u0440\u043e\u043c\u0435 Windows) \u2014 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0444\u043b\u0430\u0433 `--config` \u043f\u0440\u0438 \u0432\u044b\u0437\u043e\u0432\u0435 cmake. \u0422\u043e\u0433\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e `CMAKE_BUILD_TYPE=RelWithDebInfo`. \u0412\u0441\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0434\u043b\u044f '\u0441\u0431\u043e\u0440\u043a\u0438', '\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438' \u0438 '\u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u0430\u043a\u0435\u0442\u0430' \u0441\u0442\u0430\u043d\u0443\u0442 \u043a\u043e\u0440\u043e\u0447\u0435.\n\n#### \u042f\u0432\u043d\u044b\u0439 \u0432\u044b\u0431\u043e\u0440 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0441\u0431\u043e\u0440\u043a\u0438\n\nCmake \u2014 \u044d\u0442\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0430\u043c \u043f\u043e \u0441\u0435\u0431\u0435 \u043d\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0441\u0431\u043e\u0440\u043a\u0443, \u043d\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0434\u043b\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0441\u0431\u043e\u0440\u043a\u0438.\n\u041e\u0431\u044b\u0447\u043d\u043e \u043e\u043d \u0445\u043e\u0440\u043e\u0448\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0441\u0431\u043e\u0440\u043a\u0438, \u043d\u043e \u0438\u043d\u043e\u0433\u0434\u0430 \u0432\u0430\u043c \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u044f\u0432\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440. \u0412\u044b\n\u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c `cmake -G` \u0438 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432.\n\n- \u0412 Windows, \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e \u0431\u043e\u043b\u0435\u0435 \u043e\u0434\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 Visual Studio, \u0432\u0430\u043c \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0443\u043a\u0430\u0437\u0430\u0442\u044c, \u043a\u0430\u043a\u0443\u044e \u0438\u0437 \u043d\u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c,\n\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:\nCODE_BLOCK_14\n- \u041d\u0430 \u0432\u0441\u0435\u0445 \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430\u0445 \u2014 \u043e\u0431\u044b\u0447\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f Unix Makefiles, \u043d\u043e \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0434\u0440\u0443\u0433\u043e\u0439, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 Ninja \u0438\u043b\u0438 Ninja Multi-Config, \u043a\u0430\u043a:\n Multi-Config`, \u043a\u0430\u043a:\nCODE_BLOCK_15\n \u0438\u043b\u0438\nCODE_BLOCK_16\nNinja Multi-Config \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u043e\u043b\u0435\u0437\u0435\u043d, \u0442\u0430\u043a \u043a\u0430\u043a \u043e\u043d \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e 'multi-config' \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u043d\u0430 Linux/macOS/BSD. \u0421 \u044d\u0442\u0438\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u043c \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0432\u044b\u0431\u043e\u0440 \u0442\u0438\u043f\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u0432\u0440\u0435\u043c\u044f \u0441\u0431\u043e\u0440\u043a\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439 \u0432 \u043e\u0434\u043d\u043e\u0439 \u0438 \u0442\u043e\u0439 \u0436\u0435 \u043f\u0430\u043f\u043a\u0435 \u0441\u0431\u043e\u0440\u043a\u0438, \u0438\u0437\u043c\u0435\u043d\u044f\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 `--config`.\n\n### \u041f\u0440\u0435\u0434\u043e\u0441\u0442\u0435\u0440\u0435\u0436\u0435\u043d\u0438\u044f\n\n1. \u0415\u0441\u043b\u0438 \u0432\u044b \u0432 \u0438\u0442\u043e\u0433\u0435 \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043f\u043e\u043b\u043d\u043e\u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 RPM-\u043f\u0430\u043a\u0435\u0442, \u043f\u0443\u0442\u044c \u043a \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 \u0441\u0431\u043e\u0440\u043a\u0438 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u043b\u0438\u043d\u043d\u044b\u043c, \u0447\u0442\u043e\u0431\u044b \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u044b\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u044b.\n\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, `/manticore012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789`. \u042d\u0442\u043e \u043f\u043e\u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b RPM \u0438\u0437\u043c\u0435\u043d\u044f\u044e\u0442 \u043f\u0443\u0442\u044c \u043a \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u043c \u0444\u0430\u0439\u043b\u0430\u043c \u043f\u0440\u0438 \u0441\u0431\u043e\u0440\u043a\u0435 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438, \u0438 \u043e\u043d\u0438 \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0435 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e, \u043d\u0435 \u0432\u044b\u0434\u0435\u043b\u044f\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e. \u0423\u043f\u043e\u043c\u044f\u043d\u0443\u0442\u044b\u0439 \u0434\u043b\u0438\u043d\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 100 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432, \u0438 \u044d\u0442\u043e\u0433\u043e \u0432\u043f\u043e\u043b\u043d\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u043b\u044f \u0442\u0430\u043a\u043e\u0433\u043e \u0441\u043b\u0443\u0447\u0430\u044f.\n\n## \u0412\u043d\u0435\u0448\u043d\u0438\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438\n\n\u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b, \u0435\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c.\n- \u0414\u043b\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u0430\u0446\u0438\u0438 (\u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 `indexer`): `expat`, `iconv`, `mysql`, `odbc`, `postgresql`. \u0411\u0435\u0437 \u043d\u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438 `tsv` \u0438 `csv`.\n- \u0414\u043b\u044f \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 (\u0434\u0435\u043c\u043e\u043d `searchd`): \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c\u0441\u044f `openssl`.\n- \u0414\u043b\u044f \u0432\u0441\u0435\u0433\u043e (\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e!) \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 Boost. \u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u2014 1.61.0, \u043e\u0434\u043d\u0430\u043a\u043e \u043c\u044b \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0441 \u0431\u043e\u043b\u0435\u0435 \u0441\u0432\u0435\u0436\u0435\u0439 \u0432\u0435\u0440\u0441\u0438\u0435\u0439 1.75.0. \u0415\u0449\u0451 \u0431\u043e\u043b\u0435\u0435 \u043d\u043e\u0432\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, 1.76) \u0442\u0430\u043a\u0436\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u043f\u043e\u0434\u043e\u0439\u0442\u0438. \u0412 Windows \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0439 Boost \u0441 \u0438\u0445 \u0441\u0430\u0439\u0442\u0430 (boost.org) \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0435\u0433\u043e \u0432 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u043c\u044b\u0439 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043f\u0443\u0442\u044c (\u0442.\u0435. `C:\\\\boost...`). \u0412 MacOs \u043f\u043e\u0434\u043e\u0439\u0434\u0451\u0442 \u0442\u043e\u0442, \u0447\u0442\u043e \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u0432 brew. \u0412 Linux \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u0432 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f\u0445, \u0438 \u0435\u0441\u043b\u0438 \u043e\u043d\u0430 \u043d\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432. \u041d\u0430\u043c \u043d\u0443\u0436\u0435\u043d \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 'context', \u0432\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b 'system' \u0438 'program_options', \u043e\u043d\u0438 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u044f\u0442\u0441\u044f, \u0435\u0441\u043b\u0438 \u0432\u044b \u0442\u0430\u043a\u0436\u0435 \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 Galera \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432. \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u0432 `dist/build_dockers/xxx/boost_175/Dockerfile` \u043d\u0430 \u043a\u0440\u0430\u0442\u043a\u0438\u0439 \u0441\u0430\u043c\u043e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u043a\u0440\u0438\u043f\u0442/\u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c.\n\n\u0412 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0441\u0431\u043e\u0440\u043a\u0438 \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c 'dev' \u0438\u043b\u0438 'devel' \u0432\u0435\u0440\u0441\u0438\u0438 \u044d\u0442\u0438\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 (\u0442.\u0435. - libmysqlclient-devel, unixodbc-devel \u0438 \u0442.\u0434. \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u0432 \u043d\u0430\u0448\u0438\u0445 docker-\u0444\u0430\u0439\u043b\u0430\u0445 \u043d\u0430 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432).\n\n\u0412 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u044d\u0442\u0438 \u043f\u0430\u043a\u0435\u0442\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0445\u043e\u0442\u044f \u0431\u044b \u0432 \u0444\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0445 (\u043d\u0435-dev) \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430\u0445. (devel \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u043e\u0431\u044b\u0447\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0435, \u0442\u0430\u043a \u043a\u0430\u043a \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0446\u0435\u043b\u0435\u0432\u044b\u0435 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b, \u043d\u043e \u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0442\u0430\u043a\u0438\u0435 \u043a\u0430\u043a \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u0447\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0438 \u0442.\u0434.).\n\n### \u0421\u0431\u043e\u0440\u043a\u0430 \u0432 Windows\n\n\u041f\u043e\u043c\u0438\u043c\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445 \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439, \u0432\u0430\u043c \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 `expat`, `iconv`, `mysql` \u0438 `postgresql`. \u0412\u0430\u043c \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u043b\u0438\u0431\u043e \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0438\u0445 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e, \u043b\u0438\u0431\u043e \u0441\u0432\u044f\u0437\u0430\u0442\u044c\u0441\u044f \u0441 \u043d\u0430\u043c\u0438, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043d\u0430\u0448 \u0441\u0431\u043e\u0440\u043d\u0438\u043a \u0441\u0431\u043e\u0440\u043a\u0438 (\u043f\u0440\u043e\u0441\u0442\u043e\u0439 zip-\u0430\u0440\u0445\u0438\u0432, \u0433\u0434\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u0430\u043f\u043a\u0430 \u0441 \u044d\u0442\u0438\u043c\u0438 \u0446\u0435\u043b\u044f\u043c\u0438).\n\n- ODBC \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u0435\u043d, \u0442\u0430\u043a \u043a\u0430\u043a \u044d\u0442\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0430\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430.\n- OpenSSL \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432 \u0438\u043b\u0438 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0439 \u0441 https://slproweb.com/products/Win32OpenSSL.html (\u043a\u0430\u043a \u0443\u043a\u0430\u0437\u0430\u043d\u043e \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u043c \u0441\u043a\u0440\u0438\u043f\u0442\u0435 cmake \u0432 FindOpenSSL).\n- Boost \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0439 \u0441 https://www.boost.org/ \u0440\u0435\u043b\u0438\u0437\u043e\u0432.\n\n### \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u0447\u0442\u043e \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043e\n\n\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0435 `indexer -h`. \u042d\u0442\u043e \u043f\u043e\u043a\u0430\u0436\u0435\u0442, \u043a\u0430\u043a\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0431\u044b\u043b\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u044b \u0438 \u0441\u043e\u0431\u0440\u0430\u043d\u044b (\u043d\u0435\u0432\u0430\u0436\u043d\u043e, \u044f\u0432\u043d\u043e \u043e\u043d\u0438 \u0443\u043a\u0430\u0437\u0430\u043d\u044b \u0438\u043b\u0438 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u044b):\n\nCODE_BLOCK_17\n<!-- proofread -->\n\n"
  37. },
  38. "is_code_or_comment": false,
  39. "model": "deepseek/deepseek-v3.2",
  40. "updated_at": 1770444840
  41. },
  42. "e23ff46fbe4b9641052c67e5a6a1b017953b0a90def012e740a858607d3031fd": {
  43. "original": "\nNote, that some options are organized in triples: `WITH_XXX`, `DL_XXX` and `XXX_LIB` - like support of mysql, odbc, etc. `WITH_XXX` determines whether next two have an effect or not. I.e., if you set `WITH_ODBC` to `0` - there is no sence to provide `DL_ODBC` and `ODBC_LIB`, and these two will have no effect if the whole feature is disabled. Also, `XXX_LIB` has no sense without `DL_XXX`, because if you don't want `DL_XXX` option, dynamic loading will not be used, and name provided by `XXX_LIB` is useless. That is used by default introspection.\n\nAlso, using the `iconv` library assumes `expat` and is useless if the last is disabled.\n\nAlso, some libraries may be always available, and so, there is no sense to avoid linkage with them. For example, in Windows that is ODBC. On macOS that is Expat, iconv, and m.b. others. Default introspection determines such libraries and effectively emits only `WITH_XXX` for them, without `DL_XXX` and `XXX_LIB`, that makes the things simpler.\n\nWith some options in game configuring might look like:\n\nCODE_BLOCK_7\n\nApart general configuration values, you may also investigate file `CMakeCache.txt` which is left in build folder right after you run configuration. Any values defined there might be redefined explicitly when running cmake. For example, you may run `cmake -DHAVE_GETADDRINFO_A=FALSE ...`, and that config run will not assume investigated value of that variable, but will use one you've provided.\n\n#### Specific environment variables\n\nEnvironment variables are useful for providing some kind of global settings which are stored aside from build configuration and are always present. For persistence, they may be set globally on the system using different ways - like adding them to the `.bashrc` file, or embedding them into a Dockerfile if you produce a docker-based build system, or writing them in system preferences environment variables on Windows. Also, you may set them short-lived using `export VAR=value` in the shell. Or even shorter, by prepending values to the cmake call, like `CACHEB=/my/cache cmake ...` - this way it will only work on this call and will not be visible on the next.\n\nSome of such variables are known to be used in general by cmake and some other tools. That is things like `CXX` which determines the current C++ compiler, or `CXX_FLAGS` to provide compiler flags, etc.\n\nHowever, we have some variables that are specific to manticore configuration, which are invented solely for our builds.\n\n- **CACHEB** - same as the config **CACHEB** option\n- **LIBS_BUNDLE** - same as the config **LIBS_BUNDLE** option\n- **DISTR** - used to initialize the `DISTR_BUILD` option when `-DPACK=1` is used.\n- **DIAGNOSTIC** - makes the output of cmake configuration much more verbose, explaining everything happening\n- **WRITEB** - assumes **LIBS_BUNDLE** and, if set, will download source archive files for different tools to the LIBS_BUNDLE folder. That is, if a fresh version of the stemmer comes out - you can manually remove libstemmer_c.tgz from the bundle and then run a one-shot `WRITEB=1 cmake ...` - it will not find the stemmer's sources in the bundle and will then download them from the vendor's site to the bundle (without WRITEB it will download them into a temporary folder inside the build and will disappear when you wipe the build folder).\n\nAt the end of configuration, you may see what is available and will be used in a list like this one:\n\nCODE_BLOCK_8\n\n### Building\n\nCODE_BLOCK_9\n\n### Installation\n\nTo install run:\n\nCODE_BLOCK_10\n\nto install into custom (non-default) folder, run\n\nCODE_BLOCK_11\n\n### Building packages\n\nFor building a package, use the target `package`. It will build the package according to the selection provided by the `-DDISTR_BUILD` option. By default, it will be a simple .zip or .tgz archive with all binaries and supplementary files.\n\nCODE_BLOCK_12\n\n## Some advanced things about building\n\n### Recompilation (update) on single-config\n\nIf you haven't changed the path for sources and build, simply move to your build folder and run:\n\nCODE_BLOCK_13\n\nIf by any reason it doesn't work, you can delete file `CMakeCache.txt` located in the build folder. After this step you\nhave to run cmake again, pointing to the source folder and configuring the options.\n\nIf it also doesn't help, just wipe out your build folder and begin from scratch.\n\n### Build types\n\nBriefly - just use `--config RelWithDebInfo` as written above. It will make no mistake.\n\nWe use two build types. For development, it is `Debug` - it assigns compiler flags for optimization and other things in a way that it is very friendly for development, meaning the debug runs with step-by-step execution. However, the produced binaries are quite large and slow for production.\n\nFor releasing, we use another type - `RelWithDebInfo` - which means 'release build with debug info'. It produces production binaries with embedded debug info. The latter is then split away into separate debuginfo packages which are stored aside with release packages and might be used in case of some issues like crashes - for investigation and bugfixing. Cmake also provides `Release` and `MinSizeRel`, but we don't use them. If the build type is not available, cmake will make a `noconfig` build.\n\n#### Build system generators\n\nThere are two types of generators: single-config and multi-config.\n\n- Single-config needs the build type provided during configuration, via the `CMAKE_BUILD_TYPE` parameter. If it is not defined, the build will fall back to the `RelWithDebInfo` type which is suitable if you just want to build Manticore from sources and not participate in development. For explicit builds, you should provide a build type, like `-DCMAKE_BUILD_TYPE=Debug`.\n- Multi-config selects the build type during the build. It should be provided with the `--config` option, otherwise it will build a kind of `noconfig`, which is not desirable. So, you should always specify the build type, like `--config Debug`.",
  44. "translations": {
  45. "chinese": " \n\u8bf7\u6ce8\u610f\uff0c\u6709\u4e9b\u9009\u9879\u4ee5\u4e09\u5143\u7ec4\u7684\u5f62\u5f0f\u7ec4\u7ec7\uff1a`WITH_XXX`\u3001`DL_XXX` \u548c `XXX_LIB`\uff0c\u6bd4\u5982\u5bf9 mysql\u3001odbc \u7b49\u7684\u652f\u6301\u3002`WITH_XXX` \u51b3\u5b9a\u63a5\u4e0b\u6765\u7684\u4e24\u4e2a\u9009\u9879\u662f\u5426\u751f\u6548\u3002\u4f8b\u5982\uff0c\u5982\u679c\u5c06 `WITH_ODBC` \u8bbe\u7f6e\u4e3a `0`\uff0c\u90a3\u4e48\u63d0\u4f9b `DL_ODBC` \u548c `ODBC_LIB` \u5c31\u6beb\u65e0\u610f\u4e49\uff0c\u4e14\u5f53\u8be5\u529f\u80fd\u88ab\u7981\u7528\u65f6\u8fd9\u4e24\u4e2a\u9009\u9879\u4e0d\u4f1a\u751f\u6548\u3002\u6b64\u5916\uff0c\u82e5\u4e0d\u542f\u7528 `DL_XXX`\uff0c\u5219 `XXX_LIB` \u4e5f\u6beb\u65e0\u610f\u4e49\uff0c\u56e0\u4e3a\u82e5\u4e0d\u4f7f\u7528\u52a8\u6001\u52a0\u8f7d\uff0c`XXX_LIB` \u63d0\u4f9b\u7684\u540d\u79f0\u4e5f\u4e0d\u4f1a\u88ab\u4f7f\u7528\u3002\u8fd9\u5728\u9ed8\u8ba4\u81ea\u52a8\u68c0\u6d4b\u4e2d\u4f7f\u7528\u3002\n\n\u6b64\u5916\uff0c\u4f7f\u7528 `iconv` \u5e93\u4f9d\u8d56\u4e8e `expat`\uff0c\u82e5\u540e\u8005\u88ab\u7981\u7528\uff0c\u5219\u524d\u8005\u4e5f\u6ca1\u6709\u610f\u4e49\u3002\n\n\u6b64\u5916\uff0c\u6709\u4e9b\u5e93\u53ef\u80fd\u59cb\u7ec8\u53ef\u7528\uff0c\u56e0\u6b64\u6ca1\u5fc5\u8981\u907f\u514d\u4e0e\u5b83\u4eec\u7684\u94fe\u63a5\u3002\u4f8b\u5982\uff0c\u5728 Windows \u4e0a\u5c31\u662f ODBC\uff0c\u5728 macOS \u4e0a\u5219\u662f Expat\u3001iconv \u4ee5\u53ca\u53ef\u80fd\u7684\u5176\u4ed6\u5e93\u3002\u9ed8\u8ba4\u7684\u81ea\u52a8\u68c0\u6d4b\u4f1a\u8bc6\u522b\u51fa\u8fd9\u4e9b\u5e93\uff0c\u5e76\u4ec5\u9488\u5bf9\u5b83\u4eec\u751f\u6210 `WITH_XXX`\uff0c\u800c\u7701\u7565 `DL_XXX` \u548c `XXX_LIB`\uff0c\u4ece\u800c\u7b80\u5316\u4e86\u914d\u7f6e\u3002\n\n\u4f7f\u7528\u67d0\u4e9b\u9009\u9879\u65f6\uff0c\u6e38\u620f\u914d\u7f6e\u53ef\u80fd\u5982\u4e0b\u6240\u793a\uff1a\n\nCODE_BLOCK_7\n\n\u9664\u4e86\u5e38\u89c4\u7684\u914d\u7f6e\u9009\u9879\u5916\uff0c\u4f60\u8fd8\u53ef\u4ee5\u67e5\u770b\u5728\u8fd0\u884c\u914d\u7f6e\u540e\u7559\u5728\u6784\u5efa\u76ee\u5f55\u4e2d\u7684 `CMakeCache.txt` \u6587\u4ef6\u3002\u8be5\u6587\u4ef6\u4e2d\u5b9a\u4e49\u7684\u4efb\u4f55\u503c\u90fd\u53ef\u4ee5\u5728\u8fd0\u884c cmake \u65f6\u663e\u5f0f\u91cd\u65b0\u5b9a\u4e49\u3002\u4f8b\u5982\uff0c\u4f60\u53ef\u4ee5\u8fd0\u884c `cmake -DHAVE_GETADDRINFO_A=FALSE ...`\uff0c\u6b64\u6b21\u914d\u7f6e\u8fd0\u884c\u5c06\u4e0d\u4f1a\u4f7f\u7528\u5148\u524d\u68c0\u6d4b\u5230\u7684\u8be5\u53d8\u91cf\u503c\uff0c\u800c\u662f\u91c7\u7528\u4f60\u63d0\u4f9b\u7684\u503c\u3002\n\n#### \u7279\u5b9a\u7684\u73af\u5883\u53d8\u91cf\n\n\u73af\u5883\u53d8\u91cf\u5bf9\u4e8e\u63d0\u4f9b\u67d0\u79cd\u5168\u5c40\u8bbe\u7f6e\u975e\u5e38\u6709\u7528\uff0c\u8fd9\u4e9b\u8bbe\u7f6e\u4e0e\u6784\u5efa\u914d\u7f6e\u5206\u79bb\u5e76\u59cb\u7ec8\u6709\u6548\u3002\u4e3a\u4e86\u6301\u4e45\u5316\uff0c\u4f60\u53ef\u4ee5\u5728\u7cfb\u7edf\u8303\u56f4\u5185\u4ee5\u4e0d\u540c\u65b9\u5f0f\u8bbe\u7f6e\u5b83\u4eec\u2014\u2014\u4f8b\u5982\u5c06\u5176\u6dfb\u52a0\u5230 `.bashrc` \u6587\u4ef6\u4e2d\uff0c\u6216\u8005\u5728\u57fa\u4e8e Docker \u7684\u6784\u5efa\u7cfb\u7edf\u4e2d\u5c06\u5176\u5d4c\u5165\u5230 Dockerfile \u4e2d\uff0c\u4ea6\u6216\u5728 Windows \u7684\u7cfb\u7edf\u504f\u597d\u8bbe\u7f6e\u4e2d\u7684\u73af\u5883\u53d8\u91cf\u4e2d\u8fdb\u884c\u8bbe\u7f6e\u3002\u6b64\u5916\uff0c\u4f60\u8fd8\u53ef\u4ee5\u5728 Shell \u4e2d\u4f7f\u7528 `export VAR=value` \u6765\u8fdb\u884c\u77ed\u6682\u8bbe\u7f6e\u3002\u6216\u8005\u66f4\u7b80\u4fbf\u5730\uff0c\u5728 cmake \u8c03\u7528\u524d\u6dfb\u52a0\u524d\u7f00\uff0c\u5982 `CACHEB=/my/cache cmake ...`\u2014\u2014\u8fd9\u6837\u4ec5\u5bf9\u8be5\u6b21\u8c03\u7528\u751f\u6548\uff0c\u4e0b\u6b21\u5c06\u4e0d\u53ef\u89c1\u3002\n\n\u5176\u4e2d\u6709\u4e9b\u53d8\u91cf\u901a\u5e38\u4e3a cmake \u53ca\u5176\u4ed6\u5de5\u5177\u6240\u4f7f\u7528\uff0c\u4f8b\u5982\u7528\u4e8e\u6307\u5b9a\u5f53\u524d C++ \u7f16\u8bd1\u5668\u7684 `CXX`\uff0c\u6216\u7528\u4e8e\u63d0\u4f9b\u7f16\u8bd1\u5668\u6807\u5fd7\u7684 `CXX_FLAGS`\uff0c\u7b49\u7b49\u3002\n\n\u4f46\u662f\uff0c\u6211\u4eec\u8fd8\u5b9a\u4e49\u4e86\u4e00\u4e9b\u7279\u5b9a\u4e8e manticore \u914d\u7f6e\u7684\u53d8\u91cf\uff0c\u4e13\u95e8\u7528\u4e8e\u6211\u4eec\u7684\u6784\u5efa\u3002\n\n- **CACHEB** - \u7b49\u540c\u4e8e\u914d\u7f6e\u9009\u9879 **CACHEB**\n- **LIBS_BUNDLE** - \u7b49\u540c\u4e8e\u914d\u7f6e\u9009\u9879 **LIBS_BUNDLE**\n- **DISTR** - \u5728\u4f7f\u7528 `-DPACK=1` \u65f6\u7528\u4e8e\u521d\u59cb\u5316 `DISTR_BUILD` \u9009\u9879\u3002\n- **DIAGNOSTIC** - \u4f7f cmake \u914d\u7f6e\u7684\u8f93\u51fa\u66f4\u52a0\u8be6\u7ec6\uff0c\u89e3\u91ca\u6240\u6709\u53d1\u751f\u7684\u64cd\u4f5c\n- **WRITEB** - \u4f9d\u8d56 **LIBS_BUNDLE**\uff0c\u5982\u679c\u8bbe\u7f6e\u8be5\u53d8\u91cf\uff0c\u5c06\u628a\u5404\u5de5\u5177\u7684\u6e90\u4ee3\u7801\u5f52\u6863\u6587\u4ef6\u4e0b\u8f7d\u5230 LIBS_BUNDLE \u6587\u4ef6\u5939\u3002\u4f8b\u5982\uff0c\u5982\u679c\u6709\u65b0\u7684 stemmer \u7248\u672c\u53d1\u5e03\uff0c\u4f60\u53ef\u4ee5\u624b\u52a8\u4ece bundle \u4e2d\u5220\u9664 libstemmer_c.tgz\uff0c\u7136\u540e\u8fd0\u884c\u4e00\u6b21\u6027\u547d\u4ee4 `WRITEB=1 cmake ...`\u2014\u2014\u6b64\u65f6\u5728 bundle \u4e2d\u627e\u4e0d\u5230 stemmer \u7684\u6e90\u4ee3\u7801\uff0c\u5c31\u4f1a\u4ece\u5382\u5546\u7f51\u7ad9\u4e0b\u8f7d\u5230 bundle\uff08\u5982\u679c\u4e0d\u4f7f\u7528 WRITEB\uff0c\u5219\u4f1a\u4e0b\u8f7d\u5230\u6784\u5efa\u76ee\u5f55\u4e0b\u7684\u4e34\u65f6\u6587\u4ef6\u5939\uff0c\u6e05\u9664\u6784\u5efa\u76ee\u5f55\u540e\u4f1a\u6d88\u5931\uff09\u3002\n\n\u5728\u914d\u7f6e\u7ed3\u675f\u65f6\uff0c\u4f60\u53ef\u4ee5\u770b\u5230\u5982\u4e0b\u5217\u8868\uff0c\u5c55\u793a\u53ef\u7528\u5e76\u5c06\u88ab\u4f7f\u7528\u7684\u5185\u5bb9\uff1a\n\nCODE_BLOCK_8\n\n### \u6784\u5efa\n\nCODE_BLOCK_9\n\n### \u5b89\u88c5\n\n\u8981\u5b89\u88c5\uff0c\u8bf7\u8fd0\u884c\uff1a\n\nCODE_BLOCK_10\n\n\u8981\u5b89\u88c5\u5230\u81ea\u5b9a\u4e49\uff08\u975e\u9ed8\u8ba4\uff09\u76ee\u5f55\uff0c\u8fd0\u884c\n\nCODE_BLOCK_11\n\n### \u6784\u5efa\u8f6f\u4ef6\u5305\n\n\u8981\u6784\u5efa\u8f6f\u4ef6\u5305\uff0c\u8bf7\u4f7f\u7528\u76ee\u6807 `package`\u3002\u5b83\u4f1a\u6839\u636e `-DDISTR_BUILD` \u9009\u9879\u7684\u8bbe\u5b9a\u6765\u6784\u5efa\u8f6f\u4ef6\u5305\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u5b83\u4f1a\u751f\u6210\u4e00\u4e2a\u5305\u542b\u6240\u6709\u4e8c\u8fdb\u5236\u6587\u4ef6\u548c\u9644\u52a0\u6587\u4ef6\u7684\u7b80\u5355 .zip \u6216 .tgz \u5f52\u6863\u3002\n\nCODE_BLOCK_12\n\n## \u5173\u4e8e\u6784\u5efa\u7684\u4e00\u4e9b\u9ad8\u7ea7\u5185\u5bb9\n\n### \u5355\u914d\u7f6e\u6a21\u5f0f\u4e0b\u7684\u91cd\u65b0\u7f16\u8bd1\uff08\u66f4\u65b0\uff09\n\n\u5982\u679c\u4f60\u6ca1\u6709\u66f4\u6539\u6e90\u4ee3\u7801\u548c\u6784\u5efa\u7684\u8def\u5f84\uff0c\u53ea\u9700\u8fdb\u5165\u6784\u5efa\u76ee\u5f55\u5e76\u8fd0\u884c\uff1a\n\nCODE_BLOCK_13\n\n\u5982\u679c\u7531\u4e8e\u67d0\u79cd\u539f\u56e0\u6b64\u65b9\u6cd5\u65e0\u6548\uff0c\u4f60\u53ef\u4ee5\u5220\u9664\u4f4d\u4e8e\u6784\u5efa\u76ee\u5f55\u4e2d\u7684 `CMakeCache.txt` \u6587\u4ef6\u3002\u5b8c\u6210\u6b64\u6b65\u9aa4\u540e\u4f60\n\u9700\u8981\u91cd\u65b0\u8fd0\u884c cmake\uff0c\u6307\u5b9a\u6e90\u7801\u76ee\u5f55\u5e76\u914d\u7f6e\u9009\u9879\u3002\n\n\u5982\u679c\u5b83\u4e5f\u65e0\u6548\uff0c\u53ea\u9700\u5220\u9664\u6784\u5efa\u76ee\u5f55\u5e76\u4ece\u5934\u5f00\u59cb\u3002\n\n### \u6784\u5efa\u7c7b\u578b\n\n\u7b80\u800c\u8a00\u4e4b\u2014\u2014\u5982\u4e0a\u6240\u8ff0\uff0c\u76f4\u63a5\u4f7f\u7528 `--config RelWithDebInfo` \u5373\u53ef\uff0c\u4e0d\u4f1a\u51fa\u9519\u3002\n\n\u6211\u4eec\u4f7f\u7528\u4e24\u79cd\u6784\u5efa\u7c7b\u578b\u3002\u5bf9\u4e8e\u5f00\u53d1\u800c\u8a00\uff0c\u4f7f\u7528 `Debug`\u2014\u2014\u5b83\u4f1a\u4ee5\u5bf9\u5f00\u53d1\u975e\u5e38\u53cb\u597d\u7684\u65b9\u5f0f\u8bbe\u7f6e\u7f16\u8bd1\u5668\u6807\u5fd7\uff0c\u4f8b\u5982\u652f\u6301\u9010\u6b65\u8c03\u8bd5\u3002\u4f46\u8fd9\u6837\u751f\u6210\u7684\u4e8c\u8fdb\u5236\u6587\u4ef6\u8f83\u5927\u4e14\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u8fd0\u884c\u8f83\u6162\u3002\n\n\u5bf9\u4e8e\u53d1\u5e03\uff0c\u6211\u4eec\u4f7f\u7528\u53e6\u4e00\u79cd\u7c7b\u578b\u2014\u2014`RelWithDebInfo`\uff0c\u5373\u201c\u5e26\u8c03\u8bd5\u4fe1\u606f\u7684\u53d1\u5e03\u6784\u5efa\u201d\u3002\u5b83\u4f1a\u751f\u6210\u5e26\u6709\u5d4c\u5165\u8c03\u8bd5\u4fe1\u606f\u7684\u751f\u4ea7\u73af\u5883\u4e8c\u8fdb\u5236\u6587\u4ef6\u3002\u968f\u540e\uff0c\u8fd9\u4e9b\u8c03\u8bd5\u4fe1\u606f\u4f1a\u88ab\u62c6\u5206\u4e3a\u5355\u72ec\u7684\u8c03\u8bd5\u4fe1\u606f\u5305\uff0c\u4e0e\u53d1\u5e03\u5305\u4e00\u8d77\u5b58\u653e\uff0c\u5728\u53d1\u751f\u5d29\u6e83\u7b49\u95ee\u9898\u65f6\u53ef\u7528\u4e8e\u8c03\u67e5\u548c\u4fee\u590d\u3002Cmake \u8fd8\u63d0\u4f9b `Release` \u548c `MinSizeRel`\uff0c\u4f46\u6211\u4eec\u4e0d\u4f7f\u7528\u5b83\u4eec\u3002\u5982\u679c\u6307\u5b9a\u7684\u6784\u5efa\u7c7b\u578b\u4e0d\u53ef\u7528\uff0ccmake \u4f1a\u6267\u884c\u4e00\u6b21 `noconfig` \u6784\u5efa\u3002\n\n#### \u6784\u5efa\u7cfb\u7edf\u751f\u6210\u5668\n\n\u751f\u6210\u5668\u6709\u4e24\u79cd\u7c7b\u578b\uff1a\u5355\u914d\u7f6e\uff08single-config\uff09\u548c\u591a\u914d\u7f6e\uff08multi-config\uff09\u3002\n\n- \u5355\u914d\u7f6e\u751f\u6210\u5668\u9700\u8981\u5728\u914d\u7f6e\u9636\u6bb5\u901a\u8fc7 `CMAKE_BUILD_TYPE` \u53c2\u6570\u63d0\u4f9b\u6784\u5efa\u7c7b\u578b\u3002\u5982\u679c\u672a\u5b9a\u4e49\uff0c\u6784\u5efa\u5c06\u56de\u9000\u5230 `RelWithDebInfo` \u7c7b\u578b\uff0c\u9002\u7528\u4e8e\u4ec5\u4ece\u6e90\u7801\u6784\u5efa Manticore \u800c\u4e0d\u53c2\u4e0e\u5f00\u53d1\u7684\u573a\u666f\u3002\u5bf9\u4e8e\u663e\u5f0f\u6784\u5efa\uff0c\u5e94\u63d0\u4f9b\u6784\u5efa\u7c7b\u578b\uff0c\u4f8b\u5982 `-DCMAKE_BUILD_TYPE=Debug`\u3002\n\n- \u591a\u914d\u7f6e\u751f\u6210\u5668\u5219\u5728\u6784\u5efa\u9636\u6bb5\u9009\u62e9\u6784\u5efa\u7c7b\u578b\u3002\u5e94\u4f7f\u7528 `--config` \u9009\u9879\u6307\u5b9a\uff0c\u5426\u5219\u5c06\u6267\u884c\u4e00\u79cd `noconfig` \u6784\u5efa\uff0c\u8fd9\u5e76\u4e0d\u7406\u60f3\u3002\u56e0\u6b64\uff0c\u4f60\u5e94\u59cb\u7ec8\u6307\u5b9a\u6784\u5efa\u7c7b\u578b\uff0c\u4f8b\u5982 `--config Debug`\u3002",
  46. "russian": " \n\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u043f\u0446\u0438\u0438 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438: `WITH_XXX`, `DL_XXX` \u0438 `XXX_LIB` \u2014 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 mysql, odbc \u0438 \u0442. \u0434. \u041e\u043f\u0446\u0438\u044f `WITH_XXX` \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442, \u0431\u0443\u0434\u0443\u0442 \u043b\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0434\u0432\u0435 \u0438\u043c\u0435\u0442\u044c \u044d\u0444\u0444\u0435\u043a\u0442 \u0438\u043b\u0438 \u043d\u0435\u0442. \u0422\u043e \u0435\u0441\u0442\u044c, \u0435\u0441\u043b\u0438 \u0432\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 `WITH_ODBC` \u0432 `0`, \u043d\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c `DL_ODBC` \u0438 `ODBC_LIB`, \u0438 \u043e\u043d\u0438 \u043d\u0435 \u0431\u0443\u0434\u0443\u0442 \u0438\u043c\u0435\u0442\u044c \u043d\u0438\u043a\u0430\u043a\u043e\u0433\u043e \u044d\u0444\u0444\u0435\u043a\u0442\u0430, \u0435\u0441\u043b\u0438 \u0432\u0441\u044f \u044d\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0430. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, `XXX_LIB` \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u0431\u0435\u0437 `DL_XXX`, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0435\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u043e\u043f\u0446\u0438\u044e `DL_XXX`, \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f, \u0438 \u0438\u043c\u044f, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0435 \u0432 `XXX_LIB`, \u0431\u0435\u0441\u043f\u043e\u043b\u0435\u0437\u043d\u043e. \u042d\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043f\u0440\u0438 \u0438\u043d\u0442\u0440\u043e\u0441\u043f\u0435\u043a\u0446\u0438\u0438.\n \n\u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 `iconv` \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442 \u043d\u0430\u043b\u0438\u0447\u0438\u0435 `expat` \u0438 \u0431\u0435\u0441\u043f\u043e\u043b\u0435\u0437\u043d\u043e, \u0435\u0441\u043b\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0430.\n \n\u0422\u0430\u043a\u0436\u0435 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0432\u0441\u0435\u0433\u0434\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b, \u0438 \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u0438\u0437\u0431\u0435\u0433\u0430\u0442\u044c \u0438\u0445 \u043b\u0438\u043d\u043a\u043e\u0432\u043a\u0438. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 Windows \u044d\u0442\u043e ODBC. \u041d\u0430 macOS \u044d\u0442\u043e Expat, iconv \u0438, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0434\u0440\u0443\u0433\u0438\u0435. \u041c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0438\u043d\u0442\u0440\u043e\u0441\u043f\u0435\u043a\u0446\u0438\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0442\u0430\u043a\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0438 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e `WITH_XXX` \u0434\u043b\u044f \u043d\u0438\u0445, \u0431\u0435\u0437 `DL_XXX` \u0438 `XXX_LIB`, \u0447\u0442\u043e \u0443\u043f\u0440\u043e\u0449\u0430\u0435\u0442 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044e.\n \n\u0421 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043e\u043f\u0446\u0438\u044f\u043c\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u0430\u043a:\n \nCODE_BLOCK_7\n \n\u041f\u043e\u043c\u0438\u043c\u043e \u043e\u0431\u0449\u0438\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438, \u0432\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c \u0444\u0430\u0439\u043b `CMakeCache.txt`, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 \u0441\u0431\u043e\u0440\u043a\u0438 \u0441\u0440\u0430\u0437\u0443 \u043f\u043e\u0441\u043b\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438. \u041b\u044e\u0431\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0435 \u0442\u0430\u043c, \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u044f\u0432\u043d\u043e \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u043f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 cmake. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c `cmake -DHAVE_GETADDRINFO_A=FALSE ...`, \u0438 \u044d\u0442\u043e\u0442 \u0437\u0430\u043f\u0443\u0441\u043a \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c \u0440\u0430\u043d\u0435\u0435 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u044d\u0442\u043e\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439, \u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0442\u043e, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u044b \u0443\u043a\u0430\u0437\u0430\u043b\u0438.\n \n#### \u0421\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f\n \n\u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0435\u0437\u043d\u044b \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0441\u0432\u043e\u0435\u043e\u0431\u0440\u0430\u0437\u043d\u044b\u0445 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u043e\u0442 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0441\u0431\u043e\u0440\u043a\u0438 \u0438 \u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442. \u0414\u043b\u044f \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438 \u2014 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u043e\u0431\u0430\u0432\u0438\u0432 \u0438\u0445 \u0432 \u0444\u0430\u0439\u043b `.bashrc`, \u0432\u0441\u0442\u0440\u043e\u0438\u0432 \u0432 Dockerfile \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0441\u0431\u043e\u0440\u043a\u0438 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 Docker \u0438\u043b\u0438 \u043f\u0440\u043e\u043f\u0438\u0441\u0430\u0432 \u0438\u0445 \u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a Windows. \u0422\u0430\u043a\u0436\u0435 \u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043d\u0430 \u0432\u0440\u0435\u043c\u044f \u0441\u0435\u0430\u043d\u0441\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e `export VAR=value` \u0432 \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0435. \u0418\u043b\u0438 \u0435\u0449\u0451 \u043a\u043e\u0440\u043e\u0447\u0435 \u2014 \u0434\u043e\u0431\u0430\u0432\u0438\u0432 \u043f\u0435\u0440\u0435\u0434 \u0432\u044b\u0437\u043e\u0432\u043e\u043c cmake, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 `CACHEB=/my/cache cmake ...` \u2014 \u0442\u043e\u0433\u0434\u0430 \u044d\u0442\u043e \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432\u044b\u0437\u043e\u0432\u0430 \u0438 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432\u0438\u0434\u043d\u043e \u043f\u0440\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c.\n \n\u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u0442\u0430\u043a\u0438\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u043c\u043e\u0433\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0432\u043e\u043e\u0431\u0449\u0435 cmake \u0438 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438. \u042d\u0442\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, `CXX`, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0430\u044f \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 C++, \u0438\u043b\u0438 `CXX_FLAGS` \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043e\u043f\u0446\u0438\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0438 \u0442. \u0434.\n \n\u0412 \u0442\u043e \u0436\u0435 \u0432\u0440\u0435\u043c\u044f \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u043d\u044b\u0435 \u0434\u043b\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 Manticore, \u043f\u0440\u0438\u0434\u0443\u043c\u0430\u043d\u043d\u044b\u0435 \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u043d\u0430\u0448\u0438\u0445 \u0441\u0431\u043e\u0440\u043e\u043a.\n \n- **CACHEB** \u2014 \u0442\u043e \u0436\u0435, \u0447\u0442\u043e \u0438 \u043e\u043f\u0446\u0438\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 **CACHEB**\n- **LIBS_BUNDLE** \u2014 \u0442\u043e \u0436\u0435, \u0447\u0442\u043e \u0438 \u043e\u043f\u0446\u0438\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 **LIBS_BUNDLE**\n- **DISTR** \u2014 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043e\u043f\u0446\u0438\u0438 `DISTR_BUILD` \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 `-DPACK=1`.\n- **DIAGNOSTIC** \u2014 \u0434\u0435\u043b\u0430\u0435\u0442 \u0432\u044b\u0432\u043e\u0434 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 cmake \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u043c, \u043e\u0431\u044a\u044f\u0441\u043d\u044f\u044f \u0432\u0441\u0451 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0435\n- **WRITEB** \u2014 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442 \u043d\u0430\u043b\u0438\u0447\u0438\u0435 **LIBS_BUNDLE** \u0438, \u0435\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430, \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442 \u0430\u0440\u0445\u0438\u0432\u044b \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c\u0438 \u0440\u0430\u0437\u043d\u044b\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0432 \u043f\u0430\u043f\u043a\u0443 LIBS_BUNDLE. \u0422\u043e \u0435\u0441\u0442\u044c, \u0435\u0441\u043b\u0438 \u0432\u044b\u0445\u043e\u0434\u0438\u0442 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441\u0442\u0435\u043c\u043c\u0435\u0440\u0430, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0443\u0434\u0430\u043b\u0438\u0442\u044c libstemmer_c.tgz \u0438\u0437 \u0431\u0430\u043d\u0434\u043b\u0430, \u0430 \u0437\u0430\u0442\u0435\u043c \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043e\u0434\u043d\u043e\u043a\u0440\u0430\u0442\u043d\u044b\u0439 `WRITEB=1 cmake ...` \u2014 \u043e\u043d \u043d\u0435 \u043d\u0430\u0439\u0434\u0451\u0442 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 \u0441\u0442\u0435\u043c\u043c\u0435\u0440\u0430 \u0432 \u0431\u0430\u043d\u0434\u043b\u0435 \u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442 \u0438\u0445 \u0441 \u0441\u0430\u0439\u0442\u0430 \u043f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u0430 \u0432 \u0431\u0430\u043d\u0434\u043b (\u0431\u0435\u0437 WRITEB \u043e\u043d \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442 \u0438\u0445 \u0432\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u043f\u0430\u043f\u043a\u0443 \u0432\u043d\u0443\u0442\u0440\u0438 \u0441\u0431\u043e\u0440\u043a\u0438 \u0438 \u043e\u043d\u0438 \u0438\u0441\u0447\u0435\u0437\u043d\u0443\u0442 \u043f\u0440\u0438 \u043e\u0447\u0438\u0441\u0442\u043a\u0435 \u044d\u0442\u043e\u0433\u043e \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430).\n \n\u0412 \u043a\u043e\u043d\u0446\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0432\u0438\u0434\u0435\u0442\u044c, \u0447\u0442\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u0438 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043e, \u0432 \u0441\u043f\u0438\u0441\u043a\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a\u043e\u0433\u043e \u0432\u0438\u0434\u0430:\n \nCODE_BLOCK_8\n \n### \u0421\u0431\u043e\u0440\u043a\u0430\n \nCODE_BLOCK_9\n \n### \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\n \n\u0414\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435:\n \nCODE_BLOCK_10\n \n\u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 (\u043d\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e) \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435\n \nCODE_BLOCK_11\n \n### \u0421\u0431\u043e\u0440\u043a\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432\n \n\u0414\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u0430\u043a\u0435\u0442\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0446\u0435\u043b\u044c `package`. \u041e\u043d\u0430 \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u043f\u0430\u043a\u0435\u0442 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0432\u044b\u0431\u043e\u0440\u043e\u043c, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u043e\u043f\u0446\u0438\u0435\u0439 `-DDISTR_BUILD`. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0430\u0440\u0445\u0438\u0432 .zip \u0438\u043b\u0438 .tgz \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u043c\u0438 \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0444\u0430\u0439\u043b\u0430\u043c\u0438.\n \nCODE_BLOCK_12\n \n## \u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u043e\u0434\u0432\u0438\u043d\u0443\u0442\u044b\u0435 \u043c\u043e\u043c\u0435\u043d\u0442\u044b \u0441\u0431\u043e\u0440\u043a\u0438\n \n### \u041f\u0435\u0440\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f (\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435) \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 single-config\n \n\u0415\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u0438\u0437\u043c\u0435\u043d\u044f\u043b\u0438 \u043f\u0443\u0442\u044c \u043a \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c \u0438 \u0441\u0431\u043e\u0440\u043a\u0435, \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441\u0431\u043e\u0440\u043a\u0438 \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435:\n \nCODE_BLOCK_13\n \n\u0415\u0441\u043b\u0438 \u043f\u043e \u043a\u0430\u043a\u043e\u0439-\u043b\u0438\u0431\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0435 \u044d\u0442\u043e \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0444\u0430\u0439\u043b `CMakeCache.txt`, \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0439 \u0432 \u043f\u0430\u043f\u043a\u0435 \u0441\u0431\u043e\u0440\u043a\u0438. \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0448\u0430\u0433\u0430 \u0432\u0430\u043c\n\u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u0441\u043d\u043e\u0432\u0430 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c cmake, \u0443\u043a\u0430\u0437\u0430\u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c\u0438 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0432 \u043e\u043f\u0446\u0438\u0438.\n \n\u0415\u0441\u043b\u0438 \u044d\u0442\u043e \u0442\u043e\u0436\u0435 \u043d\u0435 \u043f\u043e\u043c\u043e\u0436\u0435\u0442, \u043f\u0440\u043e\u0441\u0442\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 \u0441\u0431\u043e\u0440\u043a\u0438 \u0438 \u043d\u0430\u0447\u043d\u0438\u0442\u0435 \u0437\u0430\u043d\u043e\u0432\u043e.\n \n### \u0422\u0438\u043f\u044b \u0441\u0431\u043e\u0440\u043a\u0438\n \n\u041a\u0440\u0430\u0442\u043a\u043e \u2014 \u043f\u0440\u043e\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 `--config RelWithDebInfo`, \u043a\u0430\u043a \u0443\u043a\u0430\u0437\u0430\u043d\u043e \u0432\u044b\u0448\u0435. \u042d\u0442\u043e \u043d\u0435 \u043e\u0448\u0438\u0431\u0451\u0442\u0441\u044f.\n \n\u041c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 \u0441\u0431\u043e\u0440\u043a\u0438. \u0414\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u044d\u0442\u043e `Debug` \u2014 \u043e\u043d \u0437\u0430\u0434\u0430\u0451\u0442 \u0444\u043b\u0430\u0433\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0434\u043b\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u043f\u0440\u043e\u0447\u0435\u0433\u043e \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043e\u0442\u043b\u0430\u0434\u043a\u0430 \u0431\u044b\u043b\u0430 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0443\u0434\u043e\u0431\u043d\u043e\u0439, \u0441 \u043f\u043e\u0448\u0430\u0433\u043e\u0432\u044b\u043c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435\u043c. \u041e\u0434\u043d\u0430\u043a\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u0438 \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u0430\u043a\u0448\u043d\u0430.\n \n\u0414\u043b\u044f \u0440\u0435\u043b\u0438\u0437\u043d\u043e\u0439 \u0441\u0431\u043e\u0440\u043a\u0438 \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0434\u0440\u0443\u0433\u043e\u0439 \u0442\u0438\u043f \u2014 `RelWithDebInfo`, \u0447\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u00ab\u0440\u0435\u043b\u0438\u0437\u043d\u0430\u044f \u0441\u0431\u043e\u0440\u043a\u0430 \u0441 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439\u00bb. \u041e\u043d \u0441\u043e\u0437\u0434\u0430\u0451\u0442 \u043f\u0440\u043e\u0434\u0430\u043a\u0448\u043d-\u0431\u0430\u0439\u043d\u0430\u0440\u0438 \u0441 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0439 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439. \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u0437\u0430\u0442\u0435\u043c \u0432\u044b\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0430\u043a\u0435\u0442\u044b debuginfo, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0440\u0435\u043b\u0438\u0437\u043d\u044b\u043c\u0438 \u043f\u0430\u043a\u0435\u0442\u0430\u043c\u0438 \u0438 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u044b \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u043f\u0440\u0438 \u0441\u0431\u043e\u044f\u0445 \u2014 \u0434\u043b\u044f \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0438 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0448\u0438\u0431\u043e\u043a. CMake \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 `Release` \u0438 `MinSizeRel`, \u043d\u043e \u043c\u044b \u0438\u0445 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c. \u0415\u0441\u043b\u0438 \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d, cmake \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442 \u0441\u0431\u043e\u0440\u043a\u0443 `noconfig`.\n \n#### \u0413\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0441\u0431\u043e\u0440\u043a\u0438\n \n\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432: single-config \u0438 multi-config.\n \n- \u0413\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 single-config \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u044f \u0442\u0438\u043f\u0430 \u0441\u0431\u043e\u0440\u043a\u0438 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0447\u0435\u0440\u0435\u0437 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 `CMAKE_BUILD_TYPE`. \u0415\u0441\u043b\u0438 \u043e\u043d \u043d\u0435 \u0437\u0430\u0434\u0430\u043d, \u0441\u0431\u043e\u0440\u043a\u0430 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043f\u0435\u0440\u0435\u0439\u0434\u0451\u0442 \u043a \u0442\u0438\u043f\u0443 `RelWithDebInfo`, \u0447\u0442\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442, \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u043e\u0431\u0440\u0430\u0442\u044c Manticore \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432 \u0438 \u043d\u0435 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435. \u0414\u043b\u044f \u044f\u0432\u043d\u043e\u0439 \u0441\u0431\u043e\u0440\u043a\u0438 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 `-DCMAKE_BUILD_TYPE=Debug`.\n- \u0413\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 multi-config \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442 \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0441\u0431\u043e\u0440\u043a\u0438. \u0415\u0433\u043e \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0447\u0435\u0440\u0435\u0437 \u043e\u043f\u0446\u0438\u044e `--config`, \u0438\u043d\u0430\u0447\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0430 \u043d\u0435\u043a\u0430\u044f \u0441\u0431\u043e\u0440\u043a\u0430 `noconfig`, \u0447\u0442\u043e \u043d\u0435\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u0441\u0435\u0433\u0434\u0430 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0439\u0442\u0435 \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 `--config Debug`."
  47. },
  48. "is_code_or_comment": false,
  49. "model": "openai:o4-mini",
  50. "updated_at": 1766371445
  51. },
  52. "e1dcb8b2a29799c9a2d883a288cba80eb56fc5dbe8bd925d15c5e50d389c097c": {
  53. "original": "Note, that some options are organized in triples: `WITH_XXX`, `DL_XXX` and `XXX_LIB` - like support of mysql, odbc, etc. `WITH_XXX` determines whether next two have an effect or not. I.e., if you set `WITH_ODBC` to `0` - there is no sence to provide `DL_ODBC` and `ODBC_LIB`, and these two will have no effect if the whole feature is disabled. Also, `XXX_LIB` has no sense without `DL_XXX`, because if you don't want `DL_XXX` option, dynamic loading will not be used, and name provided by `XXX_LIB` is useless. That is used by default introspection.\n\nAlso, using the `iconv` library assumes `expat` and is useless if the last is disabled.\n\nAlso, some libraries may be always available, and so, there is no sense to avoid linkage with them. For example, in Windows that is ODBC. On macOS that is Expat, iconv, and m.b. others. Default introspection determines such libraries and effectively emits only `WITH_XXX` for them, without `DL_XXX` and `XXX_LIB`, that makes the things simpler.\n\nWith some options in game configuring might look like:\n\nCODE_BLOCK_7\n\nApart general configuration values, you may also investigate file `CMakeCache.txt` which is left in build folder right after you run configuration. Any values defined there might be redefined explicitly when running cmake. For example, you may run `cmake -DHAVE_GETADDRINFO_A=FALSE ...`, and that config run will not assume investigated value of that variable, but will use one you've provided.\n\n#### Specific environment variables\n\nEnvironment variables are useful for providing some kind of global settings which are stored aside from build configuration and are always present. For persistence, they may be set globally on the system using different ways - like adding them to the `.bashrc` file, or embedding them into a Dockerfile if you produce a docker-based build system, or writing them in system preferences environment variables on Windows. Also, you may set them short-lived using `export VAR=value` in the shell. Or even shorter, by prepending values to the cmake call, like `CACHEB=/my/cache cmake ...` - this way it will only work on this call and will not be visible on the next.\n\nSome of such variables are known to be used in general by cmake and some other tools. That is things like `CXX` which determines the current C++ compiler, or `CXX_FLAGS` to provide compiler flags, etc.\n\nHowever, we have some variables that are specific to manticore configuration, which are invented solely for our builds.\n\n- **CACHEB** - same as the config **CACHEB** option\n- **LIBS_BUNDLE** - same as the config **LIBS_BUNDLE** option\n- **DISTR** - used to initialize the `DISTR_BUILD` option when `-DPACK=1` is used.\n- **DIAGNOSTIC** - makes the output of cmake configuration much more verbose, explaining everything happening\n- **WRITEB** - assumes **LIBS_BUNDLE** and, if set, will download source archive files for different tools to the LIBS_BUNDLE folder. That is, if a fresh version of the stemmer comes out - you can manually remove libstemmer_c.tgz from the bundle and then run a one-shot `WRITEB=1 cmake ...` - it will not find the stemmer's sources in the bundle and will then download them from the vendor's site to the bundle (without WRITEB it will download them into a temporary folder inside the build and will disappear when you wipe the build folder).\n\nAt the end of configuration, you may see what is available and will be used in a list like this one:\n\nCODE_BLOCK_8\n\n### Building\n\nCODE_BLOCK_9\n\n### Installation\n\nTo install run:\n\nCODE_BLOCK_10\n\nto install into custom (non-default) folder, run\n\nCODE_BLOCK_11\n\n### Building packages\n\nFor building a package, use the target `package`. It will build the package according to the selection provided by the `-DDISTR_BUILD` option. By default, it will be a simple .zip or .tgz archive with all binaries and supplementary files.\n\nCODE_BLOCK_12\n\n## Some advanced things about building\n\n### Recompilation (update) on single-config\n\nIf you haven't changed the path for sources and build, simply move to your build folder and run:\n\nCODE_BLOCK_13\n\nIf by any reason it doesn't work, you can delete file `CMakeCache.txt` located in the build folder. After this step you\nhave to run cmake again, pointing to the source folder and configuring the options.\n\nIf it also doesn't help, just wipe out your build folder and begin from scratch.\n\n### Build types\n\nBriefly - just use `--config RelWithDebInfo` as written above. It will make no mistake.\n\nWe use two build types. For development, it is `Debug` - it assigns compiler flags for optimization and other things in a way that it is very friendly for development, meaning the debug runs with step-by-step execution. However, the produced binaries are quite large and slow for production.\n\nFor releasing, we use another type - `RelWithDebInfo` - which means 'release build with debug info'. It produces production binaries with embedded debug info. The latter is then split away into separate debuginfo packages which are stored aside with release packages and might be used in case of some issues like crashes - for investigation and bugfixing. Cmake also provides `Release` and `MinSizeRel`, but we don't use them. If the build type is not available, cmake will make a `noconfig` build.\n\n#### Build system generators\n\nThere are two types of generators: single-config and multi-config.\n\n- Single-config needs the build type provided during configuration, via the `CMAKE_BUILD_TYPE` parameter. If it is not defined, the build will fall back to the `RelWithDebInfo` type which is suitable if you just want to build Manticore from sources and not participate in development. For explicit builds, you should provide a build type, like `-DCMAKE_BUILD_TYPE=Debug`.\n- Multi-config selects the build type during the build. It should be provided with the `--config` option, otherwise it will build a kind of `noconfig`, which is not desirable. So, you should always specify the build type, like `--config Debug`.",
  54. "translations": {
  55. "russian": "\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u043f\u0446\u0438\u0438 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0432 \u0442\u0440\u043e\u0439\u043a\u0438: `WITH_XXX`, `DL_XXX` \u0438 `XXX_LIB` \u2014 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 mysql, odbc \u0438 \u0442.\u0434. `WITH_XXX` \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442, \u0431\u0443\u0434\u0443\u0442 \u043b\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0434\u0432\u0435 \u0438\u043c\u0435\u0442\u044c \u044d\u0444\u0444\u0435\u043a\u0442 \u0438\u043b\u0438 \u043d\u0435\u0442. \u0422\u043e \u0435\u0441\u0442\u044c, \u0435\u0441\u043b\u0438 \u0432\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 `WITH_ODBC` \u0432 `0` \u2014 \u043d\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c `DL_ODBC` \u0438 `ODBC_LIB`, \u0438 \u044d\u0442\u0438 \u0434\u0432\u0435 \u043d\u0435 \u0431\u0443\u0434\u0443\u0442 \u0438\u043c\u0435\u0442\u044c \u044d\u0444\u0444\u0435\u043a\u0442\u0430, \u0435\u0441\u043b\u0438 \u0432\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0430. \u0422\u0430\u043a\u0436\u0435 `XXX_LIB` \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u0431\u0435\u0437 `DL_XXX`, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u043f\u0446\u0438\u044e `DL_XXX`, \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0435 \u0431\u0443\u0434\u0435\u0442, \u0438 \u0438\u043c\u044f, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0435 `XXX_LIB`, \u0431\u0435\u0441\u043f\u043e\u043b\u0435\u0437\u043d\u043e. \u042d\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0438\u043d\u0442\u0440\u043e\u0441\u043f\u0435\u043a\u0446\u0438\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e.\n\n\u0422\u0430\u043a\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 `iconv` \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442 \u043d\u0430\u043b\u0438\u0447\u0438\u0435 `expat` \u0438 \u0431\u0435\u0441\u043f\u043e\u043b\u0435\u0437\u043d\u043e, \u0435\u0441\u043b\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0430.\n\n\u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0432\u0441\u0435\u0433\u0434\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b, \u0438 \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u0438\u0437\u0431\u0435\u0433\u0430\u0442\u044c \u043b\u0438\u043d\u043a\u043e\u0432\u043a\u0438 \u0441 \u043d\u0438\u043c\u0438. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 Windows \u044d\u0442\u043e ODBC. \u0412 macOS \u044d\u0442\u043e Expat, iconv \u0438, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0434\u0440\u0443\u0433\u0438\u0435. \u0418\u043d\u0442\u0440\u043e\u0441\u043f\u0435\u043a\u0446\u0438\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0442\u0430\u043a\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0438 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e `WITH_XXX` \u0434\u043b\u044f \u043d\u0438\u0445, \u0431\u0435\u0437 `DL_XXX` \u0438 `XXX_LIB`, \u0447\u0442\u043e \u0443\u043f\u0440\u043e\u0449\u0430\u0435\u0442 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044e.\n\n\u0421 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043e\u043f\u0446\u0438\u044f\u043c\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u0430\u043a:\n\nCODE_BLOCK_7\n\n\u041f\u043e\u043c\u0438\u043c\u043e \u043e\u0431\u0449\u0438\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438, \u0432\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0437\u0443\u0447\u0438\u0442\u044c \u0444\u0430\u0439\u043b `CMakeCache.txt`, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0430\u043f\u043a\u0435 \u0441\u0431\u043e\u0440\u043a\u0438 \u0441\u0440\u0430\u0437\u0443 \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438. \u041b\u044e\u0431\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u0442\u0430\u043c, \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u044f\u0432\u043d\u043e \u043f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 cmake. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c `cmake -DHAVE_GETADDRINFO_A=FALSE ...`, \u0438 \u044d\u0442\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u044d\u0442\u043e\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439, \u0430 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0435 \u0432\u0430\u043c\u0438.\n\n#### \u0421\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f\n\n\u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0435\u0437\u043d\u044b \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u043e\u0442 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0441\u0431\u043e\u0440\u043a\u0438 \u0438 \u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442. \u0414\u043b\u044f \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u0441\u0442\u0432\u0430 \u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438 \u2014 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u043e\u0431\u0430\u0432\u0438\u0432 \u0438\u0445 \u0432 \u0444\u0430\u0439\u043b `.bashrc`, \u0438\u043b\u0438 \u0432\u0441\u0442\u0440\u043e\u0438\u0432 \u0432 Dockerfile, \u0435\u0441\u043b\u0438 \u0432\u044b \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0441\u0431\u043e\u0440\u043a\u0438 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 Docker, \u0438\u043b\u0438 \u0437\u0430\u043f\u0438\u0441\u0430\u0432 \u0438\u0445 \u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0432 Windows. \u0422\u0430\u043a\u0436\u0435 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0438\u0445 \u043d\u0430 \u043a\u043e\u0440\u043e\u0442\u043a\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e `export VAR=value` \u0432 \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0435. \u0418\u043b\u0438 \u0434\u0430\u0436\u0435 \u043a\u043e\u0440\u043e\u0447\u0435, \u0434\u043e\u0431\u0430\u0432\u0438\u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u0434 \u0432\u044b\u0437\u043e\u0432\u043e\u043c cmake, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, `CACHEB=/my/cache cmake ...` \u2014 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043e\u043d\u0438 \u0431\u0443\u0434\u0443\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0432\u044b\u0437\u043e\u0432\u0435 \u0438 \u043d\u0435 \u0431\u0443\u0434\u0443\u0442 \u0432\u0438\u0434\u043d\u044b \u043f\u0440\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c.\n\n\u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u0442\u0430\u043a\u0438\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, \u043a\u0430\u043a \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0432 \u0446\u0435\u043b\u043e\u043c cmake \u0438 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438. \u042d\u0442\u043e \u0442\u0430\u043a\u0438\u0435 \u0432\u0435\u0449\u0438, \u043a\u0430\u043a `CXX`, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 C++, \u0438\u043b\u0438 `CXX_FLAGS` \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0444\u043b\u0430\u0433\u043e\u0432 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0438 \u0442.\u0434.\n\n\u041e\u0434\u043d\u0430\u043a\u043e \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u043d\u044b\u0435 \u0434\u043b\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 Manticore, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u043f\u0440\u0438\u0434\u0443\u043c\u0430\u043d\u044b \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u043d\u0430\u0448\u0438\u0445 \u0441\u0431\u043e\u0440\u043e\u043a.\n\n- **CACHEB** \u2014 \u0442\u043e \u0436\u0435 \u0441\u0430\u043c\u043e\u0435, \u0447\u0442\u043e \u043e\u043f\u0446\u0438\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 **CACHEB**\n- **LIBS_BUNDLE** \u2014 \u0442\u043e \u0436\u0435 \u0441\u0430\u043c\u043e\u0435, \u0447\u0442\u043e \u043e\u043f\u0446\u0438\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 **LIBS_BUNDLE**\n- **DISTR** \u2014 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043e\u043f\u0446\u0438\u0438 `DISTR_BUILD`, \u043a\u043e\u0433\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f `-DPACK=1`.\n- **DIAGNOSTIC** \u2014 \u0434\u0435\u043b\u0430\u0435\u0442 \u0432\u044b\u0432\u043e\u0434 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 cmake \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u043c, \u043e\u0431\u044a\u044f\u0441\u043d\u044f\u044f \u0432\u0441\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0435\n- **WRITEB** \u2014 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442 **LIBS_BUNDLE** \u0438, \u0435\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e, \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u0430\u0440\u0445\u0438\u0432\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0434\u043b\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0432 \u043f\u0430\u043f\u043a\u0443 LIBS_BUNDLE. \u0422\u043e \u0435\u0441\u0442\u044c, \u0435\u0441\u043b\u0438 \u0432\u044b\u0445\u043e\u0434\u0438\u0442 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441\u0442\u0435\u043c\u043c\u0435\u0440\u0430 \u2014 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0443\u0434\u0430\u043b\u0438\u0442\u044c libstemmer_c.tgz \u0438\u0437 \u0431\u0430\u043d\u0434\u043b\u0430, \u0430 \u0437\u0430\u0442\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043e\u0434\u043d\u043e\u043a\u0440\u0430\u0442\u043d\u044b\u0439 `WRITEB=1 cmake ...` \u2014 \u043e\u043d \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u0442 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 \u0441\u0442\u0435\u043c\u043c\u0435\u0440\u0430 \u0432 \u0431\u0430\u043d\u0434\u043b\u0435 \u0438 \u0437\u0430\u0442\u0435\u043c \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442 \u0438\u0445 \u0441 \u0441\u0430\u0439\u0442\u0430 \u043f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u0430 \u0432 \u0431\u0430\u043d\u0434\u043b (\u0431\u0435\u0437 WRITEB \u043e\u043d \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442 \u0438\u0445 \u0432\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u043f\u0430\u043f\u043a\u0443 \u0432\u043d\u0443\u0442\u0440\u0438 \u0441\u0431\u043e\u0440\u043a\u0438, \u0438 \u043e\u043d\u0438 \u0438\u0441\u0447\u0435\u0437\u043d\u0443\u0442, \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 \u0441\u0431\u043e\u0440\u043a\u0438).\n\n\u0412 \u043a\u043e\u043d\u0446\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0432\u0438\u0434\u0435\u0442\u044c, \u0447\u0442\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u0438 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f, \u0432 \u0441\u043f\u0438\u0441\u043a\u0435, \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u043c \u044d\u0442\u043e\u043c\u0443:\n\nCODE_BLOCK_8\n\n### \u0421\u0431\u043e\u0440\u043a\u0430\n\nCODE_BLOCK_9\n\n### \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\n\n\u0414\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435:\n\nCODE_BLOCK_10\n\n\u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0443\u044e (\u043d\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e) \u043f\u0430\u043f\u043a\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435\n\nCODE_BLOCK_11\n\n### \u0421\u0431\u043e\u0440\u043a\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432\n\n\u0414\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u0430\u043a\u0435\u0442\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0446\u0435\u043b\u044c `package`. \u041e\u043d\u0430 \u0441\u043e\u0431\u0435\u0440\u0435\u0442 \u043f\u0430\u043a\u0435\u0442 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0432\u044b\u0431\u043e\u0440\u043e\u043c, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c \u043e\u043f\u0446\u0438\u0435\u0439 `-DDISTR_BUILD`. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0430\u0440\u0445\u0438\u0432 .zip \u0438\u043b\u0438 .tgz \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u043c\u0438 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0444\u0430\u0439\u043b\u0430\u043c\u0438.\n\nCODE_BLOCK_12\n\n## \u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043e \u0441\u0431\u043e\u0440\u043a\u0435\n\n### \u041f\u0435\u0440\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f (\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435) \u043f\u0440\u0438 \u043e\u0434\u043d\u043e\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0431\u043e\u0440\u043a\u0435\n\n\u0415\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u043c\u0435\u043d\u044f\u043b\u0438 \u043f\u0443\u0442\u044c \u043a \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c \u0438 \u0441\u0431\u043e\u0440\u043a\u0435, \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441\u0431\u043e\u0440\u043a\u0438 \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435:\n\nCODE_BLOCK_13\n\n\u0415\u0441\u043b\u0438 \u043f\u043e \u043a\u0430\u043a\u043e\u0439-\u043b\u0438\u0431\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0435 \u044d\u0442\u043e \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0444\u0430\u0439\u043b `CMakeCache.txt`, \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0439 \u0432 \u043f\u0430\u043f\u043a\u0435 \u0441\u0431\u043e\u0440\u043a\u0438. \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0448\u0430\u0433\u0430 \u0432\u0430\u043c\n\u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u0441\u043d\u043e\u0432\u0430 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c cmake, \u0443\u043a\u0430\u0437\u0430\u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c\u0438 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0432 \u043e\u043f\u0446\u0438\u0438.\n\n\u0415\u0441\u043b\u0438 \u044d\u0442\u043e \u0442\u043e\u0436\u0435 \u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442, \u043f\u0440\u043e\u0441\u0442\u043e \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 \u0441\u0431\u043e\u0440\u043a\u0438 \u0438 \u043d\u0430\u0447\u043d\u0438\u0442\u0435 \u0441 \u043d\u0443\u043b\u044f.\n\n### \u0422\u0438\u043f\u044b \u0441\u0431\u043e\u0440\u043a\u0438\n\n\u041a\u0440\u0430\u0442\u043a\u043e \u2014 \u043f\u0440\u043e\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 `--config RelWithDebInfo`, \u043a\u0430\u043a \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0432\u044b\u0448\u0435. \u042d\u0442\u043e \u043d\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u0442 \u043a \u043e\u0448\u0438\u0431\u043a\u0435.\n\n\u041c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 \u0441\u0431\u043e\u0440\u043a\u0438. \u0414\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u044d\u0442\u043e `Debug` \u2014 \u043e\u043d \u043d\u0430\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0444\u043b\u0430\u0433\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0434\u043b\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u0432\u0435\u0449\u0435\u0439 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e \u044d\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u0443\u0434\u043e\u0431\u043d\u043e \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0442\u043e \u0435\u0441\u0442\u044c \u043e\u0442\u043b\u0430\u0434\u043a\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0448\u0430\u0433\u043e\u0432\u043e. \u041e\u0434\u043d\u0430\u043a\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u0438 \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0430.\n\n\u0414\u043b\u044f \u0432\u044b\u043f\u0443\u0441\u043a\u0430 \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0434\u0440\u0443\u0433\u043e\u0439 \u0442\u0438\u043f \u2014 `RelWithDebInfo` \u2014 \u0447\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 '\u0441\u0431\u043e\u0440\u043a\u0430 \u0434\u043b\u044f \u0432\u044b\u043f\u0443\u0441\u043a\u0430 \u0441 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439'. \u041e\u043d \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0441\u043e \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0439 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439. \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u0437\u0430\u0442\u0435\u043c \u043e\u0442\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0430\u043a\u0435\u0442\u044b debuginfo, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u043e\u0442 \u0440\u0435\u043b\u0438\u0437\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0438 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u044b \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a \u0441\u0431\u043e\u0438, \u2014 \u0434\u043b\u044f \u0440\u0430\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0448\u0438\u0431\u043e\u043a. Cmake \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 `Release` \u0438 `MinSizeRel`, \u043d\u043e \u043c\u044b \u0438\u0445 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c. \u0415\u0441\u043b\u0438 \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d, cmake \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442 \u0441\u0431\u043e\u0440\u043a\u0443 `noconfig`.\n\n#### \u0413\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0441\u0431\u043e\u0440\u043a\u0438\n\n\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432: \u043e\u0434\u043d\u043e\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0438 \u043c\u043d\u043e\u0433\u043e\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435.\n\n- \u041e\u0434\u043d\u043e\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u043c \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438, \u0447\u0435\u0440\u0435\u0437 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 `CMAKE_BUILD_TYPE`. \u0415\u0441\u043b\u0438 \u043e\u043d \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d, \u0441\u0431\u043e\u0440\u043a\u0430 \u043f\u0435\u0440\u0435\u0439\u0434\u0435\u0442 \u043a \u0442\u0438\u043f\u0443 `RelWithDebInfo`, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442, \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u043e\u0431\u0440\u0430\u0442\u044c Manticore \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432 \u0438 \u043d\u0435 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435. \u0414\u043b\u044f \u044f\u0432\u043d\u044b\u0445 \u0441\u0431\u043e\u0440\u043e\u043a \u0432\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, `-DCMAKE_BUILD_TYPE=Debug`.\n- \u041c\u043d\u043e\u0433\u043e\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0432\u044b\u0431\u0438\u0440\u0430\u044e\u0442 \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0441\u0431\u043e\u0440\u043a\u0438. \u041e\u043d \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u0441 \u043e\u043f\u0446\u0438\u0435\u0439 `--config`, \u0438\u043d\u0430\u0447\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0431\u0440\u0430\u043d\u0430 \u0440\u0430\u0437\u043d\u043e\u0432\u0438\u0434\u043d\u043e\u0441\u0442\u044c `noconfig`, \u0447\u0442\u043e \u043d\u0435\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u044b \u0432\u0441\u0435\u0433\u0434\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, `--config Debug`."
  56. },
  57. "is_code_or_comment": false,
  58. "model": "deepseek/deepseek-v3.2",
  59. "updated_at": 1766373560
  60. },
  61. "bcbbcffd82d8813d869eb7adeede24f45d884e9d2294f235254a6ada568bf501": {
  62. "original": "Note, that some options are organized in triples: `WITH_XXX`, `DL_XXX` and `XXX_LIB` - like support of mysql, odbc, etc. `WITH_XXX` determines whether next two have an effect or not. I.e., if you set `WITH_ODBC` to `0` - there is no sence to provide `DL_ODBC` and `ODBC_LIB`, and these two will have no effect if the whole feature is disabled. Also, `XXX_LIB` has no sense without `DL_XXX`, because if you don't want `DL_XXX` option, dynamic loading will not be used, and name provided by `XXX_LIB` is useless. That is used by default introspection.\n\nAlso, using the `iconv` library assumes `expat` and is useless if the last is disabled.\n\nAlso, some libraries may be always available, and so, there is no sense to avoid linkage with them. For example, in Windows that is ODBC. On macOS that is Expat, iconv, and m.b. others. Default introspection determines such libraries and effectively emits only `WITH_XXX` for them, without `DL_XXX` and `XXX_LIB`, that makes the things simpler.\n\nWith some options in game configuring might look like:\n\nCODE_BLOCK_7\n\nApart general configuration values, you may also investigate file `CMakeCache.txt` which is left in build folder right after you run configuration. Any values defined there might be redefined explicitly when running cmake. For example, you may run `cmake -DHAVE_GETADDRINFO_A=FALSE ...`, and that config run will not assume investigated value of that variable, but will use one you've provided.\n\n#### Specific environment variables\n\nEnvironment variables are useful for providing some kind of global settings which are stored aside from build configuration and are always present. For persistence, they may be set globally on the system using different ways - like adding them to the `.bashrc` file, or embedding them into a Dockerfile if you produce a docker-based build system, or writing them in system preferences environment variables on Windows. Also, you may set them short-lived using `export VAR=value` in the shell. Or even shorter, by prepending values to the cmake call, like `CACHEB=/my/cache cmake ...` - this way it will only work on this call and will not be visible on the next.\n\nSome of such variables are known to be used in general by cmake and some other tools. That is things like `CXX` which determines the current C++ compiler, or `CXX_FLAGS` to provide compiler flags, etc.\n\nHowever, we have some variables that are specific to manticore configuration, which are invented solely for our builds.\n\n- **CACHEB** - same as the config **CACHEB** option\n- **LIBS_BUNDLE** - same as the config **LIBS_BUNDLE** option\n- **DISTR** - used to initialize the `DISTR_BUILD` option when `-DPACK=1` is used.\n- **DIAGNOSTIC** - makes the output of cmake configuration much more verbose, explaining everything happening\n- **WRITEB** - assumes **LIBS_BUNDLE** and, if set, will download source archive files for different tools to the LIBS_BUNDLE folder. That is, if a fresh version of the stemmer comes out - you can manually remove libstemmer_c.tgz from the bundle and then run a one-shot `WRITEB=1 cmake ...` - it will not find the stemmer's sources in the bundle and will then download them from the vendor's site to the bundle (without WRITEB it will download them into a temporary folder inside the build and will disappear when you wipe the build folder).\n\nAt the end of configuration, you may see what is available and will be used in a list like this one:\n\nCODE_BLOCK_8\n\n### Building\n\nCODE_BLOCK_9\n\n### Installation\n\nTo install run:\n\nCODE_BLOCK_10\n\nto install into custom (non-default) folder, run\n\nCODE_BLOCK_11\n\n### Building packages\n\nFor building a package, use the target `package`. It will build the package according to the selection provided by the `-DDISTR_BUILD` option. By default, it will be a simple .zip or .tgz archive with all binaries and supplementary files.\n\nCODE_BLOCK_12\n\n## Some advanced things about building\n\n### Recompilation (update) on single-config\n\nIf you haven't changed the path for sources and build, simply move to your build folder and run:\n\nCODE_BLOCK_13\n\nIf by any reason it doesn't work, you can delete file `CMakeCache.txt` located in the build folder. After this step you have to run cmake again, pointing to the source folder and configuring the options.\n\nIf it also doesn't help, just wipe out your build folder and begin from scratch.\n\n### Build types\n\nBriefly - just use `--config RelWithDebInfo` as written above. It will make no mistake.\n\nWe use two build types. For development, it is `Debug` - it assigns compiler flags for optimization and other things in a way that it is very friendly for development, meaning the debug runs with step-by-step execution. However, the produced binaries are quite large and slow for production.\n\nFor releasing, we use another type - `RelWithDebInfo` - which means 'release build with debug info'. It produces production binaries with embedded debug info. The latter is then split away into separate debuginfo packages which are stored aside with release packages and might be used in case of some issues like crashes - for investigation and bugfixing. Cmake also provides `Release` and `MinSizeRel`, but we don't use them. If the build type is not available, cmake will make a `noconfig` build.\n\n#### Build system generators\n\nThere are two types of generators: single-config and multi-config.\n\n- Single-config needs the build type provided during configuration, via the `CMAKE_BUILD_TYPE` parameter. If it is not defined, the build will fall back to the `RelWithDebInfo` type which is suitable if you just want to build Manticore from sources and not participate in development. For explicit builds, you should provide a build type, like `-DCMAKE_BUILD_TYPE=Debug`.\n- Multi-config selects the build type during the build. It should be provided with the `--config` option, otherwise it will build a kind of `noconfig`, which is not desirable. So, you should always specify the build type, like `--config Debug`.",
  63. "translations": {
  64. "chinese": "\u6ce8\u610f\uff0c\u6709\u4e9b\u9009\u9879\u662f\u4ee5\u4e09\u5143\u7ec4\u7684\u5f62\u5f0f\u7ec4\u7ec7\u7684\uff1a`WITH_XXX`\uff0c`DL_XXX` \u548c `XXX_LIB` - \u6bd4\u5982 MySQL\u3001ODBC \u7b49\u7684\u652f\u6301\u3002`WITH_XXX` \u51b3\u5b9a\u4e86\u63a5\u4e0b\u6765\u4e24\u4e2a\u9009\u9879\u662f\u5426\u6709\u4f5c\u7528\u3002\u4e5f\u5c31\u662f\u8bf4\uff0c\u5982\u679c\u4f60\u5c06 `WITH_ODBC` \u8bbe\u7f6e\u4e3a `0`\uff0c\u90a3\u4e48\u5c31\u6ca1\u6709\u5fc5\u8981\u63d0\u4f9b `DL_ODBC` \u548c `ODBC_LIB`\uff0c\u5982\u679c\u6574\u4e2a\u529f\u80fd\u88ab\u7981\u7528\uff0c\u8fd9\u4e24\u4e2a\u9009\u9879\u4e5f\u4e0d\u4f1a\u8d77\u4f5c\u7528\u3002\u540c\u6837\uff0c\u5982\u679c\u6ca1\u6709 `DL_XXX` \u9009\u9879\uff0c`XXX_LIB` \u4e5f\u6ca1\u6709\u610f\u4e49\uff0c\u56e0\u4e3a\u5982\u679c\u4e0d\u4f7f\u7528\u52a8\u6001\u52a0\u8f7d\uff0c\u63d0\u4f9b\u7684 `XXX_LIB` \u540d\u79f0\u5c31\u65e0\u7528\u6b66\u4e4b\u5730\u3002\u8fd9\u9ed8\u8ba4\u4f7f\u7528\u4e86\u5185\u90e8\u53cd\u67e5\u3002\n\n\u53e6\u5916\uff0c\u4f7f\u7528 `iconv` \u5e93\u5047\u8bbe\u4e86 `expat` \u7684\u5b58\u5728\uff0c\u5e76\u4e14\u5728 `expat` \u88ab\u7981\u7528\u65f6\u662f\u65e0\u7528\u7684\u3002\n\n\u53e6\u5916\uff0c\u4e00\u4e9b\u5e93\u53ef\u80fd\u603b\u662f\u53ef\u7528\u7684\uff0c\u56e0\u6b64\u907f\u514d\u4e0e\u5b83\u4eec\u94fe\u63a5\u662f\u6ca1\u6709\u610f\u4e49\u7684\u3002\u4f8b\u5982\uff0c\u5728 Windows \u4e2d\u662f ODBC\uff0c\u5728 macOS \u4e2d\u662f Expat\u3001iconv \u53ca\u5176\u4ed6\u4e00\u4e9b\u5e93\u3002\u9ed8\u8ba4\u7684\u5185\u90e8\u53cd\u67e5\u4f1a\u786e\u5b9a\u8fd9\u4e9b\u5e93\uff0c\u5e76\u4ec5\u53d1\u51fa `WITH_XXX` \u800c\u4e0d\u662f `DL_XXX` \u548c `XXX_LIB`\uff0c\u8fd9\u6837\u53ef\u4ee5\u4f7f\u4e8b\u60c5\u66f4\u7b80\u5355\u3002\n\n\u5bf9\u4e8e\u67d0\u4e9b\u9009\u9879\uff0c\u914d\u7f6e\u6587\u4ef6\u53ef\u80fd\u4f1a\u770b\u8d77\u6765\u50cf\u8fd9\u6837\uff1a\n\nCODE_BLOCK_7\n\n\u9664\u4e86\u901a\u7528\u914d\u7f6e\u503c\u5916\uff0c\u4f60\u8fd8\u53ef\u4ee5\u68c0\u67e5 `CMakeCache.txt` \u6587\u4ef6\uff0c\u8be5\u6587\u4ef6\u4f1a\u5728\u4f60\u8fd0\u884c\u914d\u7f6e\u540e\u7559\u5728\u6784\u5efa\u6587\u4ef6\u5939\u4e2d\u3002\u4efb\u4f55\u5728\u90a3\u91cc\u5b9a\u4e49\u7684\u503c\u90fd\u53ef\u4ee5\u5728\u8fd0\u884c cmake \u65f6\u663e\u5f0f\u5730\u91cd\u65b0\u5b9a\u4e49\u3002\u4f8b\u5982\uff0c\u4f60\u53ef\u4ee5\u8fd0\u884c `cmake -DHAVE_GETADDRINFO_A=FALSE ...`\uff0c\u8fd9\u6837\u914d\u7f6e\u8fd0\u884c\u4e0d\u4f1a\u5047\u8bbe\u8be5\u53d8\u91cf\u7684\u5df2\u8c03\u67e5\u503c\uff0c\u800c\u662f\u4f7f\u7528\u4f60\u63d0\u4f9b\u7684\u503c\u3002\n\n#### \u7279\u5b9a\u73af\u5883\u53d8\u91cf\n\n\u73af\u5883\u53d8\u91cf\u7528\u4e8e\u63d0\u4f9b\u4e00\u4e9b\u5168\u5c40\u8bbe\u7f6e\uff0c\u8fd9\u4e9b\u8bbe\u7f6e\u5b58\u50a8\u5728\u6784\u5efa\u914d\u7f6e\u4e4b\u5916\uff0c\u5e76\u59cb\u7ec8\u5b58\u5728\u3002\u4e3a\u4e86\u6301\u4e45\u5316\uff0c\u53ef\u4ee5\u5728\u7cfb\u7edf\u4e2d\u4ee5\u4e0d\u540c\u7684\u65b9\u5f0f\u8bbe\u7f6e\u5b83\u4eec - \u4f8b\u5982\uff0c\u5c06\u5176\u6dfb\u52a0\u5230 `.bashrc` \u6587\u4ef6\u4e2d\uff0c\u6216\u5d4c\u5165\u5230 Dockerfile \u4e2d\uff08\u5982\u679c\u4f60\u751f\u6210\u57fa\u4e8e Docker \u7684\u6784\u5efa\u7cfb\u7edf\uff09\uff0c\u6216\u5728 Windows \u7684\u7cfb\u7edf\u504f\u597d\u8bbe\u7f6e\u73af\u5883\u4e2d\u7f16\u5199\u5b83\u4eec\u3002\u4f60\u4e5f\u53ef\u4ee5\u4f7f\u7528 `export VAR=value` \u5728 shell \u4e2d\u4e34\u65f6\u8bbe\u7f6e\u5b83\u4eec\u3002\u751a\u81f3\u66f4\u77ed\uff0c\u901a\u8fc7\u5728 cmake \u8c03\u7528\u524d\u9884\u7f6e\u503c\uff0c\u5982 `CACHEB=/my/cache cmake ...` - \u8fd9\u6837\u5b83\u53ea\u4f1a\u5728\u8fd9\u6b21\u8c03\u7528\u4e2d\u5de5\u4f5c\uff0c\u5e76\u4e0d\u4f1a\u5728\u4e0b\u6b21\u8c03\u7528\u4e2d\u53ef\u89c1\u3002\n\n\u4e00\u4e9b\u8fd9\u6837\u7684\u53d8\u91cf\u901a\u5e38\u7531 cmake \u548c\u5176\u4ed6\u5de5\u5177\u4f7f\u7528\uff0c\u4f8b\u5982 `CXX`\uff0c\u5b83\u786e\u5b9a\u5f53\u524d\u4f7f\u7528\u7684 C++ \u7f16\u8bd1\u5668\uff0c\u6216\u8005 `CXX_FLAGS` \u63d0\u4f9b\u7f16\u8bd1\u5668\u6807\u5fd7\u7b49\u3002\n\n\u7136\u800c\uff0c\u6211\u4eec\u6709\u4e00\u4e9b\u7279\u5b9a\u4e8e Manticore \u914d\u7f6e\u7684\u53d8\u91cf\uff0c\u8fd9\u4e9b\u53d8\u91cf\u4ec5\u4e3a\u6211\u4eec\u7684\u6784\u5efa\u800c\u53d1\u660e\u3002\n\n- **CACHEB** - \u540c\u914d\u7f6e\u4e2d\u7684 **CACHEB** \u9009\u9879\n- **LIBS_BUNDLE** - \u540c\u914d\u7f6e\u4e2d\u7684 **LIBS_BUNDLE** \u9009\u9879\n- **DISTR** - \u5f53\u4f7f\u7528 `-DPACK=1` \u65f6\uff0c\u7528\u4e8e\u521d\u59cb\u5316 `DISTR_BUILD` \u9009\u9879\u3002\n- **DIAGNOSTIC** - \u4f7f cmake \u914d\u7f6e\u8f93\u51fa\u66f4\u52a0\u8be6\u7ec6\uff0c\u89e3\u91ca\u6240\u6709\u53d1\u751f\u7684\u4e8b\u60c5\n- **WRITEB** - \u5047\u8bbe **LIBS_BUNDLE** \u5e76\u4e14\u5982\u679c\u8bbe\u7f6e\u4e86\u5b83\uff0c\u5c06\u4f1a\u4e0b\u8f7d\u4e0d\u540c\u5de5\u5177\u7684\u6e90\u4ee3\u7801\u6587\u4ef6\u5230 LIBS_BUNDLE \u6587\u4ef6\u5939\u4e2d\u3002\u4e5f\u5c31\u662f\u8bf4\uff0c\u5982\u679c\u65b0\u7684\u8bcd\u5e72\u7248\u672c\u53d1\u5e03\u51fa\u6765 - \u4f60\u53ef\u4ee5\u624b\u52a8\u4ece\u6346\u7ed1\u5305\u4e2d\u5220\u9664 libstemmer_c.tgz\uff0c\u7136\u540e\u8fd0\u884c\u4e00\u6b21\u6027\u7684 `WRITEB=1 cmake ...` - \u5b83\u5c06\u4e0d\u4f1a\u5728\u6346\u7ed1\u5305\u4e2d\u627e\u5230\u8bcd\u5e72\u7684\u6e90\u4ee3\u7801\uff0c\u7136\u540e\u4f1a\u4ece\u4f9b\u5e94\u5546\u7ad9\u70b9\u4e0b\u8f7d\u5b83\u4eec\u5230\u6346\u7ed1\u5305\u4e2d\uff08\u4e0d\u4f7f\u7528 WRITEB \u65f6\uff0c\u5b83\u4eec\u4f1a\u88ab\u4e0b\u8f7d\u5230\u6784\u5efa\u6587\u4ef6\u5939\u5185\u7684\u4e00\u4e2a\u4e34\u65f6\u6587\u4ef6\u5939\u4e2d\uff0c\u5e76\u5728\u4f60\u6e05\u9664\u6784\u5efa\u6587\u4ef6\u5939\u65f6\u6d88\u5931\uff09\u3002\n\n\u914d\u7f6e\u7ed3\u675f\u65f6\uff0c\u4f60\u53ef\u80fd\u4f1a\u770b\u5230\u5c06\u8981\u4f7f\u7528\u7684\u4e00\u7cfb\u5217\u5185\u5bb9\uff1a\n\nCODE_BLOCK_8\n\n### \u6784\u5efa\n\nCODE_BLOCK_9\n\n### \u5b89\u88c5\n\n\u8981\u5b89\u88c5\uff0c\u8bf7\u8fd0\u884c\uff1a\n\nCODE_BLOCK_10\n\n\u8981\u5b89\u88c5\u5230\u81ea\u5b9a\u4e49\uff08\u975e\u9ed8\u8ba4\uff09\u6587\u4ef6\u5939\uff0c\u8bf7\u8fd0\u884c\n\nCODE_BLOCK_11\n\n### \u6784\u5efa\u5305\n\n\u8981\u6784\u5efa\u5305\uff0c\u8bf7\u4f7f\u7528\u76ee\u6807 `package`\u3002\u5b83\u5c06\u6839\u636e `-DDISTR_BUILD` \u9009\u9879\u63d0\u4f9b\u7684\u9009\u62e9\u6765\u6784\u5efa\u5305\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u5b83\u5c06\u662f\u4e00\u4e2a\u5305\u542b\u6240\u6709\u4e8c\u8fdb\u5236\u6587\u4ef6\u548c\u8f85\u52a9\u6587\u4ef6\u7684\u7b80\u5355\u7684 .zip \u6216 .tgz \u5b58\u6863\u3002\n\nCODE_BLOCK_12\n\n## \u5173\u4e8e\u6784\u5efa\u7684\u4e00\u4e9b\u9ad8\u7ea7\u4e8b\u9879\n\n### \u5355\u914d\u7f6e\u7684\u91cd\u65b0\u7f16\u8bd1\uff08\u66f4\u65b0\uff09\n\n\u5982\u679c\u4f60\u6ca1\u6709\u66f4\u6539\u6e90\u8def\u5f84\u548c\u6784\u5efa\u8def\u5f84\uff0c\u53ea\u9700\u79fb\u52a8\u5230\u4f60\u7684\u6784\u5efa\u6587\u4ef6\u5939\u5e76\u8fd0\u884c\uff1a\n\nCODE_BLOCK_13\n\n\u5982\u679c\u7531\u4e8e\u67d0\u79cd\u539f\u56e0\u4e0d\u8d77\u4f5c\u7528\uff0c\u53ef\u4ee5\u5220\u9664\u6784\u5efa\u6587\u4ef6\u5939\u4e2d\u7684 `CMakeCache.txt` \u6587\u4ef6\u3002\u5728\u6b64\u6b65\u9aa4\u4e4b\u540e\uff0c\u4f60\u9700\u8981\u518d\u6b21\u8fd0\u884c cmake\uff0c\u6307\u5411\u6e90\u6587\u4ef6\u5939\u5e76\u914d\u7f6e\u9009\u9879\u3002\n\n\u5982\u679c\u8fd9\u4e5f\u4e0d\u8d77\u4f5c\u7528\uff0c\u53ea\u9700\u6e05\u9664\u4f60\u7684\u6784\u5efa\u6587\u4ef6\u5939\u5e76\u4ece\u5934\u5f00\u59cb\u3002\n\n### \u6784\u5efa\u7c7b\u578b\n\n\u7b80\u800c\u8a00\u4e4b - \u5c31\u662f\u4f7f\u7528\u4e0a\u9762\u5199\u7684 `--config RelWithDebInfo`\u3002\u5b83\u4e0d\u4f1a\u51fa\u9519\u3002\n\n\u6211\u4eec\u4f7f\u7528\u4e24\u79cd\u6784\u5efa\u7c7b\u578b\u3002\u5f00\u53d1\u65f6\u4f7f\u7528 `Debug` - \u5b83\u4ee5\u975e\u5e38\u6709\u5229\u4e8e\u5f00\u53d1\u7684\u65b9\u5f0f\u5206\u914d\u7f16\u8bd1\u5668\u6807\u5fd7\u548c\u5176\u4ed6\u5185\u5bb9\uff0c\u610f\u5473\u7740\u8c03\u8bd5\u8fd0\u884c\u65f6\u53ef\u4ee5\u9010\u884c\u6267\u884c\u3002\u4f46\u662f\uff0c\u751f\u6210\u7684\u4e8c\u8fdb\u5236\u6587\u4ef6\u5bf9\u4e8e\u751f\u4ea7\u6765\u8bf4\u65e2\u5927\u53c8\u6162\u3002\n\n\u53d1\u5e03\u65f6\uff0c\u6211\u4eec\u4f7f\u7528\u53e6\u4e00\u79cd\u7c7b\u578b - `RelWithDebInfo` - \u8fd9\u610f\u5473\u7740\u201c\u5e26\u6709\u8c03\u8bd5\u4fe1\u606f\u7684\u53d1\u5e03\u6784\u5efa\u201d\u3002\u5b83\u751f\u6210\u5e26\u6709\u5d4c\u5165\u8c03\u8bd5\u4fe1\u606f\u7684\u751f\u4ea7\u4e8c\u8fdb\u5236\u6587\u4ef6\u3002\u540e\u8005\u968f\u540e\u4f1a\u88ab\u62c6\u5206\u6210\u5355\u72ec\u7684\u8c03\u8bd5\u4fe1\u606f\u5305\uff0c\u5e76\u4e0e\u53d1\u5e03\u7684\u5305\u4e00\u8d77\u5b58\u50a8\uff0c\u4ee5\u4fbf\u5728\u51fa\u73b0\u95ee\u9898\u5982\u5d29\u6e83\u65f6\u8fdb\u884c\u8c03\u67e5\u548c\u4fee\u590d\u3002Cmake \u8fd8\u63d0\u4f9b\u4e86 `Release` \u548c `MinSizeRel`\uff0c\u4f46\u6211\u4eec\u4e0d\u4f7f\u7528\u5b83\u4eec\u3002\u5982\u679c\u6784\u5efa\u7c7b\u578b\u4e0d\u53ef\u7528\uff0ccmake \u5c06\u521b\u5efa\u4e00\u4e2a `noconfig` \u6784\u5efa\u3002\n\n#### \u6784\u5efa\u7cfb\u7edf\u751f\u6210\u5668\n\n\u6709\u4e24\u79cd\u7c7b\u578b\u7684\u751f\u6210\u5668\uff1a\u5355\u914d\u7f6e\u548c\u591a\u914d\u7f6e\u3002\n\n- \u5355\u914d\u7f6e\u9700\u8981\u5728\u914d\u7f6e\u671f\u95f4\u63d0\u4f9b\u7684\u6784\u5efa\u7c7b\u578b\uff0c\u901a\u8fc7 `CMAKE_BUILD_TYPE` \u53c2\u6570\u3002\u5982\u679c\u6ca1\u6709\u5b9a\u4e49\uff0c\u5219\u6784\u5efa\u5c06\u56de\u9000\u5230 `RelWithDebInfo` \u7c7b\u578b\uff0c\u9002\u5408\u4f60\u53ea\u662f\u4ece\u6e90\u4ee3\u7801\u6784\u5efa Manticore \u800c\u4e0d\u53c2\u4e0e\u5f00\u53d1\u3002\u5bf9\u4e8e\u663e\u5f0f\u6784\u5efa\uff0c\u4f60\u5e94\u8be5\u63d0\u4f9b\u4e00\u4e2a\u6784\u5efa\u7c7b\u578b\uff0c\u5982 `-DCMAKE_BUILD_TYPE=Debug`\u3002\n- \u591a\u914d\u7f6e\u5728\u6784\u5efa\u671f\u95f4\u9009\u62e9\u6784\u5efa\u7c7b\u578b\u3002\u5b83\u5e94\u8be5\u901a\u8fc7 `--config` \u9009\u9879\u63d0\u4f9b\uff0c\u5426\u5219\u5c06\u6784\u5efa\u4e00\u79cd\u79f0\u4e3a `noconfig` \u7684\u7c7b\u578b\uff0c\u8fd9\u662f\u4e0d\u5e0c\u671b\u7684\u3002\u6240\u4ee5\uff0c\u4f60\u5e94\u8be5\u59cb\u7ec8\u6307\u5b9a\u6784\u5efa\u7c7b\u578b\uff0c\u5982 `--config Debug`\u3002",
  65. "russian": "\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u043f\u0446\u0438\u0438 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0432 \u0442\u0440\u043e\u0439\u043a\u0438: `WITH_XXX`, `DL_XXX` \u0438 `XXX_LIB` \u2014 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 mysql, odbc \u0438 \u0442.\u0434. `WITH_XXX` \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442, \u0431\u0443\u0434\u0443\u0442 \u043b\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0434\u0432\u0435. \u0422.\u0435., \u0435\u0441\u043b\u0438 \u0432\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 `WITH_ODBC` \u0432 `0` \u2014 \u043d\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c `DL_ODBC` \u0438 `ODBC_LIB`, \u0438 \u044d\u0442\u0438 \u0434\u0432\u0435 \u043e\u043f\u0446\u0438\u0438 \u043d\u0435 \u0431\u0443\u0434\u0443\u0442 \u0438\u043c\u0435\u0442\u044c \u044d\u0444\u0444\u0435\u043a\u0442\u0430, \u0435\u0441\u043b\u0438 \u0432\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0430. \u0422\u0430\u043a\u0436\u0435 `XXX_LIB` \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u0431\u0435\u0437 `DL_XXX`, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0435 \u043d\u0443\u0436\u043d\u0430 \u043e\u043f\u0446\u0438\u044f `DL_XXX`, \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0435 \u0431\u0443\u0434\u0435\u0442, \u0438 \u0438\u043c\u044f, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0435 \u0432 `XXX_LIB`, \u0431\u0435\u0441\u043f\u043e\u043b\u0435\u0437\u043d\u043e. \u042d\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0438\u043d\u0442\u0440\u043e\u0441\u043f\u0435\u043a\u0446\u0438\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e.\n\n\u0422\u0430\u043a\u0436\u0435, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 `iconv` \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442 \u043d\u0430\u043b\u0438\u0447\u0438\u0435 `expat` \u0438 \u0431\u0435\u0441\u043f\u043e\u043b\u0435\u0437\u043d\u043e, \u0435\u0441\u043b\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d.\n\n\u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0432\u0441\u0435\u0433\u0434\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b, \u0438 \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u0438\u0437\u0431\u0435\u0433\u0430\u0442\u044c \u043b\u0438\u043d\u043a\u043e\u0432\u043a\u0438 \u0441 \u043d\u0438\u043c\u0438. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 Windows \u044d\u0442\u043e ODBC. \u0412 macOS \u044d\u0442\u043e Expat, iconv \u0438, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0434\u0440\u0443\u0433\u0438\u0435. \u0418\u043d\u0442\u0440\u043e\u0441\u043f\u0435\u043a\u0446\u0438\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0442\u0430\u043a\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0438 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u044b\u0434\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e `WITH_XXX` \u0434\u043b\u044f \u043d\u0438\u0445, \u0431\u0435\u0437 `DL_XXX` \u0438 `XXX_LIB`, \u0447\u0442\u043e \u0443\u043f\u0440\u043e\u0449\u0430\u0435\u0442 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044e.\n\n\u041f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043e\u043f\u0446\u0438\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u0430\u043a:\n\nCODE_BLOCK_7\n\n\u041f\u043e\u043c\u0438\u043c\u043e \u043e\u0431\u0449\u0438\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438, \u0432\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0437\u0443\u0447\u0438\u0442\u044c \u0444\u0430\u0439\u043b `CMakeCache.txt`, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0430\u043f\u043a\u0435 \u0441\u0431\u043e\u0440\u043a\u0438 \u0441\u0440\u0430\u0437\u0443 \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438. \u041b\u044e\u0431\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u0442\u0430\u043c, \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u044f\u0432\u043d\u043e \u043f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 cmake. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c `cmake -DHAVE_GETADDRINFO_A=FALSE ...`, \u0438 \u044d\u0442\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u044d\u0442\u043e\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439, \u0430 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0435 \u0432\u0430\u043c\u0438.\n\n#### \u0421\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f\n\n\u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0435\u0437\u043d\u044b \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u043e\u0442 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0441\u0431\u043e\u0440\u043a\u0438 \u0438 \u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442. \u0414\u043b\u044f \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u0441\u0442\u0432\u0430 \u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438 \u2014 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u043e\u0431\u0430\u0432\u0438\u0432 \u0438\u0445 \u0432 \u0444\u0430\u0439\u043b `.bashrc`, \u0438\u043b\u0438 \u0432\u0441\u0442\u0440\u043e\u0438\u0432 \u0432 Dockerfile, \u0435\u0441\u043b\u0438 \u0432\u044b \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0441\u0431\u043e\u0440\u043a\u0438 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 Docker, \u0438\u043b\u0438 \u0437\u0430\u043f\u0438\u0441\u0430\u0432 \u0438\u0445 \u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0432 Windows. \u0422\u0430\u043a\u0436\u0435 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0438\u0445 \u043d\u0430 \u043a\u043e\u0440\u043e\u0442\u043a\u043e\u0435 \u0432\u0440\u0435\u043c\u044f, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f `export VAR=value` \u0432 \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0435. \u0418\u043b\u0438 \u0434\u0430\u0436\u0435 \u043a\u043e\u0440\u043e\u0447\u0435, \u0434\u043e\u0431\u0430\u0432\u0438\u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u0434 \u0432\u044b\u0437\u043e\u0432\u043e\u043c cmake, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, `CACHEB=/my/cache cmake ...` \u2014 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0432\u044b\u0437\u043e\u0432\u0435 \u0438 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432\u0438\u0434\u043d\u043e \u043f\u0440\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c.\n\n\u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u0442\u0430\u043a\u0438\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, \u043a\u0430\u043a \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0432 \u0446\u0435\u043b\u043e\u043c cmake \u0438 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438. \u042d\u0442\u043e \u0442\u0430\u043a\u0438\u0435 \u0432\u0435\u0449\u0438, \u043a\u0430\u043a `CXX`, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 C++, \u0438\u043b\u0438 `CXX_FLAGS` \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0444\u043b\u0430\u0433\u043e\u0432 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0438 \u0442.\u0434.\n\n\u041e\u0434\u043d\u0430\u043a\u043e \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u043d\u044b\u0435 \u0434\u043b\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 Manticore, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u043f\u0440\u0438\u0434\u0443\u043c\u0430\u043d\u044b \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u043d\u0430\u0448\u0438\u0445 \u0441\u0431\u043e\u0440\u043e\u043a.\n\n- **CACHEB** \u2014 \u0442\u043e \u0436\u0435, \u0447\u0442\u043e \u043e\u043f\u0446\u0438\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 **CACHEB**\n- **LIBS_BUNDLE** \u2014 \u0442\u043e \u0436\u0435, \u0447\u0442\u043e \u043e\u043f\u0446\u0438\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 **LIBS_BUNDLE**\n- **DISTR** \u2014 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043e\u043f\u0446\u0438\u0438 `DISTR_BUILD`, \u043a\u043e\u0433\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f `-DPACK=1`.\n- **DIAGNOSTIC** \u2014 \u0434\u0435\u043b\u0430\u0435\u0442 \u0432\u044b\u0432\u043e\u0434 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 cmake \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u043c, \u043e\u0431\u044a\u044f\u0441\u043d\u044f\u044f \u0432\u0441\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0435\n- **WRITEB** \u2014 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442 **LIBS_BUNDLE** \u0438, \u0435\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e, \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u0430\u0440\u0445\u0438\u0432\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0434\u043b\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0432 \u043f\u0430\u043f\u043a\u0443 LIBS_BUNDLE. \u0422\u043e \u0435\u0441\u0442\u044c, \u0435\u0441\u043b\u0438 \u0432\u044b\u0445\u043e\u0434\u0438\u0442 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441\u0442\u0435\u043c\u043c\u0435\u0440\u0430 \u2014 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0443\u0434\u0430\u043b\u0438\u0442\u044c libstemmer_c.tgz \u0438\u0437 \u0431\u0430\u043d\u0434\u043b\u0430, \u0430 \u0437\u0430\u0442\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043e\u0434\u043d\u043e\u0440\u0430\u0437\u043e\u0432\u044b\u0439 `WRITEB=1 cmake ...` \u2014 \u043e\u043d \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u0442 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 \u0441\u0442\u0435\u043c\u043c\u0435\u0440\u0430 \u0432 \u0431\u0430\u043d\u0434\u043b\u0435 \u0438 \u0437\u0430\u0442\u0435\u043c \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442 \u0438\u0445 \u0441 \u0441\u0430\u0439\u0442\u0430 \u043f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u0430 \u0432 \u0431\u0430\u043d\u0434\u043b (\u0431\u0435\u0437 WRITEB \u043e\u043d \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442 \u0438\u0445 \u0432\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u043f\u0430\u043f\u043a\u0443 \u0432\u043d\u0443\u0442\u0440\u0438 \u0441\u0431\u043e\u0440\u043a\u0438, \u0438 \u043e\u043d\u0438 \u0438\u0441\u0447\u0435\u0437\u043d\u0443\u0442, \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 \u0441\u0431\u043e\u0440\u043a\u0438).\n\n\u0412 \u043a\u043e\u043d\u0446\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0432\u0438\u0434\u0435\u0442\u044c, \u0447\u0442\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u0438 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043e, \u0432 \u0441\u043f\u0438\u0441\u043a\u0435, \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u043c \u044d\u0442\u043e\u043c\u0443:\n\nCODE_BLOCK_8\n\n### \u0421\u0431\u043e\u0440\u043a\u0430\n\nCODE_BLOCK_9\n\n### \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\n\n\u0414\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435:\n\nCODE_BLOCK_10\n\n\u0447\u0442\u043e\u0431\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0443\u044e (\u043d\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e) \u043f\u0430\u043f\u043a\u0443, \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435\n\nCODE_BLOCK_11\n\n### \u0421\u0431\u043e\u0440\u043a\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432\n\n\u0414\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u0430\u043a\u0435\u0442\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0446\u0435\u043b\u044c `package`. \u041e\u043d\u0430 \u0441\u043e\u0431\u0435\u0440\u0435\u0442 \u043f\u0430\u043a\u0435\u0442 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0432\u044b\u0431\u043e\u0440\u043e\u043c, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c \u043e\u043f\u0446\u0438\u0435\u0439 `-DDISTR_BUILD`. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0430\u0440\u0445\u0438\u0432 .zip \u0438\u043b\u0438 .tgz \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u043c\u0438 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0444\u0430\u0439\u043b\u0430\u043c\u0438.\n\nCODE_BLOCK_12\n\n## \u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u043e\u0434\u0432\u0438\u043d\u0443\u0442\u044b\u0435 \u0432\u0435\u0449\u0438 \u043e \u0441\u0431\u043e\u0440\u043a\u0435\n\n### \u041f\u0435\u0440\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f (\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435) \u043f\u0440\u0438 \u043e\u0434\u043d\u043e\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0431\u043e\u0440\u043a\u0435\n\n\u0415\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u043c\u0435\u043d\u044f\u043b\u0438 \u043f\u0443\u0442\u044c \u043a \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c \u0438 \u0441\u0431\u043e\u0440\u043a\u0435, \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441\u0431\u043e\u0440\u043a\u0438 \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435:\n\nCODE_BLOCK_13\n\n\u0415\u0441\u043b\u0438 \u043f\u043e \u043a\u0430\u043a\u043e\u0439-\u043b\u0438\u0431\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0435 \u044d\u0442\u043e \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0444\u0430\u0439\u043b `CMakeCache.txt`, \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0439 \u0432 \u043f\u0430\u043f\u043a\u0435 \u0441\u0431\u043e\u0440\u043a\u0438. \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0448\u0430\u0433\u0430 \u0432\u0430\u043c \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u0441\u043d\u043e\u0432\u0430 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c cmake, \u0443\u043a\u0430\u0437\u0430\u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c\u0438 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0432 \u043e\u043f\u0446\u0438\u0438.\n\n\u0415\u0441\u043b\u0438 \u044d\u0442\u043e \u0442\u043e\u0436\u0435 \u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442, \u043f\u0440\u043e\u0441\u0442\u043e \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 \u0441\u0431\u043e\u0440\u043a\u0438 \u0438 \u043d\u0430\u0447\u043d\u0438\u0442\u0435 \u0441 \u043d\u0443\u043b\u044f.\n\n### \u0422\u0438\u043f\u044b \u0441\u0431\u043e\u0440\u043a\u0438\n\n\u041a\u0440\u0430\u0442\u043a\u043e \u2014 \u043f\u0440\u043e\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 `--config RelWithDebInfo`, \u043a\u0430\u043a \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0432\u044b\u0448\u0435. \u042d\u0442\u043e \u043d\u0435 \u0434\u0430\u0441\u0442 \u043e\u0448\u0438\u0431\u0438\u0442\u044c\u0441\u044f.\n\n\u041c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 \u0441\u0431\u043e\u0440\u043a\u0438. \u0414\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u044d\u0442\u043e `Debug` \u2014 \u043e\u043d \u043d\u0430\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0444\u043b\u0430\u0433\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0434\u043b\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0432\u0435\u0449\u0438 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e \u044d\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u0443\u0434\u043e\u0431\u043d\u043e \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0443 \u0441 \u043f\u043e\u0448\u0430\u0433\u043e\u0432\u044b\u043c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435\u043c. \u041e\u0434\u043d\u0430\u043a\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u0438 \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0430.\n\n\u0414\u043b\u044f \u0432\u044b\u043f\u0443\u0441\u043a\u0430 \u0440\u0435\u043b\u0438\u0437\u043e\u0432 \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0434\u0440\u0443\u0433\u043e\u0439 \u0442\u0438\u043f \u2014 `RelWithDebInfo` \u2014 \u0447\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 '\u0441\u0431\u043e\u0440\u043a\u0430 \u0440\u0435\u043b\u0438\u0437\u0430 \u0441 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439'. \u041e\u043d \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0434\u043b\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0430 \u0441\u043e \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0439 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439. \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u0437\u0430\u0442\u0435\u043c \u043e\u0442\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0430\u043a\u0435\u0442\u044b debuginfo, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u043e\u0442 \u0440\u0435\u043b\u0438\u0437\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0438 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u044b \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a \u0441\u0431\u043e\u0438 \u2014 \u0434\u043b\u044f \u0440\u0430\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0448\u0438\u0431\u043e\u043a. Cmake \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 `Release` \u0438 `MinSizeRel`, \u043d\u043e \u043c\u044b \u0438\u0445 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c. \u0415\u0441\u043b\u0438 \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d, cmake \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442 \u0441\u0431\u043e\u0440\u043a\u0443 `noconfig`.\n\n#### \u0413\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0441\u0431\u043e\u0440\u043a\u0438\n\n\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432: \u043e\u0434\u043d\u043e\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0438 \u043c\u043d\u043e\u0433\u043e\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435.\n\n- \u041e\u0434\u043d\u043e\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u043c \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438, \u0447\u0435\u0440\u0435\u0437 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 `CMAKE_BUILD_TYPE`. \u0415\u0441\u043b\u0438 \u043e\u043d \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d, \u0441\u0431\u043e\u0440\u043a\u0430 \u0432\u0435\u0440\u043d\u0435\u0442\u0441\u044f \u043a \u0442\u0438\u043f\u0443 `RelWithDebInfo`, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442, \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u043e\u0431\u0440\u0430\u0442\u044c Manticore \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432 \u0438 \u043d\u0435 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435. \u0414\u043b\u044f \u044f\u0432\u043d\u044b\u0445 \u0441\u0431\u043e\u0440\u043e\u043a \u0432\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, `-DCMAKE_BUILD_TYPE=Debug`.\n- \u041c\u043d\u043e\u0433\u043e\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442 \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0441\u0431\u043e\u0440\u043a\u0438. \u041e\u043d \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u0441 \u043e\u043f\u0446\u0438\u0435\u0439 `--config`, \u0438\u043d\u0430\u0447\u0435 \u043e\u043d \u0441\u043e\u0431\u0435\u0440\u0435\u0442 \u0447\u0442\u043e-\u0442\u043e \u0432\u0440\u043e\u0434\u0435 `noconfig`, \u0447\u0442\u043e \u043d\u0435\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u044b \u0432\u0441\u0435\u0433\u0434\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, `--config Debug`."
  66. },
  67. "is_code_or_comment": false,
  68. "model": "deepseek/deepseek-v3.2",
  69. "updated_at": 1766374014
  70. },
  71. "__meta": {
  72. "source_text": "# Compiling Manticore from source\n\nCompiling Manticore Search from sources enables custom build configurations, such as disabling certain features or adding new patches for testing. For example, you may want to compile from sources and disable the embedded ICU in order to use a different version installed on your system that can be upgraded independently of Manticore. This is also useful if you are interested in contributing to the Manticore Search project.\n\n## Building using CI Docker\nTo prepare [official release and development packages](https://repo.manticoresearch.com/), we use Docker and a special building image. This image includes essential tooling and is designed to be used with external sysroots, so one container can build packages for all operating systems. You can build the image using the [Dockerfile](https://github.com/manticoresoftware/manticoresearch/blob/master/dist/build_dockers/cross/external_toolchain/Dockerfile) and [README](https://github.com/manticoresoftware/manticoresearch/blob/master/dist/build_dockers/README.md) or use an image from [Docker Hub](https://hub.docker.com/r/manticoresearch/external_toolchain/tags). This is the easiest way to create binaries for any supported operating system and architecture. You'll also need to specify the following environment variables when running the container:\n\n* `DISTR`: the target platform: `bionic`, `focal`, `jammy`, `buster`, `bullseye`, `bookworm`, `rhel8`, `rhel9`, `rhel10`, `macos`, `windows`, `freebsd13`\n* `arch`: the architecture: `x86_64`, `x64` (for Windows), `aarch64`, `arm64` (for Macos)\n* `SYSROOT_URL`: the URL to the system roots archives. You can use https://repo.manticoresearch.com/repository/sysroots unless you are building the sysroots yourself (instructions can be found [here](https://github.com/manticoresoftware/manticoresearch/tree/master/dist/build_dockers/cross/sysroots)).\n* Use the CI workflow files as a reference to find the other environment variables you might need to use:\n - https://github.com/manticoresoftware/manticoresearch/blob/master/.github/workflows/pack_publish.yml\n - https://github.com/manticoresoftware/manticoresearch/blob/master/.github/workflows/build_template.yml\n\nTo find possible values for `DISTR` and `arch`, you can use the directory https://repo.manticoresearch.com/repository/sysroots/roots_with_zstd/ as a reference, as it includes sysroots for all supported combinations.\n\nAfter that, building packages inside the Docker container is as easy as calling:\n\n```bash\ncmake -DPACK=1 /path/to/sources\ncmake --build .\n```\n\nFor instance, to create a package for Ubuntu Jammy that is similar to the official version Manticore Core Team provides, you should execute the following commands in the directory containing the Manticore Search sources. This directory is the root of a cloned repository from https://github.com/manticoresoftware/manticoresearch:\n\n```bash\ndocker run -it --rm \\\n-e CACHEB=\"../cache\" \\\n-e DIAGNOSTIC=1 \\\n-e PACK_ICUDATA=0 \\\n-e NO_TESTS=1 \\\n-e DISTR=jammy \\\n-e boost=boost_nov22 \\\n-e sysroot=roots_nov22 \\\n-e arch=x86_64 \\\n-e CTEST_CMAKE_GENERATOR=Ninja \\\n-e CTEST_CONFIGURATION_TYPE=RelWithDebInfo \\\n-e WITH_COVERAGE=0 \\\n-e SYSROOT_URL=\"https://repo.manticoresearch.com/repository/sysroots\" \\\n-e HOMEBREW_PREFIX=\"\" \\\n-e PACK_GALERA=0 \\\n-e UNITY_BUILD=1 \\\n-v $(pwd):/manticore_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa \\\nmanticoresearch/external_toolchain:vcpkg331_20250114 bash\n\n# following is to be run inside docker shell\ncd /manticore_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/\nmkdir build && cd build\ncmake -DPACK=1 ..\nexport CMAKE_TOOLCHAIN_FILE=$(pwd)/dist/build_dockers/cross/linux.cmake\ncmake --build .\n# or if you want to build packages:\n# cmake --build . --target package\n```\nThe long source directory path is required or it may fail to build the sources in some cases (e.g. Centos).\n\nIn the same way, you can build binaries or packages not just for popular Linux distributions, but also for FreeBSD, Windows, and macOS.\n\n#### Building SRPMs using Docker\n\nYou can also you the same special docker image to build SRPMs:\n\n```bash\ndocker run -it --rm \\\n-e CACHEB=\"../cache\" \\\n-e DIAGNOSTIC=1 \\\n-e PACK_ICUDATA=0 \\\n-e NO_TESTS=1 \\\n-e DISTR=rhel8 \\\n-e boost=boost_rhel_feb17 \\\n-e sysroot=roots_nov22 \\\n-e arch=x86_64 \\\n-e CTEST_CMAKE_GENERATOR=Ninja \\\n-e CTEST_CONFIGURATION_TYPE=RelWithDebInfo \\\n-e WITH_COVERAGE=0 \\\n-e SYSROOT_URL=\"https://repo.manticoresearch.com/repository/sysroots\" \\\n-e HOMEBREW_PREFIX=\"\" \\\n-e PACK_GALERA=0 \\\n-e UNITY_BUILD=1 \\\n-v $(pwd):/manticore_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa \\\nmanticoresearch/external_toolchain:vcpkg331_20250114 bash\n\n# following is to be run inside docker shell\ncd /manticore_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/\nmkdir build && cd build\ncmake -DPACK=1 ..\nexport CMAKE_TOOLCHAIN_FILE=$(pwd)/../dist/build_dockers/cross/linux.cmake\n# The CPackSourceConfig.cmake file is now generated in the build directory\ncpack -G RPM --config ./CPackSourceConfig.cmake\n```\n\nThis will generate a Source RPM (`.src.rpm` file) containing all the source code.\n\n#### Building binary RPMs from the SRPM\n\nOnce you have generated the SRPM, you can use it to build the complete set of binary RPM packages:\n\n```bash\n# Install build tools and dependencies\ndnf install -y rpm-build cmake gcc-c++ boost-devel epel-release\n\n# Install SRPM dependencies automatically\ndnf builddep -y manticore-*.src.rpm\n\n# Build all binary RPMs from the SRPM\nrpmbuild --rebuild manticore-*.src.rpm\n\n# Find the generated packages\nls ~/rpmbuild/RPMS/*/manticore*\n```\n\n> NOTE: **To build RPMs from the SRPM, you need to make sure all the dependencies listed in the SRPM are fully installed, which can be challenging.** The SRPM can still be useful for:\n> - Auditing the build process or inspecting the source and spec files\n> - Making custom modifications or patches to the build\n> - Understanding how the binaries were produced\n> - Meeting open-source license compliance requirements\n\n## Building manually\n\nCompiling Manticore without using the building Docker is **not recommended**, but if you need to do it, here's what you may need to know:\n\n### Required tools\n\n* C++ compiler\n * In Linux - GNU (4.7.2 and above) or Clang can be used\n * In Windows - Microsoft Visual Studio 2019 and above (community edition is enough)\n * On macOS - Clang (from command line tools of XCode, use `xcode-select --install` to install).\n* Bison, Flex - on most systems, they are available as packages, on Windows they are available in the cygwin framework.\n* Cmake - used on all platforms (version 3.19 or above required)\n\n### Fetching sources\n\n#### From git\n\nManticore source code is [hosted on GitHub](https://github.com/manticoresoftware/manticoresearch).\nTo obtain the source code, clone the repository and then check out the desired branch or tag. The branch `master` represents the main development branch. Upon release, a versioned tag is created, such as `3.6.0` and a new branch for the current release is started, in this case `manticore-3.6.0`. The head of the versioned branch after all changes is used as source to build all binary releases. For example, to take sources of version 3.6.0 you can run:\n\n```bash\ngit clone https://github.com/manticoresoftware/manticoresearch.git\ncd manticoresearch\ngit checkout manticore-3.6.0\n```\n\n#### From archive\n\nYou can download the desired code from GitHub by using the \"Download ZIP\" button. Both .zip and .tar.gz formats are suitable.\n\n```bash\nwget -c https://github.com/manticoresoftware/manticoresearch/archive/refs/tags/3.6.0.tar.gz\ntar -zxf 3.6.0.tar.gz\ncd manticoresearch-3.6.0\n```\n\n### Configuring\n\nManticore uses CMake. Assuming you are inside the root directory of the cloned repository:\n\n```bash\nmkdir build && cd build\ncmake ..\n```\n\nCMake will investigate available features and configure the build according to them. By default, all features are considered enabled if they are available. The script also downloads and builds some external libraries, assuming that you want to use them. Implicitly, you get support for the maximal number of features.\n\nYou can also configure the build explicitly with flags and options. To enable feature `FOO` add `-DFOO=1` to the CMake call.\nTo disable it, use `-DFOO=0`. If not explicitly noted, enabling a feature that is not available((such as `WITH_GALERA` on an MS Windows build)) will cause the configuration to fail with an error. Disabling a feature, apart from excluding it from the build, also disables its investigation on the system and disables the downloading/building of any related external libraries.\n\n#### Configuration flags and options\n\n- **USE_SYSLOG** - allows the use of`syslog` in [query logging](../Logging/Query_logging.md).\n- **WITH_GALERA** -Enables support for replication on the search daemon. Support will be configured for the build, and the sources for the Galera library will be downloaded, built, and included in the distribution/installation. Usually, it is safe to build with Galera, but not distribute the library itself (so no Galera module, no replication). However, sometimes you may need to explicitly disable it, such as if you want to build a static binary that by design cannot load any libraries, so that even the presence of a call to the 'dlopen' function inside the daemon will cause a link error.\n- **WITH_RE2** - Builds with the use of the RE2 regular expression library. This is necessary for functions like [REGEX()](../Functions/String_functions.md#REGEX%28%29), and the [regexp_filter](../Creating_a_table/NLP_and_tokenization/Low-level_tokenization.md#regexp_filter)\n feature.\n- **WITH_RE2_FORCE_STATIC** - Downloads the sources of RE2, compiles them, and links them statically, so that the final binaries will not depend on the presence of a shared `RE2` library in your system.\n- **WITH_STEMMER** - Builds with the use of the Snowball stemming library.\n- **WITH_STEMMER_FORCE_STATIC** - Downloads the Snowball sources, compiles them, and links them statically, so that the final binaries will not depend on the presence of a shared `libstemmer` library in your system.\n- **WITH_ICU** - Builds with the ICU (International Components for Unicode) library. It is used for segmenting Chinese text. It is utilized when morphology=`icu_chinese` is used.\n- **WITH_JIEBA** - Builds with the Jieba Chinese text segmentation tool. It is used for segmenting Chinese text. It is utilized when morphology=`jieba_chinese` is used.\n- **WITH_ICU_FORCE_STATIC** - Downloads the ICU sources, compiles them, and links them statically, so that the final binaries will not depend on the presence of a shared `icu` library in your system. Also includes the ICU data file into the installation/distribution. The purpose of a statically linked ICU is to have a library of a known version, so that behavior is determined and not dependent on any system libraries. You will most likely prefer to use the system ICU instead, as it may be updated over time without the need to recompile the Manticore daemon. In this case, you need to explicitly disable this option. This will also save you some space occupied by the ICU data file (about 30M), as it will not be included in the distribution.\n- **WITH_SSL** - Used for support for HTTPS, and also encrypted MySQL connections to the daemon. The system OpenSSL library will be linked to the daemon. This implies that OpenSSL will be required to start the daemon. This is mandatory for support for HTTPS, but not strictly mandatory for the server (i.e. no SSL means no possibility to connect via HTTPS, but other protocols will work). SSL library versions starting from 1.0.2 to 1.1.1 may be used by Manticore, however note that **for the sake of security it's highly recommended to use the freshest possible SSL\n library**. For now only v1.1.1 is supported, the rest are outdated (\n see [openssl release strategy](https://www.openssl.org/policies/releasestrat.html)\n- **WITH_ZLIB** - used by the indexer to work with compressed columns from MySQL. Used by the daemon to provide support for the compressed MySQL protocol.\n- **WITH_ODBC** - used by the indexer to support indexing sources from ODBC providers (they're typically UnixODBC and iODBC). On MS Windows, ODBC is the proper way to work with MS SQL sources, so indexing of `MSSQL` also implies this flag.\n- **DL_ODBC** - don't link with the ODBC library. If ODBC is linked, but not available, you can't start indexer tool even if you want to process something not related to ODBC. This option asks the indexer to load the library at runtime only when you want to deal with ODBC source.\n- **ODBC_LIB** - name of the ODBC library file. The indexer will try to load that file when you want to process ODBC source. This option is written automatically from available ODBC shared library investigation. You can also override that name at runtime by providing the environment variable `ODBC_LIB` with the proper path to an alternative library before running the indexer.\n- **WITH_EXPAT** - used by the indexer to support indexing xmlpipe sources.\n- **DL_EXPAT** - don't link with the EXPAT library. If EXPAT is linked, but not available, you can't start `indexer` tool even if you want to process something not related to xmlpipe. This option asks the indexer to load the library at runtime only when you want to deal with xmlpipe source.\n- **EXPAT_LIB** - name of the EXPAT library file. The indexer will try to load that file when you want to process xmlpipe source. This option is written automatically from available EXPAT shared library investigation. You can also override that name at runtime by providing the environment variable EXPAT_LIB with the proper path to an alternative library before running the indexer.\n- **WITH_ICONV** - for support different encodings when indexing xmlpipe sources with the indexer.\n- **DL_ICONV** - don't link with the iconv library. If iconv is linked, but not available, you can't start `indexer` tool even if you want to process something not related to xmlpipe. This option asks the indexer to load the library at runtime only when you want to deal with xmlpipe source.\n- **ICONV_LIB** - name of the iconv library file. The indexer will try to load that file when you want to process xmlpipe source. This option is written automatically from the available iconv shared library investigation. You can also override that name at runtime by providing the environment variable `ICONV_LIB` with the proper path to an alternative library before running the indexer.\n- **WITH_MYSQL** - used by the indexer to support indexing MySQL sources.\n- **DL_MYSQL** - don't link with the MySQL library. If MySQL is linked, but not available, you can't start the`indexer` tool even if you want to process something not related to MySQL. This option asks the indexer to load the library at runtime only when you want to deal with a MySQL source.\n- **MYSQL_LIB** -- name of the MySQL library file. The indexer will try to load that file when you want to process a MySQL source. This option is written automatically from the available MySQL shared library investigation. You can also override that name at runtime by providing the environment variable `MYSQL_LIB` with the proper path to an alternative library before running the indexer.\n- **WITH_POSTGRESQL** - used by the indexer to support indexing PostgreSQL sources.\n- **DL_POSTGRESQL** - don't link with the PostgreSQL library. If PostgreSQL is linked, but not available, you can't start the `indexer` ool even if you want to process something not related to PostgreSQL. This option asks the indexer to load the library at runtime only when you want to deal with a PostgreSQL source.\n- **POSTGRESQL_LIB** - name of postgresql library file. The indexer will attempt to load the specified postgresql library file when processing a postgresql source. This option is automatically determined from available postgresql shared library investigation. You can also override the name at runtime by providing the environment variable `POSTGRESQL_LIB` with the proper path to an alternative library before running the indexer.\n- **LOCALDATADIR** - default path where the daemon stores binlogs. If this path is not provided or explicitly disabled in the daemon's runtime config (i.e. the file `manticore.conf`, which is not related to this build configuration), binlogs will be placed in this path. It is typically an absolute path, however, it is not required to be and relative paths can also be used. You probably would not need to change the default value defined by the configuration, which, depending on the target system, might be something like `/var/data`, `/var/lib/manticore/data`, or `/usr/local/var/lib/manticore/data`.\n- **FULL_SHARE_DIR** - default path where all assets are stored. It can be overridden by the environment variable `FULL_SHARE_DIR` before starting any tool that utilizes files from that folder. This is an important path as many things are expected to be found there by default. These include predefined charset tables, stopwords, manticore modules, and icu data files, all placed in that folder. The configuration script usually determines this path to be something like `/usr/share/manticore`, or `/usr/local/share/manticore`.\n- **DISTR_BUILD** - a shortcut for the options for releasing packages. This is a string value with the name of the target platform. It can be used instead of manually configuring all the options. On Debian and Redhat Linuxes, the default value might be determined by light introspection and set to a generic 'Debian' or 'RHEL'. Otherwise, the value is not defined.\n- **PACK** - an even more convenient shortcut. It reads the `DISTR` environment variable, assigns it to the **DISTR_BUILD** parameter, and then works as usual. This is very useful when building in prepared build systems, like Docker containers, where the `DISTR` variable is set at the system level and reflects the target system for which the container is intended.\n- **CMAKE_INSTALL_PREFIX** (path) - where Manticore is expected to be installed. Building does not perform any installations, but it prepares the installation rules that are executed when you run the `cmake --install` command or create a package and then install it. The prefix can be changed at any time, even during installation, by invoking\n `cmake --install . --prefix /path/to/installation`. However, at config time, this variable is used to initialize the default values of `LOCALDATADIR` and `FULL_SHARE_DIR`. For example, setting it to `/my/custom` at configure\n time will hardcode `LOCALDATADIR` as `/my/custom/var/lib/manticore/data`, and `FULL_SHARE_DIR` as\n `/my/custom/usr/share/manticore`.\n- **BUILD_TESTING** (bool) whether to support testing. If enabled, after the build, you can run 'ctest' and test the build. Note that testing implies additional dependencies, like at least the presence of PHP cli, Python, and an available MySQL server with a test database. By default, this parameter is on. So, for 'just build', you might want to disable the option by explicitly specifying 'off' value.\n- **BUILD_SRPMS** (bool) whether to show instructions for building Source RPMs (SRPMs). Due to CPack limitations with component-based packaging, SRPMs cannot be generated directly alongside binary RPMs. When enabled, the build system will display instructions for proper SRPM generation using the source configuration method. By default, this parameter is off.\n- **LIBS_BUNDLE** - path to a folder with different libraries. This is mostly relevant for Windows building, but may also be helpful if you have to build often in order to avoid downloading third-party sources each time. By default, this path is never modified by the configuration script; you should put everything there manually. When, say, we want support for a stemmer - the sources will be downloaded from Snowball homepage, then extracted, configured, built, etc. Instead, you can store the original source tarball (which is `libstemmer_c.tgz`) in this folder. Next time you want to build from scratch, the configuration script will first look up in the bundle, and if it finds the stemmer there, it will not download it again from the Internet.\n- **CACHEB** - path to a folder with stored builds of 3-rd party libraries. Usually features like galera, re2, icu, etc. first downloaded or being got from bundle, then unpacked, built, and installed into a temporary internal folder. When building manticore, that folder is then used as the place where the things required to support the asked feature are live. Finally, they either link with manticore, if it is a library; either go directly to distribution/installation (like galera or icu data). When **CACHEB** is defined either as cmake config param, either as a system environment variable, it is used as the target folder for that builds. This folder might be kept across builds, so that stored libraries there will not be rebuilt anymore, making the whole build process much shorter.\n\n\nNote, that some options are organized in triples: `WITH_XXX`, `DL_XXX` and `XXX_LIB` - like support of mysql, odbc, etc. `WITH_XXX` determines whether next two have an effect or not. I.e., if you set `WITH_ODBC` to `0` - there is no sence to provide `DL_ODBC` and `ODBC_LIB`, and these two will have no effect if the whole feature is disabled. Also, `XXX_LIB` has no sense without `DL_XXX`, because if you don't want `DL_XXX` option, dynamic loading will not be used, and name provided by `XXX_LIB` is useless. That is used by default introspection.\n\nAlso, using the `iconv` library assumes `expat` and is useless if the last is disabled.\n\nAlso, some libraries may be always available, and so, there is no sense to avoid linkage with them. For example, in Windows that is ODBC. On macOS that is Expat, iconv, and m.b. others. Default introspection determines such libraries and effectively emits only `WITH_XXX` for them, without `DL_XXX` and `XXX_LIB`, that makes the things simpler.\n\nWith some options in game configuring might look like:\n\n```bash\nmkdir build && cd build\ncmake -DWITH_MYSQL=1 -DWITH_RE2=1 ..\n```\n\nApart general configuration values, you may also investigate file `CMakeCache.txt` which is left in build folder right after you run configuration. Any values defined there might be redefined explicitly when running cmake. For example, you may run `cmake -DHAVE_GETADDRINFO_A=FALSE ...`, and that config run will not assume investigated value of that variable, but will use one you've provided.\n\n#### Specific environment variables\n\nEnvironment variables are useful for providing some kind of global settings which are stored aside from build configuration and are always present. For persistence, they may be set globally on the system using different ways - like adding them to the `.bashrc` file, or embedding them into a Dockerfile if you produce a docker-based build system, or writing them in system preferences environment variables on Windows. Also, you may set them short-lived using `export VAR=value` in the shell. Or even shorter, by prepending values to the cmake call, like `CACHEB=/my/cache cmake ...` - this way it will only work on this call and will not be visible on the next.\n\nSome of such variables are known to be used in general by cmake and some other tools. That is things like `CXX` which determines the current C++ compiler, or `CXX_FLAGS` to provide compiler flags, etc.\n\nHowever, we have some variables that are specific to manticore configuration, which are invented solely for our builds.\n\n- **CACHEB** - same as the config **CACHEB** option\n- **LIBS_BUNDLE** - same as the config **LIBS_BUNDLE** option\n- **DISTR** - used to initialize the `DISTR_BUILD` option when `-DPACK=1` is used.\n- **DIAGNOSTIC** - makes the output of cmake configuration much more verbose, explaining everything happening\n- **WRITEB** - assumes **LIBS_BUNDLE** and, if set, will download source archive files for different tools to the LIBS_BUNDLE folder. That is, if a fresh version of the stemmer comes out - you can manually remove libstemmer_c.tgz from the bundle and then run a one-shot `WRITEB=1 cmake ...` - it will not find the stemmer's sources in the bundle and will then download them from the vendor's site to the bundle (without WRITEB it will download them into a temporary folder inside the build and will disappear when you wipe the build folder).\n\nAt the end of configuration, you may see what is available and will be used in a list like this one:\n\n```\n-- Enabled features compiled in:\n* Galera, replication of tables\n* re2, a regular expression library\n* stemmer, stemming library (Snowball)\n* icu, International Components for Unicode\n* OpenSSL, for encrypted networking\n* ZLIB, for compressed data and networking\n* ODBC, for indexing MSSQL (windows) and generic ODBC sources with indexer\n* EXPAT, for indexing xmlpipe sources with indexer\n* Iconv, for support of different encodings when indexing xmlpipe sources with indexer\n* MySQL, for indexing MySQL sources with indexer\n* PostgreSQL, for indexing PostgreSQL sources with indexer\n```\n\n### Building\n\n```bash\ncmake --build . --config RelWithDebInfo\n```\n\n### Installation\n\nTo install run:\n\n```bash\ncmake --install . --config RelWithDebInfo\n```\n\nto install into custom (non-default) folder, run\n\n```bash\ncmake --install . --prefix path/to/build --config RelWithDebInfo\n```\n\n### Building packages\n\nFor building a package, use the target `package`. It will build the package according to the selection provided by the `-DDISTR_BUILD` option. By default, it will be a simple .zip or .tgz archive with all binaries and supplementary files.\n\n```bash\ncmake --build . --target package --config RelWithDebInfo\n```\n\n## Some advanced things about building\n\n### Recompilation (update) on single-config\n\nIf you haven't changed the path for sources and build, simply move to your build folder and run:\n\n```bash\ncmake .\ncmake --build . --clean-first --config RelWithDebInfo\n```\n\nIf by any reason it doesn't work, you can delete file `CMakeCache.txt` located in the build folder. After this step you have to run cmake again, pointing to the source folder and configuring the options.\n\nIf it also doesn't help, just wipe out your build folder and begin from scratch.\n\n### Build types\n\nBriefly - just use `--config RelWithDebInfo` as written above. It will make no mistake.\n\nWe use two build types. For development, it is `Debug` - it assigns compiler flags for optimization and other things in a way that it is very friendly for development, meaning the debug runs with step-by-step execution. However, the produced binaries are quite large and slow for production.\n\nFor releasing, we use another type - `RelWithDebInfo` - which means 'release build with debug info'. It produces production binaries with embedded debug info. The latter is then split away into separate debuginfo packages which are stored aside with release packages and might be used in case of some issues like crashes - for investigation and bugfixing. Cmake also provides `Release` and `MinSizeRel`, but we don't use them. If the build type is not available, cmake will make a `noconfig` build.\n\n#### Build system generators\n\nThere are two types of generators: single-config and multi-config.\n\n- Single-config needs the build type provided during configuration, via the `CMAKE_BUILD_TYPE` parameter. If it is not defined, the build will fall back to the `RelWithDebInfo` type which is suitable if you just want to build Manticore from sources and not participate in development. For explicit builds, you should provide a build type, like `-DCMAKE_BUILD_TYPE=Debug`.\n- Multi-config selects the build type during the build. It should be provided with the `--config` option, otherwise it will build a kind of `noconfig`, which is not desirable. So, you should always specify the build type, like `--config Debug`.\n\nIf you want to specify the build type but don't want to care about whether it is a 'single' or 'multi' config generator - just provide the necessary keys in both places. I.e., configure with `-DCMAKE_BUILD_TYPE=Debug`, and then build with `--config Debug`. Just be sure that both values are the same. If the target builder is a single-config, it will consume the configuration param. If it is multi-config, the configuration param will be ignored, but the correct build configuration will be selected by the `--config` key.\n\nIf you want `RelWithDebInfo` (i.e. just build for production) and know you're on a single-config platform (that is all, except Windows) - you can omit the `--config` flag on the cmake invocation. The default `CMAKE_BUILD_TYPE=RelWithDebInfo` will be configured then, and used. All the commands for 'building', 'installation' and 'building package' will become shorter then.\n\n#### Explicitly select build system generators\n\nCmake is the tool that doesn't perform building by itself, but it generates rules for the local build system.\nUsually, it determines the available build system well, but sometimes you might need to provide a generator explicitly. You\ncan run `cmake -G` and review the list of available generators.\n\n- On Windows, if you have more than one version of Visual Studio installed, you might need to specify which one to use,\nas:\n```bash\ncmake -G \"Visual Studio 16 2019\" ....\n ```\n- On all other platforms - usually Unix Makefiles are used, but you can specify another one, such as Ninja, or Ninja Multi-Config, as:\n Multi-Config`, as:\n```bash\n cmake -GNinja ...\n ```\n or\n```bash\n cmake -G\"Ninja Multi-Config\" ...\n```\nNinja Multi-Config is quite useful as it is really 'multi-config' and available on Linux/macOS/BSD. With this generator, you may shift the choosing of configuration type to build time, and also you may build several configurations in one and the same build folder, changing only the `--config` param.\n\n### Caveats\n\n1. If you want to finally build a full-featured RPM package, the path to the build directory must be long enough in order to correctly build debug symbols.\nLike `/manticore012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789`, for example. That is because RPM tools modify the path over compiled binaries when building debug info, and it can just write over existing room and won't allocate more. The aforementioned long path has 100 chars and that is quite enough for such a case.\n\n## External dependencies\n\nSome libraries should be available if you want to use them.\n- For indexing (`indexer` tool): `expat`, `iconv`, `mysql`, `odbc`, `postgresql`. Without them, you can only process `tsv` and `csv` sources.\n- For serving queries (`searchd` daemon): `openssl` might be necessary.\n- For all (required, mandatory!) we need the Boost library. The minimal version is 1.61.0, however, we build the binaries with a fresher version 1.75.0. Even more recent versions (like 1.76) should also be okay. On Windows, you can download pre-built Boost from their site (boost.org) and install it into the default suggested path (i.e. `C:\\\\boost...`). On MacOs, the one provided in brew is okay. On Linux, you can check the available version in official repositories, and if it doesn't match requirements, you can build from sources. We need the component 'context', you can also build components 'system' and 'program_options', they will be necessary if you also want to build Galera library from the sources. Look into `dist/build_dockers/xxx/boost_175/Dockerfile` for a short self-documented script/instruction on how to do it.\n\nOn the build system, you need the 'dev' or 'devel' versions of these packages installed (i.e. - libmysqlclient-devel, unixodbc-devel, etc. Look to our dockerfiles for the names of concrete packages).\n\nOn run systems, these packages should be present at least in the final (non-dev) variants. (devel variants usually larger, as they include not only target binaries, but also different development stuff like include headers, etc.).\n\n### Building on Windows\n\nApart from necessary prerequisites, you might need prebuilt `expat`, `iconv`, `mysql`, and `postgresql` client libraries. You have to either build them yourself or contact us to get our build bundle (a simple zip archive where the folder with these targets is located).\n\n- ODBC is not necessary as it is a system library.\n- OpenSSL might be built from sources or downloaded prebuilt from https://slproweb.com/products/Win32OpenSSL.html (as mentioned in the cmake internal script on FindOpenSSL).\n- Boost might be downloaded pre-built from https://www.boost.org/ releases.\n\n### See what is compiled\n\nRun `indexer -h`. It will show which features were configured and built (whether they're explicit or investigated, doesn't matter):\n\n```\nBuilt on Linux x86_64 by GNU 8.3.1 compiler.\n\nConfigured with these definitions: -DDISTR_BUILD=rhel8 -DUSE_SYSLOG=1 -DWITH_GALERA=1 -DWITH_RE2=1 -DWITH_RE2_FORCE_STATIC=1\n-DWITH_STEMMER=1 -DWITH_STEMMER_FORCE_STATIC=1 -DWITH_ICU=1 -DWITH_ICU_FORCE_STATIC=1 -DWITH_SSL=1 -DWITH_ZLIB=1 -DWITH_ODBC=1 -DDL_ODBC=1\n-DODBC_LIB=libodbc.so.2 -DWITH_EXPAT=1 -DDL_EXPAT=1 -DEXPAT_LIB=libexpat.so.1 -DWITH_ICONV=1 -DWITH_MYSQL=1 -DDL_MYSQL=1\n-DMYSQL_LIB=libmariadb.so.3 -DWITH_POSTGRESQL=1 -DDL_POSTGRESQL=1 -DPOSTGRESQL_LIB=libpq.so.5 -DLOCALDATADIR=/var/lib/manticore/data\n-DFULL_SHARE_DIR=/usr/share/manticore\n```\n<!-- proofread -->\n\n",
  73. "updated_at": 1770444840,
  74. "source_md5": "1a873bafab93f32fe668ff9136dbb432",
  75. "source_snapshot": "/private/var/folders/19/fcmvcvj57qg026vpv2z93rg80000gn/T/translator-source-p6aj3cik9f924v18Nmq",
  76. "target_snapshot": "/private/var/folders/19/fcmvcvj57qg026vpv2z93rg80000gn/T/translator-target-ndjefip0jkun1787p33"
  77. },
  78. "20066863ba09e166d8c04933dbf45e07024a90693d33f8399daad9aa47f28330": {
  79. "original": "# Compiling Manticore from source\n\nCompiling Manticore Search from sources enables custom build configurations, such as disabling certain features or adding new patches for testing. For example, you may want to compile from sources and disable the embedded ICU in order to use a different version installed on your system that can be upgraded independently of Manticore. This is also useful if you are interested in contributing to the Manticore Search project.\n\n## Building using CI Docker\nTo prepare [official release and development packages](https://repo.manticoresearch.com/), we use Docker and a special building image. This image includes essential tooling and is designed to be used with external sysroots, so one container can build packages for all operating systems. You can build the image using the [Dockerfile](https://github.com/manticoresoftware/manticoresearch/blob/master/dist/build_dockers/cross/external_toolchain/Dockerfile) and [README](https://github.com/manticoresoftware/manticoresearch/blob/master/dist/build_dockers/README.md) or use an image from [Docker Hub](https://hub.docker.com/r/manticoresearch/external_toolchain/tags). This is the easiest way to create binaries for any supported operating system and architecture. You'll also need to specify the following environment variables when running the container:\n\n* `DISTR`: the target platform: `bionic`, `focal`, `jammy`, `buster`, `bullseye`, `bookworm`, `rhel8`, `rhel9`, `rhel10`, `macos`, `windows`, `freebsd13`\n* `arch`: the architecture: `x86_64`, `x64` (for Windows), `aarch64`, `arm64` (for Macos)\n* `SYSROOT_URL`: the URL to the system roots archives. You can use https://repo.manticoresearch.com/repository/sysroots unless you are building the sysroots yourself (instructions can be found [here](https://github.com/manticoresoftware/manticoresearch/tree/master/dist/build_dockers/cross/sysroots)).\n* Use the CI workflow files as a reference to find the other environment variables you might need to use:\n - https://github.com/manticoresoftware/manticoresearch/blob/master/.github/workflows/pack_publish.yml\n - https://github.com/manticoresoftware/manticoresearch/blob/master/.github/workflows/build_template.yml\n\nTo find possible values for `DISTR` and `arch`, you can use the directory https://repo.manticoresearch.com/repository/sysroots/roots_with_zstd/ as a reference, as it includes sysroots for all supported combinations.\n\nAfter that, building packages inside the Docker container is as easy as calling:\n\nCODE_BLOCK_0\n\nFor instance, to create a package for Ubuntu Jammy that is similar to the official version Manticore Core Team provides, you should execute the following commands in the directory containing the Manticore Search sources. This directory is the root of a cloned repository from https://github.com/manticoresoftware/manticoresearch:\n\nCODE_BLOCK_1\nThe long source directory path is required or it may fail to build the sources in some cases (e.g. Centos).\n\nIn the same way, you can build binaries or packages not just for popular Linux distributions, but also for FreeBSD, Windows, and macOS.\n\n#### Building SRPMs using Docker\n\nYou can also you the same special docker image to build SRPMs:\n\nCODE_BLOCK_2\n\nThis will generate a Source RPM (`.src.rpm` file) containing all the source code.\n\n#### Building binary RPMs from the SRPM\n\nOnce you have generated the SRPM, you can use it to build the complete set of binary RPM packages:\n\nCODE_BLOCK_3\n\n> NOTE: **To build RPMs from the SRPM, you need to make sure all the dependencies listed in the SRPM are fully installed, which can be challenging.** The SRPM can still be useful for:\n> - Auditing the build process or inspecting the source and spec files\n> - Making custom modifications or patches to the build\n> - Understanding how the binaries were produced\n> - Meeting open-source license compliance requirements\n\n## Building manually\n\nCompiling Manticore without using the building Docker is **not recommended**, but if you need to do it, here's what you may need to know:\n\n### Required tools\n\n* C++ compiler\n * In Linux - GNU (4.7.2 and above) or Clang can be used\n * In Windows - Microsoft Visual Studio 2019 and above (community edition is enough)\n * On macOS - Clang (from command line tools of XCode, use `xcode-select --install` to install).\n* Bison, Flex - on most systems, they are available as packages, on Windows they are available in the cygwin framework.\n* Cmake - used on all platforms (version 3.19 or above required)\n\n### Fetching sources\n\n#### From git\n\nManticore source code is [hosted on GitHub](https://github.com/manticoresoftware/manticoresearch).\nTo obtain the source code, clone the repository and then check out the desired branch or tag. The branch `master` represents the main development branch. Upon release, a versioned tag is created, such as `3.6.0` and a new branch for the current release is started, in this case `manticore-3.6.0`. The head of the versioned branch after all changes is used as source to build all binary releases. For example, to take sources of version 3.6.0 you can run:\n\nCODE_BLOCK_4\n\n#### From archive\n\nYou can download the desired code from GitHub by using the \"Download ZIP\" button. Both .zip and .tar.gz formats are suitable.\n\nCODE_BLOCK_5\n\n### Configuring\n\nManticore uses CMake. Assuming you are inside the root directory of the cloned repository:\n\nCODE_BLOCK_6\n\nCMake will investigate available features and configure the build according to them. By default, all features are considered enabled if they are available. The script also downloads and builds some external libraries, assuming that you want to use them. Implicitly, you get support for the maximal number of features.",
  80. "translations": {
  81. "chinese": "# \u4ece\u6e90\u4ee3\u7801\u7f16\u8bd1 Manticore\n\n\u4ece\u6e90\u4ee3\u7801\u7f16\u8bd1 Manticore Search \u53ef\u4ee5\u542f\u7528\u81ea\u5b9a\u4e49\u6784\u5efa\u914d\u7f6e\uff0c\u4f8b\u5982\u7981\u7528\u67d0\u4e9b\u529f\u80fd\u6216\u6dfb\u52a0\u65b0\u8865\u4e01\u8fdb\u884c\u6d4b\u8bd5\u3002\u4f8b\u5982\uff0c\u60a8\u53ef\u80fd\u5e0c\u671b\u4ece\u6e90\u4ee3\u7801\u7f16\u8bd1\u5e76\u7981\u7528\u5d4c\u5165\u5f0f ICU\uff0c\u4ee5\u4fbf\u4f7f\u7528\u7cfb\u7edf\u4e0a\u5b89\u88c5\u7684\u4e0d\u540c\u7248\u672c\uff0c\u8be5\u7248\u672c\u53ef\u4ee5\u72ec\u7acb\u4e8e Manticore \u8fdb\u884c\u5347\u7ea7\u3002\u5982\u679c\u60a8\u6709\u5174\u8da3\u4e3a Manticore Search \u9879\u76ee\u505a\u51fa\u8d21\u732e\uff0c\u8fd9\u4e5f\u975e\u5e38\u6709\u7528\u3002\n\n## \u4f7f\u7528 CI Docker \u6784\u5efa\n\u4e3a\u4e86\u51c6\u5907 [\u5b98\u65b9\u53d1\u5e03\u548c\u5f00\u53d1\u5305](https://repo.manticoresearch.com/)\uff0c\u6211\u4eec\u4f7f\u7528 Docker \u548c\u4e00\u4e2a\u7279\u6b8a\u7684\u6784\u5efa\u955c\u50cf\u3002\u6b64\u955c\u50cf\u5305\u542b\u5fc5\u8981\u7684\u5de5\u5177\uff0c\u5e76\u8bbe\u8ba1\u4e3a\u4e0e\u5916\u90e8 sysroots \u4e00\u8d77\u4f7f\u7528\uff0c\u56e0\u6b64\u4e00\u4e2a\u5bb9\u5668\u53ef\u4ee5\u4e3a\u6240\u6709\u64cd\u4f5c\u7cfb\u7edf\u6784\u5efa\u5305\u3002\u60a8\u53ef\u4ee5\u4f7f\u7528 [Dockerfile](https://github.com/manticoresoftware/manticoresearch/blob/master/dist/build_dockers/cross/external_toolchain/Dockerfile) \u548c [README](https://github.com/manticoresoftware/manticoresearch/blob/master/dist/build_dockers/README.md) \u6784\u5efa\u8be5\u955c\u50cf\uff0c\u6216\u4f7f\u7528\u6765\u81ea [Docker Hub](https://hub.docker.com/r/manticoresearch/external_toolchain/tags) \u7684\u955c\u50cf\u3002\u8fd9\u662f\u4e3a\u4efb\u4f55\u53d7\u652f\u6301\u7684\u64cd\u4f5c\u7cfb\u7edf\u548c\u67b6\u6784\u521b\u5efa\u4e8c\u8fdb\u5236\u6587\u4ef6\u7684\u6700\u7b80\u5355\u65b9\u6cd5\u3002\u8fd0\u884c\u5bb9\u5668\u65f6\uff0c\u60a8\u8fd8\u9700\u8981\u6307\u5b9a\u4ee5\u4e0b\u73af\u5883\u53d8\u91cf\uff1a\n\n* `DISTR`\uff1a\u76ee\u6807\u5e73\u53f0\uff1a`bionic`\uff0c`focal`\uff0c`jammy`\uff0c`buster`\uff0c`bullseye`\uff0c`bookworm`\uff0c`rhel8`\uff0c`rhel9`\uff0c`rhel10`\uff0c`macos`\uff0c`windows`\uff0c`freebsd13`\n* `arch`\uff1a\u67b6\u6784\uff1a`x86_64`\uff0c`x64`\uff08\u7528\u4e8e Windows\uff09\uff0c`aarch64`\uff0c`arm64`\uff08\u7528\u4e8e Macos\uff09\n* `SYSROOT_URL`\uff1a\u7cfb\u7edf\u6839\u5b58\u6863\u7684 URL\u3002\u60a8\u53ef\u4ee5\u4f7f\u7528 https://repo.manticoresearch.com/repository/sysroots\uff0c\u9664\u975e\u60a8\u81ea\u5df1\u6784\u5efa sysroots\uff08\u8bf4\u660e\u53ef\u5728 [\u6b64\u5904](https://github.com/manticoresoftware/manticoresearch/tree/master/dist/build_dockers/cross/sysroots) \u627e\u5230\uff09\u3002\n* \u4f7f\u7528 CI \u5de5\u4f5c\u6d41\u6587\u4ef6\u4f5c\u4e3a\u53c2\u8003\uff0c\u627e\u5230\u60a8\u53ef\u80fd\u9700\u8981\u4f7f\u7528\u7684\u5176\u4ed6\u73af\u5883\u53d8\u91cf\uff1a\n - https://github.com/manticoresoftware/manticoresearch/blob/master/.github/workflows/pack_publish.yml\n - https://github.com/manticoresoftware/manticoresearch/blob/master/.github/workflows/build_template.yml\n\n\u8981\u627e\u5230 `DISTR` \u548c `arch` \u7684\u53ef\u80fd\u503c\uff0c\u60a8\u53ef\u4ee5\u4f7f\u7528\u76ee\u5f55 https://repo.manticoresearch.com/repository/sysroots/roots_with_zstd/ \u4f5c\u4e3a\u53c2\u8003\uff0c\u56e0\u4e3a\u5b83\u5305\u542b\u6240\u6709\u53d7\u652f\u6301\u7ec4\u5408\u7684 sysroots\u3002\n\n\u4e4b\u540e\uff0c\u5728 Docker \u5bb9\u5668\u5185\u6784\u5efa\u5305\u5c31\u50cf\u8c03\u7528\u4ee5\u4e0b\u547d\u4ee4\u4e00\u6837\u7b80\u5355\uff1a\n\nCODE_BLOCK_0\n\n\u4f8b\u5982\uff0c\u8981\u5728\u5305\u542b Manticore Search \u6e90\u4ee3\u7801\u7684\u76ee\u5f55\u4e2d\u521b\u5efa\u4e00\u4e2a\u4e0e Manticore Core \u56e2\u961f\u63d0\u4f9b\u7684\u5b98\u65b9\u7248\u672c\u7c7b\u4f3c\u7684 Ubuntu Jammy \u5305\uff0c\u60a8\u5e94\u8be5\u5728\u8be5\u76ee\u5f55\u4e2d\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\u3002\u8be5\u76ee\u5f55\u662f\u6765\u81ea https://github.com/manticoresoftware/manticoresearch \u7684\u514b\u9686\u4ed3\u5e93\u7684\u6839\u76ee\u5f55\uff1a\n\nCODE_BLOCK_1\n\u957f\u6e90\u76ee\u5f55\u8def\u5f84\u662f\u5fc5\u9700\u7684\uff0c\u5426\u5219\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff08\u4f8b\u5982 Centos\uff09\u53ef\u80fd\u65e0\u6cd5\u6784\u5efa\u6e90\u4ee3\u7801\u3002\n\n\u540c\u6837\uff0c\u60a8\u53ef\u4ee5\u6784\u5efa\u4e8c\u8fdb\u5236\u6587\u4ef6\u6216\u5305\uff0c\u4e0d\u4ec5\u9002\u7528\u4e8e\u6d41\u884c\u7684 Linux \u53d1\u884c\u7248\uff0c\u8fd8\u9002\u7528\u4e8e FreeBSD\u3001Windows \u548c macOS\u3002\n\n#### \u4f7f\u7528 Docker \u6784\u5efa SRPM\n\n\u60a8\u8fd8\u53ef\u4ee5\u4f7f\u7528\u76f8\u540c\u7684\u7279\u6b8a Docker \u955c\u50cf\u6765\u6784\u5efa SRPM\uff1a\n\nCODE_BLOCK_2\n\n\u8fd9\u5c06\u751f\u6210\u4e00\u4e2a\u5305\u542b\u6240\u6709\u6e90\u4ee3\u7801\u7684\u6e90 RPM\uff08`.src.rpm` \u6587\u4ef6\uff09\u3002\n\n#### \u4ece SRPM \u6784\u5efa\u4e8c\u8fdb\u5236 RPM\n\n\u4e00\u65e6\u751f\u6210\u4e86 SRPM\uff0c\u60a8\u53ef\u4ee5\u4f7f\u7528\u5b83\u6765\u6784\u5efa\u5b8c\u6574\u7684\u4e8c\u8fdb\u5236 RPM \u5305\u96c6\u5408\uff1a\n\nCODE_BLOCK_3\n\n> \u6ce8\u610f\uff1a**\u8981\u4ece SRPM \u6784\u5efa RPM\uff0c\u60a8\u9700\u8981\u786e\u4fdd SRPM \u4e2d\u5217\u51fa\u7684\u6240\u6709\u4f9d\u8d56\u9879\u90fd\u5df2\u5b8c\u5168\u5b89\u88c5\uff0c\u8fd9\u53ef\u80fd\u5177\u6709\u6311\u6218\u6027\u3002** SRPM \u4ecd\u7136\u53ef\u4ee5\u7528\u4e8e\uff1a\n> - \u5ba1\u8ba1\u6784\u5efa\u8fc7\u7a0b\u6216\u68c0\u67e5\u6e90\u4ee3\u7801\u548c spec \u6587\u4ef6\n> - \u5bf9\u6784\u5efa\u8fdb\u884c\u81ea\u5b9a\u4e49\u4fee\u6539\u6216\u8865\u4e01\n> - \u4e86\u89e3\u4e8c\u8fdb\u5236\u6587\u4ef6\u662f\u5982\u4f55\u751f\u6210\u7684\n> - \u6ee1\u8db3\u5f00\u6e90\u8bb8\u53ef\u8bc1\u5408\u89c4\u6027\u8981\u6c42\n\n## \u624b\u52a8\u6784\u5efa\n\n\u4e0d\u4f7f\u7528\u6784\u5efa Docker \u6765\u7f16\u8bd1 Manticore **\u4e0d\u63a8\u8350**\uff0c\u4f46\u5982\u679c\u60a8\u9700\u8981\u8fd9\u6837\u505a\uff0c\u4ee5\u4e0b\u662f\u4e00\u4e9b\u60a8\u53ef\u80fd\u9700\u8981\u4e86\u89e3\u7684\u5185\u5bb9\uff1a\n\n### \u6240\u9700\u5de5\u5177\n\n* C++ \u7f16\u8bd1\u5668\n * \u5728 Linux \u4e0a - GNU\uff084.7.2 \u53ca\u4ee5\u4e0a\u7248\u672c\uff09\u6216 Clang \u53ef\u4ee5\u4f7f\u7528\n * \u5728 Windows \u4e0a - Microsoft Visual Studio 2019 \u53ca\u4ee5\u4e0a\u7248\u672c\uff08\u793e\u533a\u7248\u5c31\u8db3\u591f\u4e86\uff09\n * \u5728 macOS \u4e0a - Clang\uff08\u6765\u81ea XCode \u7684\u547d\u4ee4\u884c\u5de5\u5177\uff0c\u4f7f\u7528 `xcode-select --install` \u5b89\u88c5\uff09\u3002\n* Bison\u3001Flex - \u5728\u5927\u591a\u6570\u7cfb\u7edf\u4e0a\uff0c\u5b83\u4eec\u4f5c\u4e3a\u8f6f\u4ef6\u5305\u53ef\u7528\uff0c\u5728 Windows \u4e0a\u5b83\u4eec\u5728 cygwin \u6846\u67b6\u4e2d\u53ef\u7528\u3002\n* Cmake - \u5728\u6240\u6709\u5e73\u53f0\u4e0a\u4f7f\u7528\uff08\u9700\u8981 3.19 \u6216\u66f4\u9ad8\u7248\u672c\uff09\n\n### \u83b7\u53d6\u6e90\u4ee3\u7801\n\n#### \u4ece git\n\nManticore \u6e90\u4ee3\u7801 [\u6258\u7ba1\u5728 GitHub](https://github.com/manticoresoftware/manticoresearch)\u3002\n\u8981\u83b7\u53d6\u6e90\u4ee3\u7801\uff0c\u8bf7\u514b\u9686\u4ed3\u5e93\uff0c\u7136\u540e\u68c0\u51fa\u6240\u9700\u7684\u5206\u652f\u6216\u6807\u7b7e\u3002\u5206\u652f `master` \u8868\u793a\u4e3b\u5f00\u53d1\u5206\u652f\u3002\u53d1\u5e03\u65f6\uff0c\u4f1a\u521b\u5efa\u4e00\u4e2a\u7248\u672c\u6807\u7b7e\uff0c\u4f8b\u5982 `3.6.0`\uff0c\u5e76\u5f00\u59cb\u4e00\u4e2a\u65b0\u7684\u5f53\u524d\u53d1\u5e03\u5206\u652f\uff0c\u5373 `manticore-3.6.0`\u3002\u5728\u6240\u6709\u66f4\u6539\u4e4b\u540e\uff0c\u7248\u672c\u5206\u652f\u7684\u5934\u90e8\u5c06\u7528\u4f5c\u6784\u5efa\u6240\u6709\u4e8c\u8fdb\u5236\u53d1\u5e03\u7248\u672c\u7684\u6e90\u4ee3\u7801\u3002\u4f8b\u5982\uff0c\u8981\u83b7\u53d6 3.6.0 \u7248\u672c\u7684\u6e90\u4ee3\u7801\uff0c\u60a8\u53ef\u4ee5\u8fd0\u884c\uff1a\n\nCODE_BLOCK_4\n\n#### \u4ece\u5b58\u6863\n\n\u60a8\u53ef\u4ee5\u901a\u8fc7\u4f7f\u7528 GitHub \u4e0a\u7684 \"Download ZIP\" \u6309\u94ae\u4e0b\u8f7d\u6240\u9700\u7684\u4ee3\u7801\u3002.zip \u548c .tar.gz \u683c\u5f0f\u90fd\u9002\u7528\u3002\n\nCODE_BLOCK_5\n\n### \u914d\u7f6e\n\nManticore \u4f7f\u7528 CMake\u3002\u5047\u8bbe\u60a8\u5728\u514b\u9686\u7684\u4ed3\u5e93\u6839\u76ee\u5f55\u5185\uff1a\n\nCODE_BLOCK_6\n\nCMake \u5c06\u8c03\u67e5\u53ef\u7528\u529f\u80fd\u5e76\u6839\u636e\u8fd9\u4e9b\u529f\u80fd\u914d\u7f6e\u6784\u5efa\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u5982\u679c\u529f\u80fd\u53ef\u7528\uff0c\u6240\u6709\u529f\u80fd\u90fd\u5c06\u88ab\u89c6\u4e3a\u542f\u7528\u3002\u8be5\u811a\u672c\u8fd8\u4f1a\u4e0b\u8f7d\u5e76\u6784\u5efa\u4e00\u4e9b\u5916\u90e8\u5e93\uff0c\u5047\u8bbe\u60a8\u60f3\u4f7f\u7528\u5b83\u4eec\u3002\u9690\u5f0f\u5730\uff0c\u60a8\u5c06\u83b7\u5f97\u5bf9\u6700\u5927\u6570\u91cf\u529f\u80fd\u7684\u652f\u6301\u3002",
  82. "russian": "# \u041a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f Manticore \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u043a\u043e\u0434\u043e\u0432\n\n\u041a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f Manticore Search \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u043a\u043e\u0434\u043e\u0432 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c \u0441\u0431\u043e\u0440\u043a\u0443, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438\u043b\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u043f\u0430\u0442\u0447\u0438 \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u0445\u043e\u0442\u0435\u0442\u044c \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u043a\u043e\u0434\u043e\u0432 \u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u0443\u044e ICU, \u0447\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u0440\u0443\u0433\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u0443\u044e \u0432 \u0432\u0430\u0448\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 Manticore. \u042d\u0442\u043e \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u043b\u0435\u0437\u043d\u043e, \u0435\u0441\u043b\u0438 \u0432\u044b \u0437\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043d\u044b \u0432 \u0443\u0447\u0430\u0441\u0442\u0438\u0438 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 Manticore Search.\n\n## \u0421\u0431\u043e\u0440\u043a\u0430 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c Docker CI\n\u0414\u043b\u044f \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 [\u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0440\u0435\u043b\u0438\u0437\u043d\u044b\u0445 \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432](https://repo.manticoresearch.com/) \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c Docker \u0438 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043e\u0431\u0440\u0430\u0437 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438. \u042d\u0442\u043e\u0442 \u043e\u0431\u0440\u0430\u0437 \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u0438 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u043c\u0438 \u043a\u043e\u0440\u043d\u044f\u043c\u0438 (sysroots), \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u0434\u0438\u043d \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043c\u043e\u0436\u0435\u0442 \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0437, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f [Dockerfile](https://github.com/manticoresoftware/manticoresearch/blob/master/dist/build_dockers/cross/external_toolchain/Dockerfile) \u0438 [README](https://github.com/manticoresoftware/manticoresearch/blob/master/dist/build_dockers/README.md), \u0438\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0437 \u0438\u0437 [Docker Hub](https://hub.docker.com/r/manticoresearch/external_toolchain/tags). \u042d\u0442\u043e \u0441\u0430\u043c\u044b\u0439 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0434\u043b\u044f \u043b\u044e\u0431\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b. \u041f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u0442\u0430\u043a\u0436\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f:\n\n* `DISTR`: \u0446\u0435\u043b\u0435\u0432\u0430\u044f \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430: `bionic`, `focal`, `jammy`, `buster`, `bullseye`, `bookworm`, `rhel8`, `rhel9`, `rhel10`, `macos`, `windows`, `freebsd13`\n* `arch`: \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430: `x86_64`, `x64` (\u0434\u043b\u044f Windows), `aarch64`, `arm64` (\u0434\u043b\u044f Macos)\n* `SYSROOT_URL`: URL \u0430\u0440\u0445\u0438\u0432\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u043a\u043e\u0440\u043d\u0435\u0439. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c https://repo.manticoresearch.com/repository/sysroots, \u0435\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u043a\u043e\u0440\u043d\u0438 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e (\u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 [\u0437\u0434\u0435\u0441\u044c](https://github.com/manticoresoftware/manticoresearch/tree/master/dist/build_dockers/cross/sysroots)).\n* \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0444\u0430\u0439\u043b\u044b \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432 CI \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430, \u0447\u0442\u043e\u0431\u044b \u043d\u0430\u0439\u0442\u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u0432\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f:\n - https://github.com/manticoresoftware/manticoresearch/blob/master/.github/workflows/pack_publish.yml\n - https://github.com/manticoresoftware/manticoresearch/blob/master/.github/workflows/build_template.yml\n\n\u0427\u0442\u043e\u0431\u044b \u043d\u0430\u0439\u0442\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0434\u043b\u044f `DISTR` \u0438 `arch`, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u0442\u0430\u043b\u043e\u0433 https://repo.manticoresearch.com/repository/sysroots/roots_with_zstd/ \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430, \u0442\u0430\u043a \u043a\u0430\u043a \u043e\u043d \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u043a\u043e\u0440\u043d\u0438 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u0439.\n\n\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0441\u0431\u043e\u0440\u043a\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0432\u043d\u0443\u0442\u0440\u0438 Docker-\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u0442\u0430\u043a \u0436\u0435 \u043f\u0440\u043e\u0441\u0442\u0430, \u043a\u0430\u043a \u0432\u044b\u0437\u043e\u0432:\n\nCODE_BLOCK_0\n\n\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0447\u0442\u043e\u0431\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442 \u0434\u043b\u044f Ubuntu Jammy, \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0439 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 Manticore Core, \u0432\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0435\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u043a\u043e\u0434\u044b Manticore Search. \u042d\u0442\u043e\u0442 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u043e\u0440\u043d\u0435\u043c \u043a\u043b\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f \u0438\u0437 https://github.com/manticoresoftware/manticoresearch:\n\nCODE_BLOCK_1\n\u0414\u043b\u0438\u043d\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u043a \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u043c\u0443 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0443 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f, \u0438\u043d\u0430\u0447\u0435 \u0432 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 Centos) \u0441\u0431\u043e\u0440\u043a\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u043a\u043e\u0434\u043e\u0432 \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044c\u0441\u044f \u043d\u0435\u0443\u0434\u0430\u0447\u0435\u0439.\n\n\u0422\u0430\u043a\u0438\u043c \u0436\u0435 \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0438\u043b\u0438 \u043f\u0430\u043a\u0435\u0442\u044b \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u043e\u0432 Linux, \u043d\u043e \u0438 \u0434\u043b\u044f FreeBSD, Windows \u0438 macOS.\n\n#### \u0421\u0431\u043e\u0440\u043a\u0430 SRPM \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c Docker\n\n\u0412\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u0442 \u0436\u0435 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043e\u0431\u0440\u0430\u0437 Docker \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 SRPM:\n\nCODE_BLOCK_2\n\n\u042d\u0442\u043e \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 RPM \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c (`.src.rpm` \u0444\u0430\u0439\u043b), \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0432\u0435\u0441\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434.\n\n#### \u0421\u0431\u043e\u0440\u043a\u0430 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0445 RPM \u0438\u0437 SRPM\n\n\u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e \u043a\u0430\u043a \u0432\u044b \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u0438 SRPM, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0435\u0433\u043e \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u043e\u043b\u043d\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0445 RPM-\u043f\u0430\u043a\u0435\u0442\u043e\u0432:\n\nCODE_BLOCK_3\n\n> \u041f\u0420\u0418\u041c\u0415\u0427\u0410\u041d\u0418\u0415: **\u0414\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 RPM \u0438\u0437 SRPM \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0432\u0441\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438, \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0435 \u0432 SRPM, \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b, \u0447\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0441\u043b\u043e\u0436\u043d\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435\u0439.** SRPM \u0432\u0441\u0435 \u0435\u0449\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u043b\u0435\u0437\u0435\u043d \u0434\u043b\u044f:\n> - \u0410\u0443\u0434\u0438\u0442\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0441\u0431\u043e\u0440\u043a\u0438 \u0438\u043b\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u0438 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432\n> - \u0412\u043d\u0435\u0441\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0438\u043b\u0438 \u043f\u0430\u0442\u0447\u0435\u0439 \u0432 \u0441\u0431\u043e\u0440\u043a\u0443\n> - \u041f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u0431\u044b\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u044b \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b\n> - \u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u044f \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0439 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c\n\n## \u0420\u0443\u0447\u043d\u0430\u044f \u0441\u0431\u043e\u0440\u043a\u0430\n\n\u041a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f Manticore \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f Docker \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 **\u043d\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f**, \u043d\u043e \u0435\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c, \u0432\u043e\u0442 \u0447\u0442\u043e \u0432\u0430\u043c \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0437\u043d\u0430\u0442\u044c:\n\n### \u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b\n\n* \u041a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 C++\n * \u0412 Linux - \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c GNU (4.7.2 \u0438 \u0432\u044b\u0448\u0435) \u0438\u043b\u0438 Clang\n * \u0412 Windows - Microsoft Visual Studio 2019 \u0438 \u0432\u044b\u0448\u0435 (\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e Community Edition)\n * \u041d\u0430 macOS - Clang (\u0438\u0437 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 XCode, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 `xcode-select --install` \u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438).\n* Bison, Flex - \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u0441\u0438\u0441\u0442\u0435\u043c \u043e\u043d\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0432 \u0432\u0438\u0434\u0435 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u0432 Windows \u043e\u043d\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 cygwin.\n* Cmake - \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043d\u0430 \u0432\u0441\u0435\u0445 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430\u0445 (\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0432\u0435\u0440\u0441\u0438\u044f 3.19 \u0438\u043b\u0438 \u0432\u044b\u0448\u0435)\n\n### \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u043a\u043e\u0434\u043e\u0432\n\n#### \u0418\u0437 git\n\n\u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 Manticore [\u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d \u043d\u0430 GitHub](https://github.com/manticoresoftware/manticoresearch).\n\u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434, \u043a\u043b\u043e\u043d\u0438\u0440\u0443\u0439\u0442\u0435 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439, \u0430 \u0437\u0430\u0442\u0435\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u043d\u0443\u0436\u043d\u0443\u044e \u0432\u0435\u0442\u043a\u0443 \u0438\u043b\u0438 \u0442\u0435\u0433. \u0412\u0435\u0442\u043a\u0430 `master` \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043e\u0441\u043d\u043e\u0432\u043d\u0443\u044e \u0432\u0435\u0442\u043a\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u041f\u0440\u0438 \u0432\u044b\u043f\u0443\u0441\u043a\u0435 \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u043d\u044b\u0439 \u0442\u0435\u0433, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 `3.6.0`, \u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0442\u043a\u0430 \u0434\u043b\u044f \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0440\u0435\u043b\u0438\u0437\u0430, \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 `manticore-3.6.0`. \u0413\u043e\u043b\u043e\u0432\u0430 \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 \u043f\u043e\u0441\u043b\u0435 \u0432\u0441\u0435\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u0432\u0441\u0435\u0445 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0445 \u0440\u0435\u043b\u0438\u0437\u043e\u0432. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0447\u0442\u043e\u0431\u044b \u0432\u0437\u044f\u0442\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 \u0432\u0435\u0440\u0441\u0438\u0438 3.6.0, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c:\n\nCODE_BLOCK_4\n\n#### \u0418\u0437 \u0430\u0440\u0445\u0438\u0432\u0430\n\n\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u044b\u0439 \u043a\u043e\u0434 \u0441 GitHub, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043a\u043d\u043e\u043f\u043a\u0443 \"Download ZIP\". \u041f\u043e\u0434\u0445\u043e\u0434\u044f\u0442 \u043a\u0430\u043a \u0444\u043e\u0440\u043c\u0430\u0442\u044b .zip, \u0442\u0430\u043a \u0438 .tar.gz.\n\nCODE_BLOCK_5\n\n### \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\n\nManticore \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 CMake. \u041f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u044f, \u0447\u0442\u043e \u0432\u044b \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0435\u0441\u044c \u0432 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u043c \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 \u043a\u043b\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f:\n\nCODE_BLOCK_6\n\nCMake \u043f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442 \u0441\u0431\u043e\u0440\u043a\u0443 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u043d\u0438\u043c\u0438. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432\u0441\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0441\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u043c\u0438, \u0435\u0441\u043b\u0438 \u043e\u043d\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b. \u0421\u043a\u0440\u0438\u043f\u0442 \u0442\u0430\u043a\u0436\u0435 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u0442 \u0438 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438, \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u044f, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c. \u041d\u0435\u044f\u0432\u043d\u043e \u0432\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439."
  83. },
  84. "is_code_or_comment": false,
  85. "model": "deepseek/deepseek-v3.2",
  86. "updated_at": 1770444782
  87. }
  88. }