<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hi Pablo,</p>
    <p>have you had time to build the rpms yet? I was a bit impatient
      and so I simply changed the ceph.spec file to point to <br>
    </p>
    <p>devtoolset-8-gcc-c++-8.3.1-3.el7.armv7hl.rpm</p>
    <p>instead of</p>
    <p>devtoolset-8-gcc-c++-8.3.1-3.1el7.armv7hl.rpm</p>
    <p>But after hours of compiling ceph I get an error. Maybe its
      related to not having the required version of devtoolset?</p>
    <p>/opt/rh/devtoolset-8/root/usr/include/c++/8/bits/stl_algo.h:3462:5:
      note:   template argument deduction/substitution
      failed:                                             |<br>
      /mnt/rpmbuild/BUILD/ceph-15.2.8/src/mds/PurgeQueue.cc:662:65:
      note:   mismatched types 'std::initializer_list<_Tp>' and
      'long long unsigned int'                         |<br>
         files_high_water = std::max(files_high_water,
in_flight.size());                                                                                                     
      |<br>
                                                                      
^                                                                                                      
      |<br>
      In file included from
/opt/rh/devtoolset-8/root/usr/include/c++/8/functional:65,                                                                                        
      |<br>
                       from
/mnt/rpmbuild/BUILD/ceph-15.2.8/build/boost/include/boost/smart_ptr/detail/shared_count.hpp:39,                                                   
      |<br>
                       from
/mnt/rpmbuild/BUILD/ceph-15.2.8/build/boost/include/boost/smart_ptr/shared_ptr.hpp:28,                                                            
      |<br>
                       from
/mnt/rpmbuild/BUILD/ceph-15.2.8/src/include/any.h:25,                                                                                             
      |<br>
                       from
/mnt/rpmbuild/BUILD/ceph-15.2.8/src/common/ceph_context.h:29,                                                                                     
      |<br>
                       from
/mnt/rpmbuild/BUILD/ceph-15.2.8/src/common/dout.h:29,                                                                                             
      |<br>
                       from
/mnt/rpmbuild/BUILD/ceph-15.2.8/src/common/debug.h:18,                                                                                            
      |<br>
                       from
/mnt/rpmbuild/BUILD/ceph-15.2.8/src/mds/PurgeQueue.cc:15:                                                                                         
      |<br>
/opt/rh/devtoolset-8/root/usr/include/c++/8/bits/stl_algo.h:3468:5:
      note: candidate: 'template<class _Tp, class _Compare>
      constexpr _Tp std::max(std::initializer_list<_T|<br>
      p>,
_Compare)'                                                                                                                                                          
      |<br>
           max(initializer_list<_Tp> __l, _Compare
__comp)                                                                                                                    
      |<br>
          
^~~                                                                                                                                                                
      |<br>
/opt/rh/devtoolset-8/root/usr/include/c++/8/bits/stl_algo.h:3468:5:
      note:   template argument deduction/substitution
      failed:                                             |<br>
      /mnt/rpmbuild/BUILD/ceph-15.2.8/src/mds/PurgeQueue.cc:662:65:
      note:   mismatched types 'std::initializer_list<_Tp>' and
      'long long unsigned int'                         |<br>
         files_high_water = std::max(files_high_water,
in_flight.size());                                                                                                     
      |<br>
                                                                      
^                                                                                                      
      |<br>
      make[2]: *** [src/mds/CMakeFiles/mds.dir/PurgeQueue.cc.o] Error
1                                                                                                       
      |<br>
      make[1]: *** [src/mds/CMakeFiles/mds.dir/all] Error
2                                                                                                                   
      |<br>
      make: *** [all] Error
2                                                                                                                                                 
      |<br>
      error: Bad exit status from /var/tmp/rpm-tmp.PANEM1
