Errors running 'kim-api-collections-management install user OpenKIM'

Dear all,

I just downloaded and installed the KIM API version 1.9.0. That looks like it worked. Then I tried to download and install all models by running

kim-api-collections-management install user OpenKIM

Unfortunately, this compiled the first model, but then it fails to compile the first model driver, and continues to make errors when trying to install models depending on this first driver. The output is here: https://pastebin.com/C2BhPiYQ

The failing line is:
/home/modules/software/binutils/2.26-GCCcore-5.4.0/bin/ld.gold: error: export-list.txt:4:12: syntax error, unexpected STRING, expecting ';'
/home/modules/software/binutils/2.26-GCCcore-5.4.0/bin/ld.gold: fatal error: unable to parse version script file export-list.txt
collect2: error: ld returned 1 exit status

It looks like kim-api-collections-management finds the right version of the API:

Knowledgebase of Interatomic Models (KIM) --- Model Collections Listing

Hi Jacob,

Thanks for the bug report. This is a typo (missing semicolon) in Makefile.ModelDriver

I'll release the fix in v1.9.1.

In the mean time, the necessary diff looks something like this:

--- a/build_system/Makefile.ModelDriver
+++ b/build_system/Makefile.ModelDriver
@@ -98,7 +98,7 @@ ifeq (darwin, \(KIM\_SYSTEMLINKER\)\)   else \# everything else \(linux and freebsd\)          (QUELL)printf "{\n" > @          (QUELL)printf " global:\n" >> @ \- (QUELL)printf " kim_item_type\n" >> @ \+ (QUELL)printf " kim_item_type;\n" >> @          (QUELL)printf " \(MODEL\_DRIVER\_NAME\)\_init\_pointer;\\n" >> @
         \(QUELL\)printf " (MODEL_DRIVER_NAME)_compiled_with_version;\n" >> @          (QUELL)printf "\n" >> $@

Ryan

Dear Ryan,

Thanks for the fix, it works. Now I get a new error:

/home/niflheim/schiotz/easybuild/sandybridge/software/OpenKIM-API/1.9.0-foss-2016b/bin/kim-api-collections-management: line 218: test: too many arguments

You can see the context here: https://pastebin.com/GF3LVLjp

By the way, it looks like the best way forward is to create an EasyBuild that just installs the API, and either let the users install the models with your new interface, or perhaps make another easybuild that installs all the models, if you make monthly snapshots available.

Best regards,

Jakob

Hi Jacob,

Great. Thanks for the new error report. First. Sorry for the bugs. Second, thanks for working with this and reporting back.

This new error is a sh portability issue (insufficient quoting ....). I've fixed this (I think) and the other items you have identified so far. These are currently in the "devel" branch of the kim-api repo on github.

I'm planning to continue to collect and fix such error reports for a few more days or a week (as you, the KIM team work with v1.9.0, and maybe even others!) and then release a v1.9.1 with all the fixes.

Thanks again and keep em coming!

Ryan

Hi Ryan,

Great! I will clone the github, and try again.

Thanks for fixing it this fast.

Jakob