compile UPP on mac

having trouble compiling on mac. Modules dont get built, some .f/.F file overwritten. Log file says kind_mod gets compiled with cpp... it doesnt make much sense. Any help... any experience that seems similar would be helpful, especially if you have ever encountered and overcome such problems


Hi Scott,

The UPP release does not work on case-insensitive platforms, which includes many MacOS installs. The fix is not difficult: all ".F" (capital F) files should be renamed to ".FTN", and in sorc/ncep_post.fd/makefile_dtc, the line ".F.o:" should be changed to ".FTN.o:". You may also need to remove the file sorc/ncep_post.fd and re-configure/compile.

If you are using an older version of UPP the directory structure and exact file names may be different but the main changes should be the same.

Let me know if you continue to have difficulties!



In reply to by kavulich

Hi Mike (we have met before thru NOAA connections)

Thanks for your help! This is excellent... actually explains a lot, I was wondering how kinds_mod.F wound up getting the cpp treatment... I will give this a shot.

After battling the compile myself, yesterday I took a turn toward using the Docker version which will be great for its portability. If you have any tips for me there, that would be great! I am just figuring out how to use docker so it is taking time to get up to speed.

Thanks again


hey again!

I am trying to use the docker version of upp. When I start docker, I get the error message bash: /root/.bashrc: Permission denied.... Although it seems like I am in the upp docker, it isnt allowing the connectivity between the local and docker directories cited in the docker run command. (docker run --rm -it -v ${UPP_CONTAINER_DIR}/data:/upp/data/ dtcenter/upp /bin/bash). When I am in i type 'groups' and the result is 'comusers' and when I type 'whoami' I get 'comuser'. Is this the problem? Is there a way for me to solve this problem?

Thanks.. Scott

update... I needed the complete path on the upp in the container. I am able to share local data that way. I do still get the /root/bashrc: Permission denied. I think something needs to be fixed but I think that I can work with it.

Hey Again

I changed the .F to .FTN and the makefile_dtc to .FTN.o and i got THIS error:

make: *** No rule to make target `kinds_mod.o', needed by `VRBLS2D_mod.o'.  Stop.

Also, in the instructions you say 'you may also need to remove the file sorc/ncep_post.fd'... but that is the directory with all of the fortran code. Is there something that I need to remove in that directory?

Thanks a lot for your help!



In the first instructions I sent there was an error; the file you may need to remove is "sorc/ncep_post.fd/makefile"