Инструмент "ar" позволяет создавать пустую библиотеку
Классический инструмент "ar" из Binutils не завершается ошибкой, если какая-либо библиотека, указанная в командной строке, не существует. Отображается только сообщение "ar: <_library_name _>. A: Нет такого файла или каталога", но код возврата равен нулю.
Из-за этого иногда очень сложно анализировать проблемы сборки, поскольку каждый тратит много времени, чтобы выяснить, почему некоторые функции отсутствуют в полученном двоичном файле.
Почему такое поведение? Неужели большинство пользователей Linux считают это правильным? Почему бы не добавить хотя бы один вариант, чтобы потерпеть неудачу?
ar -V
GNU ar (GNU Binutils for Ubuntu) 2.24
1 ответ
Работает для меня:
$ ar unknown.a 2>/dev/null || echo 'ko'
ko
$ ar -V
GNU ar (GNU Binutils) 2.28.0.20170506
Copyright (C) 2017 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or (at your option) any later version.
This program has absolutely no warranty.
Скорее всего твоя версия ar
слишком стар