ninja/cmake stuck at downloading boost during build
Hi all, I am trying to build Ceph binaries from the main branch. Sometimes "ninja -j 7 " (see the bottom for steps I run to initiate the build) gets stuck at the step where the Boost library is downloaded. The step description printed on stdout is "Performing download step (download, verify and extract) for 'Boost'". Running nethogs shows that cmake is indeed downloading but the download speed is less than 50 Kbps. Last night, I also saw this issue while building binaries for the "quincy" branch. Cancelling and reinitiating the build has no effect on the download speed. Is there a way to choose the faster/fastest mirror to download the Boost library? How can I change the default mirror that cmake uses? Another option is to use the boost library installed on my system. For this I can pass "-DWITH_SYSTEM_BOOST=ON" to the "do_cmake.sh" script. My system has version 1.76 installed. Will this version work fine? Has anyone tried this before? I don't face this issue all the time. It happens once in a couple months but whenever it does, I am stuck for several hours. System I am using is Fedora 36. Following are the commands I usually run to initiate building of Ceph binaries - $ sudo ./install-deps.sh $ ./do_cmake.sh -DWITH_CEPHFS_SHELL=ON -DWITH_BABELTRACE=OFF -DWITH_MANPAGE=OFF -DWITH_RBD=OFF -DWITH_RADOSGW=OFF -DWITH_KRBD=OFF -DWITH_MGR_DASHBOARD_FRONTEND=OFF $ cd build $ ninja -j 7 Thanks, - Rishabh
On Fri, Feb 10, 2023 at 9:14 AM Rishabh Dave <ridave@redhat.com> wrote:
Hi all,
I am trying to build Ceph binaries from the main branch. Sometimes "ninja -j 7 " (see the bottom for steps I run to initiate the build) gets stuck at the step where the Boost library is downloaded. The step description printed on stdout is "Performing download step (download, verify and extract) for 'Boost'". Running nethogs shows that cmake is indeed downloading but the download speed is less than 50 Kbps. Last night, I also saw this issue while building binaries for the "quincy" branch.
Cancelling and reinitiating the build has no effect on the download speed. Is there a way to choose the faster/fastest mirror to download the Boost library? How can I change the default mirror that cmake uses?
the mirrors are listed here: https://github.com/ceph/ceph/blob/f160cc8/cmake/modules/BuildBoost.cmake#L15...
Another option is to use the boost library installed on my system. For this I can pass "-DWITH_SYSTEM_BOOST=ON" to the "do_cmake.sh" script. My system has version 1.76 installed. Will this version work fine? Has anyone tried this before?
main requires boost 1.79 or later: https://github.com/ceph/ceph/blob/f160cc8/CMakeLists.txt#L654
I don't face this issue all the time. It happens once in a couple months but whenever it does, I am stuck for several hours.
System I am using is Fedora 36. Following are the commands I usually run to initiate building of Ceph binaries -
$ sudo ./install-deps.sh $ ./do_cmake.sh -DWITH_CEPHFS_SHELL=ON -DWITH_BABELTRACE=OFF -DWITH_MANPAGE=OFF -DWITH_RBD=OFF -DWITH_RADOSGW=OFF -DWITH_KRBD=OFF -DWITH_MGR_DASHBOARD_FRONTEND=OFF $ cd build $ ninja -j 7
Thanks, - Rishabh _______________________________________________ Dev mailing list -- dev@ceph.io To unsubscribe send an email to dev-leave@ceph.io
On Fri, 10 Feb 2023 at 19:52, Casey Bodley <cbodley@redhat.com> wrote:
On Fri, Feb 10, 2023 at 9:14 AM Rishabh Dave <ridave@redhat.com> wrote:
Hi all,
I am trying to build Ceph binaries from the main branch. Sometimes "ninja -j 7 " (see the bottom for steps I run to initiate the build) gets stuck at the step where the Boost library is downloaded. The step description printed on stdout is "Performing download step (download, verify and extract) for 'Boost'". Running nethogs shows that cmake is indeed downloading but the download speed is less than 50 Kbps. Last night, I also saw this issue while building binaries for the "quincy" branch.
Cancelling and reinitiating the build has no effect on the download speed. Is there a way to choose the faster/fastest mirror to download the Boost library? How can I change the default mirror that cmake uses?
the mirrors are listed here: https://github.com/ceph/ceph/blob/f160cc8/cmake/modules/BuildBoost.cmake#L15...
Would changing the order of URLs in this file locally would change the URL that cmake uses to download Boost library?
Another option is to use the boost library installed on my system. For this I can pass "-DWITH_SYSTEM_BOOST=ON" to the "do_cmake.sh" script. My system has version 1.76 installed. Will this version work fine? Has anyone tried this before?
main requires boost 1.79 or later: https://github.com/ceph/ceph/blob/f160cc8/CMakeLists.txt#L654
Okay. For that I would need to upgrade to 37 I guess. Thanks for the reply!
On Fri, Feb 10, 2023 at 2:30 PM Rishabh Dave <ridave@redhat.com> wrote:
On Fri, 10 Feb 2023 at 19:52, Casey Bodley <cbodley@redhat.com> wrote:
On Fri, Feb 10, 2023 at 9:14 AM Rishabh Dave <ridave@redhat.com> wrote:
Hi all,
I am trying to build Ceph binaries from the main branch. Sometimes "ninja -j 7 " (see the bottom for steps I run to initiate the build) gets stuck at the step where the Boost library is downloaded. The step description printed on stdout is "Performing download step (download, verify and extract) for 'Boost'". Running nethogs shows that cmake is indeed downloading but the download speed is less than 50 Kbps. Last night, I also saw this issue while building binaries for the "quincy" branch.
Cancelling and reinitiating the build has no effect on the download speed. Is there a way to choose the faster/fastest mirror to download the Boost library? How can I change the default mirror that cmake uses?
the mirrors are listed here: https://github.com/ceph/ceph/blob/f160cc8/cmake/modules/BuildBoost.cmake#L15...
Would changing the order of URLs in this file locally would change the URL that cmake uses to download Boost library?
yep. the download.ceph.com url may have been affected by recent networking issues in the lab, but i'm not sure why the jfrog url was slow. are you still having issues with the download?
Another option is to use the boost library installed on my system. For this I can pass "-DWITH_SYSTEM_BOOST=ON" to the "do_cmake.sh" script. My system has version 1.76 installed. Will this version work fine? Has anyone tried this before?
main requires boost 1.79 or later: https://github.com/ceph/ceph/blob/f160cc8/CMakeLists.txt#L654
Okay. For that I would need to upgrade to 37 I guess.
if you mean fedora 37, i'm afraid that only has boost 1.78
Thanks for the reply!
participants (2)
-
Casey Bodley
-
Rishabh Dave