Tizen: GBS, ошибка инициализации криптографической библиотеки (xmlsec) при сборке tizen с использованием gbs

При попытке собрать (сгенерировать rpm) для проекта tizen с помощью gbs я настроил gbs, установил микрофон и настроил файл .gbs.conf с соответствующими профилями, репозиториями и URL-адресами.

когда я пытаюсь построить целевую архитектуру (armv7l), используя

sudo gbs build -A armv7l --debug --clean

когда он пытается подписать сборки во временной папке, он пытается сгенерировать подпись автора и подпись дистрибьютора, но завершается ошибкой [542s]: Ошибка криптоинициализации xmlsec. Ниже приведен журнал.

> [541s] Sign as platform level
> [541s] Generate Author Signature
> [541s] Key type rsa
> [541s] Package is a directory
> [542s] func=xmlSecOpenSSLAppLoadRANDFile:file=app.c:line=1499:obj=unknown:subj=RAND_load_file:error=4:crypto library function failed:file=/home/abuild/.rnd
> [542s] func=xmlSecOpenSSLAppInit:file=app.c:line=68:obj=unknown:subj=xmlSecOpenSSLAppLoadRANDFile:error=1:xmlsec library function failed: 
> [542s] func=xmlSecAppCryptoInit:file=crypto.c:line=26:obj=unknown:subj=xmlSecCryptoAppInit:error=1:xmlsec library function failed: 
> [542s] Error: xmlsec crypto intialization failed.
> [542s] Error: initialization failed
> [542s] Usage: xmlsec <command> [<options>] [<files>]
> [542s] 
> [542s] xmlsec is a command line tool for signing, verifying, encrypting and
> [542s] decrypting XML documents. The allowed <command> values are:
> [542s]   --help       display this help information and exit
> [542s]   --help-all   display help information for all commands/options and exit
> [542s]   --help-<cmd> display help information for command <cmd> and exit
> [542s]   --version    print version information and exit
> [542s]   --keys       keys XML file manipulation
> [542s]   --sign       sign data and output XML document
> [542s]   --verify     verify signed document
> [542s]   --sign-tmpl  create and sign dynamicaly generated signature template
> [542s]   --encrypt    encrypt data and output XML document
> [542s]   --decrypt    decrypt data from XML document
> [542s] 
> [542s] 
> [542s] Report bugs to http://www.aleksey.com/xmlsec/bugs.html
> [542s] 
> [542s] Written by Aleksey Sanin <[email protected]>.
> [542s] 
> [542s] Copyright (C) 2002-2016 Aleksey Sanin <[email protected]>. All Rights Reserved..
> [542s] This is free software: see the source for copying information.
> [542s] 
> [542s] Failed to generate Author Signature. [1]
> [542s] Generate Distributor Signature
> [542s] Key type rsa
> [542s] Package is a directory
> [542s] func=xmlSecOpenSSLAppLoadRANDFile:file=app.c:line=1499:obj=unknown:subj=RAND_load_file:error=4:crypto library function failed:file=/home/abuild/.rnd
> [542s] func=xmlSecOpenSSLAppInit:file=app.c:line=68:obj=unknown:subj=xmlSecOpenSSLAppLoadRANDFile:error=1:xmlsec library function failed: 
> [542s] func=xmlSecAppCryptoInit:file=crypto.c:line=26:obj=unknown:subj=xmlSecCryptoAppInit:error=1:xmlsec library function failed: 
> [542s] Error: xmlsec crypto intialization failed.
> [542s] Error: initialization failed
> [542s] Usage: xmlsec <command> [<options>] [<files>]
> [542s] 
> [542s] xmlsec is a command line tool for signing, verifying, encrypting and
> [542s] decrypting XML documents. The allowed <command> values are:
> [542s]   --help       display this help information and exit
> [542s]   --help-all   display help information for all commands/options and exit
> [542s]   --help-<cmd> display help information for command <cmd> and exit
> [542s]   --version    print version information and exit
> [542s]   --keys       keys XML file manipulation
> [542s]   --sign       sign data and output XML document
> [542s]   --verify     verify signed document
> [542s]   --sign-tmpl  create and sign dynamicaly generated signature template
> [542s]   --encrypt    encrypt data and output XML document
> [542s]   --decrypt    decrypt data from XML document
> [542s] 
> [542s] 
> [542s] Report bugs to http://www.aleksey.com/xmlsec/bugs.html
> [542s] 
> [542s] Written by Aleksey Sanin <[email protected]>.
> [542s] 
> [542s] Copyright (C) 2002-2016 Aleksey Sanin <[email protected]>. All Rights Reserved..
> [542s] This is free software: see the source for copying information.
> [542s] 
> [542s] Failed to generate Distributor Signature. [1]
> [542s] error: Bad exit status from /var/tmp/rpm-tmp.2K6qZw (%install)
> [542s] 
> [542s] 
> [542s] RPM build errors:
> [542s]     Bad exit status from /var/tmp/rpm-tmp.2K6qZw (%install)

person Siddharth N    schedule 24.07.2019    source источник


Ответы (1)


Папка buildroot в файле gbs.conf должна принадлежать root, или вы должны запускать сборку от имени пользователя root.

«невозможно записать в /dev/null» — это ошибка, которую вы, вероятно, увидите в своих журналах, если вы не являетесь пользователем root. это та же причина, по которой происходит сбой криптоинициализации xmlsec (невозможно загрузить файл RAND и невозможно подписать файл signal1.xml, author-signature.xml).

так что решение или, по крайней мере, работа вокруг может быть изменение «корневой сборки» на /tmp/ или любую другую папку под корнем.

person Siddharth N    schedule 25.07.2019