-
Notifications
You must be signed in to change notification settings - Fork 55
Update for Ubuntu 24.04 #336
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
I have built the image, and since that prints a bunch of messages from various force-tools, it's not obviously broken, but I would appreciate help with testing this. The CI tests will obviously fail on this in its current state since the Ubuntu 24.04 base image isn't present yet. |
Thanks @pjonsson, as discussed in the base repository, I appreciate the addition. I will merge this PR at some point, but will test first. This will take some time, but will happen eventually Thanks, |
@davidfrantz would you like me to rebase on latest develop and add a commit that changes the FROM line to use the ubuntu24 tag instead of latest? |
Switch the Dockerfile to using the ubuntu user/group which is required for building after davidfrantz/base_image#4 has been merged. Also remove the WORKDIR since that is the last thing set by the Dockerfile for davidfrantz/base. Include paths for some dependencies have changed, so update the Makefile with those paths as well.
bd4e4bb
to
8f3a51b
Compare
8f3a51b
to
0aed0fe
Compare
I rebased on top of latest develop and added a commit that sets the FROM to use the Ubuntu 24.04 version of the base image. I also added a workaround that sets the home directory to world-writable so the CI tests could pass, but I wouldn't recommend having a world-writable home directory for security reasons. If you want to avoid that, there's a way to re-uid/re-gid the user inside the container upon startup (example here: contiki-ng/contiki-ng#2309, but you also want contiki-ng/contiki-ng#2822 on top of that to handle signal delivery inside the container properly). It's not related to this PR, but when I looked at the CI failure I noticed that Force is compiled with I also saw a bunch of compiler warnings. I have not looked at the code, but my guess is that the differing sign warnings are unlikely to be a problem in practice, but the stringop-warnings looked like they should be addressed. |
Switch to Ubuntu 24.04, bump some versions of dependencies, and use some of the packages from Ubuntu instead of building OpenCV manually. There is also an ubuntu user/group by default in the base image, so use that instead of creating a separate docker user like before. Refs #3
Hi,
the do you have any hints how to resolve it? |
That is a header file, so some |
ok, so I added the With this change, the force main image now crushes with:
I am done for the day. If someone would like to continue, great, if not, I will pick it up tomorrow or on Monday. Cheers, |
That is what the first line in the Makefile diff in this PR fixes.
That is what the second and third line in the Makefile diff in this PR fixes. I'm guessing something went wrong when you cherry-picked the commits from this PR into your local repository. |
Hi, Do you know by chance the cause of these differences? It is a rather important aspect of consistency in the time series when the existing data collection derived with FORCE based on the old image is/will be extended and maintained with the FORCE based on this new image. Both images were built on FORCE version 3.8.01. The runs were executed using this prm file, and the input scenes were Cheers, |
I'm afraid that is a question for @davidfrantz, I have never looked at the C code of FORCE. A lot happened between GDAL 3.0.4 and 3.8.4 though, and quite a bit happened with GCC as well (9.3.0 vs 13.2.0). |
huh, interesting. It seems that there is also a directional component. It is probably rooted in the warping/resampling, which indeed uses GDAL functionality... Nevertheless, I would not expect full reproducibility when upgrading to a new GDAL version. For Ubuntu or GCC, it would be good if this would be the case. But changes in the outcome are expected for a thematic library like GDAL. As long as nothing breaks, this is OK. I will try to look at this nonetheless |
The geoloc transformer was made exact in GDAL 3.5 (OSGeo/gdal#5520) which fixed an error that was frequently >1 pixel, does that come into the picture here? Going from 3.4.3 gdalwarp to 3.9.0 moved my pixels a couple of blocks. |
Switch the Dockerfile to using
the ubuntu user/group which is
required for building after
davidfrantz/base_image#4
has been merged.
Also remove the WORKDIR since that
is the last thing set by the Dockerfile
for davidfrantz/base.
Include paths for some dependencies
have changed, so update the Makefile
with those paths as well.