* Re: [newbies] Ошибка при cmake-сборке
2017-10-26 11:25 ` [newbies] Ошибка при cmake-сборке Andrew Savchenko
@ 2017-10-26 12:08 ` Ivan Zakharyaschev
1 sibling, 0 replies; 2+ messages in thread
From: Ivan Zakharyaschev @ 2017-10-26 12:08 UTC (permalink / raw)
To: devel@ where you _can_ ask
[-- Attachment #1: Type: text/plain, Size: 3125 bytes --]
Hello!
On Thu, 26 Oct 2017, alexey wrote:
> Пытаюсь собрать пакет visualboyadvance-m и получаю ошибку
> x86_64-alt-linux-gcc: error: qc: No such file or directory
На самом деле, я помню, что там была следующая ошибка ещё (из личного
общения) -- нету некого lib*.a файла. И это дополнительная информация в
пользу объяснения, которое я высказываю ниже. Этот lib*.a не создаётся
из-за показанной здесь предыдущей ошибки.
(На самом деле, если бы все обе ошибки были показаны в этом письме,
получается, было бы легче разобраться, чем видя только одну ошибку.)
> Репозиторий на git.altlinux
> http://git.altlinux.org/people/alexey/packages/?p=visualboyadvance-m.git
>
> Исходные коды взял здесь
> https://github.com/visualboyadvance-m/visualboyadvance-m
>
> Насколько я понял, обращение к qc порождается cmake-ом. Результат поиска по
> "qc" в приложенном файле (qc_hsh-shell_grep.txt).
>
> Может быть, кто-то с таким сталкивался? Буду рад любым соображениям по
> преодолению.
Я погуглил по этим буквам: "qc" "cmake"; и найденные обсуждения наводят на
мысль, что это аргумент для ar (см. man ar).
Такая ошибка могла возникнуть, если там делается что-то вроде (пример на
shell):
$AR qc ...
а $AR при этом раскрывается в пустоту (потому что не определён).
И в этом grep-е по содержанию пакета cmake есть похожие вещи:
/usr/share/cmake/Modules/Platform/Windows-GNU.cmake:58:
set(CMAKE_${lang}_ARCHIVE_CREATE "<CMAKE_AR> qc <TARGET> <LINK_FLAGS>
<OBJECTS>")
/usr/share/cmake/Modules/CMakeFortranInformation.cmake:196:
set(CMAKE_Fortran_ARCHIVE_CREATE "<CMAKE_AR> qc <TARGET> <LINK_FLAGS>
<OBJECTS>")
/usr/share/cmake/Modules/CMakeCXXInformation.cmake:268:
set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> qc <TARGET> <LINK_FLAGS>
<OBJECTS>")
/usr/share/cmake/Modules/CMakeCUDAInformation.cmake:143:
set(CMAKE_CUDA_ARCHIVE_CREATE "<CMAKE_AR> qc <TARGET> <LINK_FLAGS>
<OBJECTS>")
/usr/share/cmake/Modules/CMakeCInformation.cmake:179:
set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> qc <TARGET> <LINK_FLAGS>
<OBJECTS>")
Вызов ar должен был бы создать требуемый lib*.a, но этого не
происходит из-за того, что вместо настоящего ar почему-то подставляется
пустота.
Больше ничего не знаю про cmake и дальше подсказать не могу.
--
Best regards,
Ivan
^ permalink raw reply [flat|nested] 2+ messages in thread