Ошибка при сборке исходного кода

Некорректный комментарий: изначально сборку образа выполнил из исходного кода версии 5.0.3. Выкачал исходный код из мастера и запустил сборку образа по новой. Сообщу по результатам.

Сборка образа выполнена успешно.

docker build -t manticoresearch/manticore:master .

Команда запуска контейнера:

docker run -it --rm -e SYSROOT_URL=https://repo.manticoresearch.com/repository/sysroots -e arch=x86_64 -e DISTR=rhel7 -e boost=boost_nov22 -e sysroot=roots_nov22 -v /manticoresearch/manticore:/master 070e55ff2f5f bash

При попытке запуска контейнера ошибка:

/sysroot/root/entry_point.sh: line 2: $'\r': command not found
Arch is x86_64
Distr is rhel7
Sysroot URL is https://repo.manticoresearch.com/repository/sysroots (configured most probably in gitlab variable)
/sysroot/root/entry_point.sh: line 6: $'\r': command not found
/sysroot/root/entry_point.sh: line 9: $'\r': command not found
Will use Boost from dir boost_nov22 on the server; may be set to 'none', or other value with boost=XYZ clause
Will use sysroot from dir roots_nov22 on the server; may be set to other value with sysroot=XYZ clause
/sysroot/root/entry_point.sh: line 12: $'\r': command not found
': not a valid identifier.sh: line 13: export: `sysroot
': not a valid identifier.sh: line 14: export: `boost
/sysroot/root/entry_point.sh: line 15: $'\r': command not found
/sysroot/root/entry_point.sh: line 38: syntax error: unexpected end of file

entry_point.sh точно не модифицировали? md5 можете посчитать?

Algorithm : MD5
Hash : 6B12D0DC614A6CE16DF43F94E5C6D75E
Path : C:\Users\Asus\Downloads\manticoresearch\dist\build_dockers\cross\external_toolchain\entry_point.sh

про это находится bash - '\r': command not found - .bashrc / .bash_profile - Stack Overflow - те как будто вы или винда - поменяла \n на \r ну и такой line ending не подходит для линукса

если вы на centos 7 - почему не собирать и там же или оттуда же докер запускать?

и еще раз спрошу почему готовые пакеты мантикоры хоть из release \ хоть из dev репозитория не подходят?

скорее всего у вас git меняет line ending на виндовый при clone - это не нужно делать, нужно оставить line ending такой как есть в репозитории

Hash : 6B12D0DC614A6CE16DF43F94E5C6D75E

А должен быть

➜  external_toolchain git:(master) ✗ md5sum entry_point.sh
fffaa0c61fada56147e5130b7e873a57  entry_point.sh
1 Like

Из-за проблемы взаимодействия .net connector (8.0.30): мантикорой не отдаётся переменная autocommit. Наш разработчик отправил pull request по данной проблеме: @@autocommit in HandleMysqlSelectSysvar by ArtemevAL · Pull Request #984 · manticoresoftware/manticoresearch · GitHub

Спасибо за наводку. Код из мастера я действительно клонировал, а до этого я скачивал исходный код архивом. Сейчас скачаю архив и повторю процедуры снова.

мы приняли ваш PR и CI собрал пакеты с этим комитом и загрузил в dev репозиторий - вы можете взять и попробовать готовые пакет

Спасибо большое. Сейчас установлю и отпишу по результатам.

При попытке сборки rpm пакетов на CentOS 7 ошибка воспроизвелась (ссылка на log файл сборки cmake, который скидывал ранее: cmake_build.log - Google Drive):

[227/228] Run CPack packaging tool...
CPack: Create package using RPM
CPack: Install projects
CPack: - Install project: MANTICORE []
CPack: -   Install component: common
CPack: -   Install component: converter
CPack: -   Install component: devel
CPack: -   Install component: icudata
CPack: -   Install component: searchd
CPack: -   Install component: server
CPack: -   Install component: tools
CPack: -   Install component: meta
CPack: Create package
CPackRPM: Will use GENERATED spec file: /sysroot/root/manticoresearch/build/_CPack_Packages/Linux/RPM/SPECS/manticore-common.spec
CMake Error at /cmake-3.24.3-linux-x86_64/share/cmake-3.24/Modules/Internal/CPack/CPackRPM.cmake:666 (message):
  CPackRPM: source dir path '/sysroot/root/manticoresearch' is shorter than
  debuginfo sources dir path
  '/usr/src/debug/manticore-5.0.3-230113-0563f25a7/converter/src_0'! Source
  dir path must be longer than debuginfo sources dir path.  Set
  CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX variable to a shorter value or make
  source dir path longer.  Required for debuginfo packaging.  See
  documentation of CPACK_RPM_DEBUGINFO_PACKAGE variable for details.
Call Stack (most recent call first):
  /cmake-3.24.3-linux-x86_64/share/cmake-3.24/Modules/Internal/CPack/CPackRPM.cmake:1466 (cpack_rpm_debugsymbol_check)
  /cmake-3.24.3-linux-x86_64/share/cmake-3.24/Modules/Internal/CPack/CPackRPM.cmake:1968 (cpack_rpm_generate_package)


CPack Error: Error while execution CPackRPM.cmake
CPack Error: Error while execution CPackRPM.cmake
CPack Error: Error while execution CPackRPM.cmake
CPack Error: Error while execution CPackRPM.cmake
CPack Error: Error while execution CPackRPM.cmake
CPack Error: Error while execution CPackRPM.cmake
CPack Error: Error while execution CPackRPM.cmake
CPack Error: Problem compressing the directory
CPack Error: Error when generating package: manticore
FAILED: CMakeFiles/package.util 
cd /sysroot/root/manticoresearch/build && /cmake-3.24.3-linux-x86_64/bin/cpack --config ./CPackConfig.cmake
ninja: build stopped: subcommand failed.

Примечание:

  1. Docker образ был собран из исходного кода ветки master.
  2. Команда сборки docker image:
docker build -t manticoresearch/manticore:master  .
  1. Команда запуска контейнера:
docker run -it --rm -e SYSROOT_URL=https://repo.manticoresearch.com/repository/sysroots -e arch=x86_64 -e DISTR=rhel7 -e boost=boost_nov22 -e sysroot=roots_nov22 -v /manticoresearch/manticore:/master be12460dd4bc bash
  1. Команды сборки исходного кода (rpm пакетов):
mkdir build && cd build
cmake -DPACK=1 ..
cmake --build . --target package

Зафиксирована новая ошибка. По данной ошибке заведена тема: Проблема с handshake в версии 5.0.3
Примечание: установка пакетов из дев репозитория выполнена успешно, проблема с автокоммитом в мантикоре версии 5.0.3_230113.b819f28ac-1.el7.centos не воспроизводится.

в секции документации caveats https://manual.manticoresearch.com/Installation/Compiling_from_sources#Explicitly-select-build-system-generators описано что делать с этой ошибкой

1 Like

Спасибо, помогло. Сборка прошла успешно.

Подскажите, пожалуйста, сможете добавить rpm пакеты в dev репозиторий в рамках pull request Handshake send problem by ArtemevAL · Pull Request #1018 · manticoresoftware/manticoresearch · GitHub по аналогии с передачей переменной автокоммита?

Мы тестируем PR. Надеюсь, что всё будет ок и тогда конечно добавим.

Благодарю. Буду ждать фидбека.

Смерджили.

1 Like

CI прошёл, пакеты доступны в https://repo.manticoresearch.com/

1 Like