(%build)                                                                                                            
      |<br>
    </p>
    <p>Cheers,</p>
    <p>Oliver<br>
    </p>
    <div class="moz-cite-prefix">Am 13.12.2020 um 20:40 schrieb Oliver
      Weinmann:<br>
    </div>
    <blockquote type="cite"
      cite="mid:95E548DE-D62C-4BD5-A93F-8997D984F8C7@me.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      Great. Thank you very much. <br>
      <br>
      <div dir="ltr">Von meinem iPhone gesendet</div>
      <div dir="ltr"><br>
        <blockquote type="cite">Am 13.12.2020 um 20:25 schrieb Pablo
          Sebastián Greco <a class="moz-txt-link-rfc2396E" href="mailto:pgreco@centosproject.org"><pgreco@centosproject.org></a>:<br>
          <br>
        </blockquote>
      </div>
      <blockquote type="cite">
        <div dir="ltr">
          <meta http-equiv="Content-Type" content="text/html;
            charset=UTF-8">
          <p><font size="-1"><font face="Courier New, Courier,
                monospace">Ok,I see that in git we have .1 and .2,
                neither of which were built for armhfp. I'll try to get
                that sorted out and let you know.</font></font><br>
          </p>
          <div class="moz-cite-prefix">On 13/12/20 05:12, Oliver
            Weinmann via CentOS-devel wrote:<br>
          </div>
          <blockquote type="cite"
            cite="mid:bb5c2752-b0dd-832e-d106-d25122e69836@me.com">Ok, I
            missed an important part. I need version 8.3.1.3.1 the one
            in the rep is 8.3.1.3 :( So I have to compile it. I will
            give it a try. Or do you think there will be an updated
            package available soon? <br>
            <br>
            Cheers, <br>
            <br>
            Oliver <br>
            <br>
            Am 12.12.2020 um 19:40 schrieb Oliver Weinmann via
            CentOS-devel: <br>
            <blockquote type="cite">Great stuff. I was googling for
              those packages and couldn't find them. No more need to
              rebuild them. They were deps for CEPH. No I can start
              building ceph. :) I guess this will take a couple of days
              on a raspi3. ;) <br>
              <br>
              Am 12.12.2020 um 14:43 schrieb Pablo Sebastián Greco: <br>
              <blockquote type="cite"> <br>
                On 12/12/20 07:44, Oliver Weinmann wrote: <br>
                <blockquote type="cite">Hi Pablo, <br>
                  <br>
                  thanks a lot for your reply. The src.rpm I'm using is
                  this one: <br>
                  <br>
                  <a class="moz-txt-link-freetext"
