Hey Yuval,
Centos 8 might be most stable for rpmbuild, according to my observation in recent trials.
On Wed, Nov 4, 2020 at 8:16 PM Yuval Lifshitz <ylifshit@xxxxxxxxxx> wrote:
got it. Is this a fedora specific issue?should I try doing that on ubuntu?_______________________________________________On Tue, Nov 3, 2020 at 11:35 PM Brad Hubbard <bhubbard@xxxxxxxxxx> wrote:On Wed, Nov 4, 2020 at 1:03 AM Yuval Lifshitz <ylifshit@xxxxxxxxxx> wrote:
>
> Hi Brad,
> Thanks for the help!
> but now i ran into this issue: https://tracker.ceph.com/issues/48078 as cmake is now failing with:
> "
> CMake Error at cmake/modules/CephChecks.cmake:140 (message):
> Unaligned access is required
> "
> in the ticket you mention that this is not happening with "in tree" rpmbuild. How do I perform that?
An "in tree" build is a normal build in the source tree (as opposed to
building using rpmbuild). There is something about the rpmbuild
environment that is contributing to the issue but I haven't been able
to work out what exactly the problem is so far.
>
> Yuval
>
> On Tue, Nov 3, 2020 at 2:45 AM Brad Hubbard <bhubbard@xxxxxxxxxx> wrote:
>>
>> On Tue, Nov 3, 2020 at 2:20 AM Yuval Lifshitz <ylifshit@xxxxxxxxxx> wrote:
>> >
>> > Dear Community,
>>
>> Hi Yuval,
>>
>> > As part of the work to add AWS endpoints to RGW bucket notifications [1], I'm trying to figure out how to package the AWS libraries that we generate in the submodule.
>> >
>> > So, my first step is to try and see how packaging works regardless of the AWS PR (just on master). I'm trying to follow the instructions from our docs [2], but these instructions seem to indicate that the code tarball needs to be downloaded from our official location (although the instructions also ask to clone ceph locally). Instead I used the "make-dist" script to generate the tarball locally, and continued with the instructions using that tarball instead of the downloaded one.
>> >
>> > This worked to some point, but I started receiving 2 kinds of issues:
>> > One (seems like a warning):
>> > "
>> > /usr/bin/gdb.minimal: warning: Could not complete Guile gdb module initialization from: /usr/share/gdb/guile/gdb/boot.scm.
>>
>> If it's complaining about not being able to find
>> /usr/share/gdb/guile/gdb/boot.scm (as in the BZ) you could try
>> installing gdb-headlessbut it looks like a bit of a harmless warning
>> AFAICT.
>>
>> > "
>> > Probably related to this BZ [3], but could not figure out what to do to solve it
>> >
>> > The other is an error with rpath causign the process to fail:
>> > "
>> > ERROR 0002: file '/app/lib64/ceph/libceph-common.so.2' contains an invalid rpath '/app/lib64/ceph' in [/app/lib64/ceph]
>> > ERROR 0002: file '/app/lib64/ceph/librbd/libceph_librbd_parent_cache.so.1.0.0' contains an invalid rpath '/app/lib64/ceph' in [/app/lib64/ceph]
>> > ERROR 0002: file '/app/lib64/libcephfs.so.2.0.0' contains an invalid rpath '/app/lib64/ceph' in [/app/lib64/ceph]
>> > ...
>> > "
>> >
>> > Would appreciate any advice on that.
>>
>> This is due to the following.
>>
>> $ rpm --eval "%{_prefix}"
>> /app
>>
>> $ rpm --showrc | grep "^Macro path:"
>> Macro path: /usr/lib/rpm/macros:/usr/lib/rpm/macros.d/macros.*:/usr/lib/rpm/platform/%{_target}/macros:/usr/lib/rpm/fileattrs/*.attr:/usr/lib/rpm/redhat/macros:/etc/rpm/macros.*:/etc/rpm/macros:/etc/rpm/%{_target}/macros:~/.rpmmacros
>>
>> $ ag "%_prefix.*app" /usr/lib/rpm/ /etc/rpm/
>> /etc/rpm/macros.flatpak
>> 2:%_prefix /app
>>
>> $ rpm -qf /etc/rpm/macros.flatpak
>> flatpak-rpm-macros-32-2.fc32.x86_64
>>
>> So you could uninstall flatpak-rpm-macros or you can add the following
>> line to ~/.rpmmacros to override the definition.
>>
>> %_prefix /usr
>>
>> The way I normally create rpms is by running the following.
>>
>> $ rpmdev-wipetree
>> $ ./make-srpm.sh
>> $ rpm -ivh ceph-15.0.0-19449.g161b7e118b4.fc32.src.rpm
>> $ rpmbuild -ba ~/working/rpmbuild/SPECS/ceph.spec
>>
>> There are other options available as well such as using mock profiles
>> [0] to build the srpm and/or uploading to copr [1] or similar to allow
>> the rpms to be built there. Of course you could also do these builds
>> in containers.
>>
>> Let me know if I can be of any further help.
>>
>> [0] https://fedoraproject.org/wiki/Using_Mock_to_test_package_builds
>> [1] https://copr.fedorainfracloud.org/coprs/badone/
>>
>> >
>> > Yuval
>> >
>> > [1] https://github.com/ceph/ceph/pull/36062
>> > [2] https://docs.ceph.com/en/latest/install/build-ceph/?highlight=rpmbuild#rpm-package-manager
>> > [3] https://bugzilla.redhat.com/show_bug.cgi?id=1801144
>> > _______________________________________________
>> > Dev mailing list -- dev@xxxxxxx
>> > To unsubscribe send an email to dev-leave@xxxxxxx
>>
>>
>>
>> --
>> Cheers,
>> Brad
>>
--
Cheers,
Brad
Dev mailing list -- dev@xxxxxxx
To unsubscribe send an email to dev-leave@xxxxxxx
_______________________________________________ Dev mailing list -- dev@xxxxxxx To unsubscribe send an email to dev-leave@xxxxxxx