Conversation
|
Doesn't quite work for me
|
|
Opps, forgot to push the |
tdcwilliams
left a comment
There was a problem hiding this comment.
We might need to be careful about libraries and things in /opt overriding things in /nextsim when trying to develop the code.
Is it necessary to do the ldconfig thing?
Perhaps using LD_LIBRARY_PATH instead? eg
LD_LIBRARY_PATH=/nextsim/lib:$LD_LIBRARY_PATH
- in a similar way to what you do with
PATHand/nextsim/model/bin
Maybe the make docker target could also then be removed?
Perhaps. I'll try to implement and see how it impacts.
No, |
|
@tdcwilliams , I've updated Dockerfile. Now it compiles nextsim and keeps both the library and the exec inside /nextsim. LD_LIBRARY_PATH and PATH point to /nextsim. I've also simplified makefiles to always use I've tested and the model run both from inside the image and from compiled inplace. Can you have another look? |
|
And the latest base images are on docker hub. With the production one named |
dependency - wasn't working possibly due to interference with mapx,bamg in both /opt and /nextsim/lib
tdcwilliams
left a comment
There was a problem hiding this comment.
Hi @akorosov - I was trying out removing all the mapx and bamg stuff since they had been problematic in the past. I built the nextsim-tools image using the nextsim image made here and could import bamg and mapx ok without these steps.
I also gave make core its proper dependency of contrib, allowing the make docker and make model targets to be removed.
You could add back make docker (with a better name?) with explicit steps to avoid recompiling contrib but in practice one usually does one full compilation and then cd model && make -j8 to avoid recompiling everything else, so I am of the opinion it is unnecessary repetition. It originally arose because @einola couldn't compile with docker due to problems with contrib (possibly some conflicts with /opt) even though it compiled fine on ubuntu docker. It still compiles fine on ubuntu, but maybe @einola would like to double check it compiles ok for him this time round.
So it's OK by me now, but I recommend others double-check and do the approval. Anyway, great job on the overhaul!
| WORKDIR $NEXTSIMDIR | ||
| RUN make -j8 | ||
|
|
||
| # copy mapx |
There was a problem hiding this comment.
clarifying comment
| # copy mapx | |
| # copy mapx to be available for nextsim-tools |
| # copy bamg source, compile and copy libs and include into | ||
| # /opt/local/bamg/lib and /opt/local/bamg/include | ||
| COPY contrib/bamg $NEXTSIMDIR/contrib/bamg | ||
| # copy bamg |
There was a problem hiding this comment.
clarifying comment
| # copy bamg | |
| # copy bamg to be available for nextsim-tools |
|
I don't think I like the latest "compile inside image only" version :| |
|
@einola , it is now possible to compile the model in-place: where I've checked on both ubuntu and mack host machines. Can you check on yours. Don't forget to clean your working directory with mrproper before compiling in-place. |
|
Works fine on my machine. |
Closes #479