Захват файлов журнала, созданных cmake в образе сингулярности, до того, как образ будет очищен после неудачной сборки

Я создаю приложение, используя файл рецепта Singularity (v. 2.5.1). В какой-то момент он дает сбой во время сборки, cmake дает сбой и записывает ошибки в файл журнала в образе сингулярности.

Чтобы построить образ:

sudo /opt/singularity/2.5.1/bin/singularity build test.simg Singularity

Конец вывода stdout (распечатанного на терминал) из сборки:

.
.
.
MKL is found at /my_dir/intel/mkl
CMake Error at cmake/FindMKL.cmake:83 (error):
  Unknown CMake command "error".
Call Stack (most recent call first):
  CMakeLists.txt:262 (find_package)


-- Configuring incomplete, errors occurred!
See also "/my_dir/code/gadgetron/build/CMakeFiles/CMakeOutput.log".

Проблема в том, что, поскольку сборка образа сингулярности не удалась, нет образа для исследования журналов.

ВОПРОС: Как сохранить журналы или файлы процесса сборки, если сам образ не удается собрать? Возможно, в cmake есть способ перенаправить вывод из CMakeOutput.log в стандартный вывод?

Вы получили ошибку на этапе конфигурация. Таким образом, этот этап терпит неудачу, и этап строить никогда не выполняется. Я не знаком с сингулярностью, но полагаю, что образы не генерируются до этапа сборки.

Tsyvarev 30.01.2019 21:58

Я надеялся найти способ связать или скопировать файл до того, как попытка сборки сингулярности потерпит неудачу.

irritable_phd_syndrome 30.01.2019 22:11

О, только что обнаружил, что вам нужен журналы, а не картинки. Но если вам нужны логи для исправления данной ошибки, то в этом нет смысла. CMake сообщает обо всем, что связано с ошибкой, в журнал конфигурации, который вы показали.

Tsyvarev 31.01.2019 09:20

Должно быть больше информации об ошибке в /my_dir/code/gadgetron/build/CMakeFiles/CMakeOutput.log, верно?

irritable_phd_syndrome 31.01.2019 11:20

Не совсем так. CMake печатает строку «См. также» в случае какой-либо ошибки. Но в большинстве случаев CMakeOutput.log имеет значение бесполезный для устранения ошибки. Этот журнал может (вероятно!) помочь, если ошибка исходит из внутренних компонентов CMake. Но ошибка Unknown CMake command "XXX". вообще не отражается в логе. В журнале не перечислены все доступные команды (по крайней мере, до тех пор, пока для CMake не будут указаны параметры отладки). Короче: Лучше сначала заглянуть в указанную строку, а уже потом решать, нужна ли вам дополнительная информация от CMake.

Tsyvarev 31.01.2019 11:27
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
5
337
0

Другие вопросы по теме