Hi list, I'm creating an RPM package for gocryptfs on AlmaLinux 9.3 I'm using the source with deps (vendoring) because deps are too much. During the process rpmbuild returns: gocryptfs-debugsource-2.4.0-1.el9.x86_64 error: Empty %files file /root/rpmbuild/BUILD/gocryptfs_v2.4.0_src-deps/debugsourcefiles.list To avoid this I can add: %global debug_package %{nil} and the problem is solved also if the build-id links are generated. But, here there is a problem. I read that for $arch packages a debug package will be created and if some error is reported there is something wrong on the SPEC file. Why debugsourcefiles.list is empty? What is causing this? Thank you in advance. Alessandro.
I'm not overly familiar with Go but generally this is the result of a compile-time flag stripping debug symbols from binaries, then when rpmbuild goes to do exactly that there's nothing there for it to grab. Look for compile-time flags that mention stripping (or not stripping) symbols. On Wed, Jan 17, 2024 at 11:39 AM Alessandro Baggi < alessandro.baggi@gmail.com> wrote:
Hi list, I'm creating an RPM package for gocryptfs on AlmaLinux 9.3 I'm using the source with deps (vendoring) because deps are too much.
During the process rpmbuild returns:
gocryptfs-debugsource-2.4.0-1.el9.x86_64 error: Empty %files file /root/rpmbuild/BUILD/gocryptfs_v2.4.0_src-deps/debugsourcefiles.list
To avoid this I can add:
%global debug_package %{nil}
and the problem is solved also if the build-id links are generated.
But, here there is a problem. I read that for $arch packages a debug package will be created and if some error is reported there is something wrong on the SPEC file.
Why debugsourcefiles.list is empty? What is causing this?
Thank you in advance.
Alessandro. _______________________________________________ AlmaLinux Users mailing list -- users@lists.almalinux.org To unsubscribe send an email to users-leave@lists.almalinux.org
-- Jonathan Wright AlmaLinux Foundation Mattermost: chat https://chat.almalinux.org/almalinux/messages/@jonathan
Hi Jonathan and thank you for your answer. I will try to find if there are compile flags that remove debug symbol. Best regards, Alessandro. Il 17/01/24 22:08, Jonathan Wright ha scritto:
I'm not overly familiar with Go but generally this is the result of a compile-time flag stripping debug symbols from binaries, then when rpmbuild goes to do exactly that there's nothing there for it to grab.
Look for compile-time flags that mention stripping (or not stripping) symbols.
On Wed, Jan 17, 2024 at 11:39 AM Alessandro Baggi
mailto:alessandro.baggi@gmail.com> wrote: Hi list, I'm creating an RPM package for gocryptfs on AlmaLinux 9.3 I'm using the source with deps (vendoring) because deps are too much.
During the process rpmbuild returns:
gocryptfs-debugsource-2.4.0-1.el9.x86_64 error: Empty %files file /root/rpmbuild/BUILD/gocryptfs_v2.4.0_src-deps/debugsourcefiles.list
To avoid this I can add:
%global debug_package %{nil}
and the problem is solved also if the build-id links are generated.
But, here there is a problem. I read that for $arch packages a debug package will be created and if some error is reported there is something wrong on the SPEC file.
Why debugsourcefiles.list is empty? What is causing this?
Thank you in advance.
Alessandro. _______________________________________________ AlmaLinux Users mailing list -- users@lists.almalinux.org mailto:users@lists.almalinux.org To unsubscribe send an email to users-leave@lists.almalinux.org mailto:users-leave@lists.almalinux.org
-- Jonathan Wright AlmaLinux Foundation Mattermost: chat https://chat.almalinux.org/almalinux/messages/@jonathan
Hi Jonathan, thank you again. Reading my SPEC file I reached LDFLAGS variable a line like this: export GOFLAGS="-trimpath -buildmode=pie" I used -trimpath because the build script of gocryptfs use it and I used it without check what that option means while -buildmode=pie I inserted it to use PIE. From go help build about -trimpath I got: remove all file system paths from the resulting executable. Instead of absolute file system paths, the recorded file names will begin either a module path@version (when using modules), or a plain import path (when using the standard library, or GOPATH). Reading on the web -trimpath removes part of file paths from the debug info. Removing -trimpath option rpmbuild is able to create debuginfo packages. Thank you very much for your help and suggestion. Best regards, Alessandro. Il 18/01/24 11:22, Alessandro Baggi ha scritto:
Hi Jonathan and thank you for your answer.
I will try to find if there are compile flags that remove debug symbol.
Best regards, Alessandro.
Il 17/01/24 22:08, Jonathan Wright ha scritto:
I'm not overly familiar with Go but generally this is the result of a compile-time flag stripping debug symbols from binaries, then when rpmbuild goes to do exactly that there's nothing there for it to grab.
Look for compile-time flags that mention stripping (or not stripping) symbols.
On Wed, Jan 17, 2024 at 11:39 AM Alessandro Baggi
mailto:alessandro.baggi@gmail.com> wrote: Hi list, I'm creating an RPM package for gocryptfs on AlmaLinux 9.3 I'm using the source with deps (vendoring) because deps are too much.
During the process rpmbuild returns:
gocryptfs-debugsource-2.4.0-1.el9.x86_64 error: Empty %files file /root/rpmbuild/BUILD/gocryptfs_v2.4.0_src-deps/debugsourcefiles.list
To avoid this I can add:
%global debug_package %{nil}
and the problem is solved also if the build-id links are generated.
But, here there is a problem. I read that for $arch packages a debug package will be created and if some error is reported there is something wrong on the SPEC file.
Why debugsourcefiles.list is empty? What is causing this?
Thank you in advance.
Alessandro. _______________________________________________ AlmaLinux Users mailing list -- users@lists.almalinux.org mailto:users@lists.almalinux.org To unsubscribe send an email to users-leave@lists.almalinux.org mailto:users-leave@lists.almalinux.org
-- Jonathan Wright AlmaLinux Foundation Mattermost: chat https://chat.almalinux.org/almalinux/messages/@jonathan
-trimpath: This option removes all file system paths from the resulting executable, which can simplify and obfuscate debug information. This might interfere with the creation of debuginfo packages.
participants (3)
-
Alessandro Baggi
-
Jonathan Wright
-
loinse bekean