While trying to build Slicer in Ubuntu 20.04 following the instructions mentioned, (13 hours later) I got the following error message (make: Target ‘default_target’ not remade because of errors. Please find attached the error.
Note: I am using Qt 5.12.8 not 5.15.1.
Can anyone kindly assist me solving this issue?
Did you make any code changes or changes to the cmake options or did you build with the defaults? I have built with 20.04 from scratch many times, most recently about a month ago with no problems.
I have just built Slicer (master branch) successfully on a fresh Ubuntu 20.04 (VirtualBox). The only issue I experienced was the one mentioned here, which can be solved installing python3-dev; but this does not look to be the problem here.
Sometimes I have experienced unexplainable linking errors in two situations: (1) hardware is very (very) old; and (2) if I try to continue building Slicer after a previous abnormal and abrupt interruption of the building process (e.g., losing power, hard resetting the machine, etc). In case (2) you can clean with make clean or even delete your build directory and re-build again from scratch.
Dear Rafael Palomar,
Thank you very much for responding. Yes, you’re right. Previously there was an interruption while building it and later it threw the mentioned error.
Now, I have rebuilt it from scratch and everything is fine.
(Although it took a long time to build even after using ‘make -j5 -k’ (about 26 hours). I once wished If I could pause the process for a while. :-))
For reference, we recently got a new desktop computer with an above average but not extreme configuration (Intel Core i9-10900X CPU, 64GB RAM, NVMe SSD; running Ubuntu 20.04) and the entire Slicer build is completed in 30 minutes (completely from scratch, including building VTK and all its dependencies, using make -j20).
Windows builds take longer. On a 3-year old desktop the build takes about 3-4 hours, on a laptop it takes about a half day to a day.
@ZakiaKhatun, as @lassoan points out 3D Slicer does not take that long to build. Your elevated build times indicate that you may be getting out of RAM memory (how much do you have?). The more jobs you spawn to build Slicer (e.g, -j5) the more RAM you need to keep the build process; after using all your RAM your OS will try to use swap memory which is allocated in your SDD/HDD. In that case, just the memory transfers will contribute to such long building times. This behaviour is easy to observe because it makes your computer looking completely unresponsive.
If that is your case, lower your -j parameter to 1 or 2, which should bring your building times down to the range @lassoan points out.
It is a wonder that Slicer can be built and runs on this computer at all. We only aim for compatibility with hardware that was released in the past 5 years.
You can find the status of tests on official builds on the dashboard. If you don’t have any additional test failures than the tests listed there then you don’t need to do anything about it. Those tests did not reveal any critical errors and we are already working on making them pass again.