Error de compilación de RPM: archivo %files vacío debugfiles.list

Error de compilación de RPM: archivo %files vacío debugfiles.list

Problema y entorno

Korora 23 (Fedora 23)
rpmbuild --versiónRPM version 4.13.0-rc1

Estoy intentando hacer un paquete local desincronización de archivos gratuitospara mí. El sitio ofrece una versión de openSUSE que estoy intentando empaquetar para Fedora.

Miarchivo de especificaciones.

El error

Processing files: freefilesync-8.2-1.fc23.x86_64
Provides: config(freefilesync) = 8.2-1.fc23 freefilesync = 8.2-1.fc23 freefilesync(x86-64) = 8.2-1.fc23
Requires(interp): /bin/sh /bin/sh
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires(post): /bin/sh
Requires(postun): /bin/sh
Requires: libX11.so.6()(64bit) libXxf86vm.so.1()(64bit) libatk-1.0.so.0()(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.10)(64bit) libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.17)(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3)(64bit) libc.so.6(GLIBC_2.3.2)(64bit) libc.so.6(GLIBC_2.4)(64bit) libc.so.6(GLIBC_2.6)(64bit) libcairo.so.2()(64bit) libdl.so.2()(64bit) libdl.so.2(GLIBC_2.2.5)(64bit) libexpat.so.1()(64bit) libfontconfig.so.1()(64bit) libfreetype.so.6()(64bit) libgcc_s.so.1()(64bit) libgcc_s.so.1(GCC_3.0)(64bit) libgdk-x11-2.0.so.0()(64bit) libgdk_pixbuf-2.0.so.0()(64bit) libgio-2.0.so.0()(64bit) libglib-2.0.so.0()(64bit) libgobject-2.0.so.0()(64bit) libgthread-2.0.so.0()(64bit) libgtk-x11-2.0.so.0()(64bit) libm.so.6()(64bit) libm.so.6(GLIBC_2.2.5)(64bit) libpango-1.0.so.0()(64bit) libpangocairo-1.0.so.0()(64bit) libpangoft2-1.0.so.0()(64bit) libpng16.so.16()(64bit) libpng16.so.16(PNG16_0)(64bit) libpthread.so.0()(64bit) libpthread.so.0(GLIBC_2.2.5)(64bit) libpthread.so.0(GLIBC_2.3.2)(64bit) libstdc++.so.6()(64bit) libstdc++.so.6(CXXABI_1.3)(64bit) libstdc++.so.6(CXXABI_1.3.2)(64bit) libstdc++.so.6(CXXABI_1.3.3)(64bit) libstdc++.so.6(CXXABI_1.3.5)(64bit) libstdc++.so.6(CXXABI_1.3.9)(64bit) libstdc++.so.6(GLIBCXX_3.4)(64bit) libstdc++.so.6(GLIBCXX_3.4.11)(64bit) libstdc++.so.6(GLIBCXX_3.4.14)(64bit) libstdc++.so.6(GLIBCXX_3.4.15)(64bit) libstdc++.so.6(GLIBCXX_3.4.18)(64bit) libstdc++.so.6(GLIBCXX_3.4.19)(64bit) libstdc++.so.6(GLIBCXX_3.4.20)(64bit) libstdc++.so.6(GLIBCXX_3.4.21)(64bit) libstdc++.so.6(GLIBCXX_3.4.9)(64bit) libz.so.1()(64bit) libz.so.1(ZLIB_1.2.0)(64bit)
Processing files: freefilesync-debuginfo-8.2-1.fc23.x86_64
error: Empty %files file /home/bgstack15-local/rpmbuild/BUILD/freefilesync-8.2/debugfiles.list


RPM build errors:
    Empty %files file /home/bgstack15-local/rpmbuild/BUILD/freefilesync-8.2/debugfiles.list

Lo que ya he probado

Porhttps://lists.opensuse.org/opensuse-buildservice/2015-11/msg00016.htmlYa intenté agregar esta línea a mi especificación como puede ver, pero no ayudó:

%global debug_package %{nil}

Por alguna razón, esta página no me proporciona información útil. ¿Quizás lo estoy leyendo mal?https://fedoraproject.org/wiki/Packaging:Debuginfo

Información extra

En realidad no programo. Simplemente empaqueto archivos binarios que ya me proporciona la empresa y empaqueto cosas para mí para mis implementaciones domésticas de GNU/Linux.

Respuesta1

En RPM, el orden de las secciones y macros importa. Especialmente para las %define-s y %global-s ("definiciones globales").

Mover (o agregarlo si aún no lo tiene) las secciones y %global debug_package %{nil}anteriores debería hacer el trabajo.%prep%setup

Respuesta2

En caso de que no desee alterar el archivo de especificaciones, puede ejecutar el comando como:

rpmbuild -ba -D 'debug_package %{nil}' package_name.spec

Respuesta3

Mi problema se resolvió moviendo la directiva %global justo debajo de la directiva %description. No sé por qué es importante la ubicación.

Respuesta4

Basado en la respuesta de @MrTau, pero para reconstruir desde .src.rpm:

rpmbuild -D 'debug_package %{nil}' --rebuild <package>.src.rpm 

información relacionada