href="https://cbs.centos.org/kojifiles/packages/devtoolset-8-gcc/8.3.1/3.1.el7/src/devtoolset-8-gcc-8.3.1-3.1.el7.src.rpm"
                    moz-do-not-send="true">https://cbs.centos.org/kojifiles/packages/devtoolset-8-gcc/8.3.1/3.1.el7/src/devtoolset-8-gcc-8.3.1-3.1.el7.src.rpm</a>
                  <br>
                  <br>
                  It's gcc8 so the patch you linked is not really
                  fitting. :( If you have time and could take a look
                  that would be really cool. <br>
                </blockquote>
                You have the whole devtoolset-8 for armhfp here <a
                  class="moz-txt-link-freetext"
                  href="https://buildlogs.centos.org/c7-devtoolset-8.armhfp/"
                  moz-do-not-send="true">https://buildlogs.centos.org/c7-devtoolset-8.armhfp/</a>
                , including the srpms. I'll talk to Johnny to upload the
                patches to git. <br>
                If you decide to rebuild it, aside from patience, be
                careful with binutils (needs a patch or executables
                become invalid) and make (has a bug that makes it
                parallel builds not work correctly). <br>
                Both of those issues are fixed in the repo I pointed <br>
                <blockquote type="cite"> <br>
                  Best Regards, <br>
                  <br>
                  Oliver <br>
                  <br>
                  Am 12.12.2020 um 10:26 schrieb Pablo Sebastián Greco:
                  <br>
                  <blockquote type="cite"> <br>
                    On 11/12/20 11:28, Oliver Weinmann via CentOS-devel
                    wrote: <br>
                    <blockquote type="cite">Hi Folks, <br>
                      <br>
                      For a small home project I would like to get
                      cephadm working on my Odroid HC-2 (armhf 32).
                      Maybe this is not going to work but I want to at
                      least give it a try. I see that there are only
                      arm64 packages and containers available from the
                      Ceph repo. So I thought I just go ahead and
                      compile the dependency packages myself and build a
                      new container with CentOS7 arm32. Luckily there is
                      a CentOS 7 arm32 container but I still need to
                      compile the packages. After downloading all the
                      src rpms i started building them and now I ended
                      up to compile this package from the SCL repo as it
                      is not available for arm32: <br>
                      <br>
                      devtoolset-8-gcc-8.3.1-3.1.el7.src.rpm <br>
                      <br>
                      It fails with an error of: <br>
                      <br>
                      checking if mkdir takes one argument... no <br>
                      *** Configuration armv7hl-redhat-linux-gnu7E not
                      supported <br>
                      make[2]: *** [configure-stage1-gcc] Error 1 <br>
                      make[2]: Leaving directory
                      `/root/rpmbuild/BUILD/gcc-8.3.1-20190311/obj-armv7hl-redhat-linux7E'
                      <br>
                      make[1]: *** [stage1-bubble] Error 2 <br>
                      make[1]: Leaving directory
                      `/root/rpmbuild/BUILD/gcc-8.3.1-20190311/obj-armv7hl-redhat-linux7E'
                      <br>
                      make: *** [profiledbootstrap] Error 2 <br>
                      error: Bad exit status from
                      /var/tmp/rpm-tmp.knxvjm (%build) <br>
                    </blockquote>
                    This looks very close to this fix we had to add to
                    make gcc work on arm
                    <a class="moz-txt-link-freetext"
href="https://git.centos.org/rpms/devtoolset-7-gcc/blob/c7/f/SPECS/gcc.spec#_319"
                      moz-do-not-send="true">https://git.centos.org/rpms/devtoolset-7-gcc/blob/c7/f/SPECS/gcc.spec#_319</a>
                    (I'm linking to gcc7 because I can't find the other
                    commit, but it is the same thing). <br>
                    Let me know if that helps  and if it is still
                    failing, point me to as spec file or an srpm and
                    I'll take a look. <br>
                    <blockquote type="cite"> <br>
                      <br>
                      RPM build errors: <br>
                          Bad exit status from /var/tmp/rpm-tmp.knxvjm
                      (%build) <br>
                      <br>
                      real    13m36.412s <br>
                      user    17m57.828s <br>
                      sys     3m47.905s <br>
                      <br>
                      I looked up the build log for arm64 and so I
                      figured out that the next step is to access a
                      directory called arm here: <br>
                      <br>
                      /root/rpmbuild/BUILD/gcc-8.3.1-20190311/gcc/config
                      <br>
                      <br>
                      in the extracted source. Somehow the build process
                      thinks my system is armv7hl-redhat-linux-gnu7E
                      instead of arm and  so it tries to access the
                      armv7hl-redhat-linux-gnu7E directory which doesn't
                      exist and fails. I simply created a symlink and
                      this seems to be working. <br>
                      <br>
                      ln -sf arm armv7hl-redhat-linux-gnu7E <br>
                      <br>
                      Not sure if this is in general a bad idea. So I
                      got a lot further. But then it fails again with
                      this error: <br>
                      <br>
                      In file included from /usr/include/features.h:399,
                      <br>
                                       from /usr/include/stdio.h:27, <br>
                                       from
                      ../.././libgcc/../gcc/tsystem.h:87, <br>
                                       from ../.././libgcc/libgcc2.c:27:
                      <br>
                      /usr/include/gnu/stubs.h:7:11: fatal error:
                      gnu/stubs-soft.h: No such file or directory <br>
                       # include <gnu/stubs-soft.h> <br>
                                 ^~~~~~~~~~~~~~~~~~ <br>
                      compilation terminated. <br>
                      make[3]: *** [_muldi3.o] Error 1 <br>
                      make[3]: Leaving directory
`/root/rpmbuild/BUILD/gcc-8.3.1-20190311/armv7l-unknown-linux-gnueabihf/libgcc'<br>
                      make[2]: *** [all-stage1-target-libgcc] Error 2 <br>
                      make[2]: Leaving directory
                      `/root/rpmbuild/BUILD/gcc-8.3.1-20190311' <br>
                      make[1]: *** [stage1-bubble] Error 2 <br>
                      make[1]: Leaving directory
                      `/root/rpmbuild/BUILD/gcc-8.3.1-20190311' <br>
                      make: *** [all] Error 2 <br>
                      <br>
                      real    88m2.283s <br>
                      user    67m23.211s <br>
                      sys     6m7.984s <br>
                      <br>
                      I can't find any good info on google on how to
                      deal with this one. Any ideas? <br>
                      <br>
                      Best Regards, <br>
                      <br>
                      Oliver <br>
                      <br>
                      <br>
                      <br>
                    </blockquote>
                    Pablo. <br>
                  </blockquote>
                </blockquote>
                Pablo. <br>
              </blockquote>
              _______________________________________________ <br>
              CentOS-devel mailing list <br>
              <a class="moz-txt-link-abbreviated"
                href="mailto:CentOS-devel@centos.org"
                moz-do-not-send="true">CentOS-devel@centos.org</a> <br>
              <a class="moz-txt-link-freetext"
                href="https://lists.centos.org/mailman/listinfo/centos-devel"
                moz-do-not-send="true">https://lists.centos.org/mailman/listinfo/centos-devel</a>
              <br>
            </blockquote>
            _______________________________________________ <br>
            CentOS-devel mailing list <br>
            <a class="moz-txt-link-abbreviated"
              href="mailto:CentOS-devel@centos.org"
              moz-do-not-send="true">CentOS-devel@centos.org</a> <br>
            <a class="moz-txt-link-freetext"
              href="https://lists.centos.org/mailman/listinfo/centos-devel"
              moz-do-not-send="true">https://lists.centos.org/mailman/listinfo/centos-devel</a>
            <br>
          </blockquote>
        </div>
      </blockquote>
    </blockquote>
  </body>
</html>