Over the months there have been a variety of problems in the general area of getting the infomap-nlp software working properly with the gnu dbm libraries. I think several users have encountered this and sometimes found workarounds or had to install extra things. Mosts recently, I had just the same problem getting the infomap-nlp software to compile on ubuntu. Scott helped me to fix the problem, and I thought I should post a summary of what it was.
I had installed the libgdbm3 package on my new OS. Generally there will always be some gdbm package you will want to have installed. However, the infomap "./configure" script couldn't find any of the library functions and so failed. Scott suggested the following:
> Hi Dominic,
>
> Okay, regarding infomap-nlp on Ubuntu. The script reports two
> problems, failing to find the DBM header files, and failing to find the
> appropriate library functions. Let's take these one at a time, in that
> order, and with luck maybe even solving the first problem will lead the
> second to take care of itself, you never know.
>
> For the header files, check your /usr/include directory. Search
> it for files whose names contain ndbm or gdbm. E.g.
>
> $ find -name '*ndbm*'
> $ find -name '*gdbm*'
>
> I have the files /usr/include/gdbm.h and /usr/include/gdbm-ndbm.h. I also
> have the symbolic link, ndbm.h, which points to gdbm-ndbm.h. If you have
> the first two files, make the ndbm.h->gdbm-ndbm.h symbolic link and try
> configuring again. If not, tell me what you do have and we'll go from
> there.
It turned out that I didn't have any of these dbm files at all in /usr/include. To begin with, I needed to install a libgdbm-dev package, which contains developer tools and headers that were necessary for infomap to call the gdbm libraries. (Other compatability issues we've seen in the past are affected by libgdbm_compat - if you encounter a problem this is another name to look for ...)
The libgdbm-dev package installed several gdbm related headers to /usr/include. I did need to create the symbolic link Scott refers to above (ln -s gdbm-ndbm.h ndbm.h). Once I had done this final step, configure, make, make install worked just fine and I could start building infomap models on my new system.
Thanks very much to Scott for helping out once again, and I hope this message is useful to others who may encounter similar problems.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Over the months there have been a variety of problems in the general area of getting the infomap-nlp software working properly with the gnu dbm libraries. I think several users have encountered this and sometimes found workarounds or had to install extra things. Mosts recently, I had just the same problem getting the infomap-nlp software to compile on ubuntu. Scott helped me to fix the problem, and I thought I should post a summary of what it was.
I had installed the libgdbm3 package on my new OS. Generally there will always be some gdbm package you will want to have installed. However, the infomap "./configure" script couldn't find any of the library functions and so failed. Scott suggested the following:
> Hi Dominic,
>
> Okay, regarding infomap-nlp on Ubuntu. The script reports two
> problems, failing to find the DBM header files, and failing to find the
> appropriate library functions. Let's take these one at a time, in that
> order, and with luck maybe even solving the first problem will lead the
> second to take care of itself, you never know.
>
> For the header files, check your /usr/include directory. Search
> it for files whose names contain ndbm or gdbm. E.g.
>
> $ find -name '*ndbm*'
> $ find -name '*gdbm*'
>
> I have the files /usr/include/gdbm.h and /usr/include/gdbm-ndbm.h. I also
> have the symbolic link, ndbm.h, which points to gdbm-ndbm.h. If you have
> the first two files, make the ndbm.h->gdbm-ndbm.h symbolic link and try
> configuring again. If not, tell me what you do have and we'll go from
> there.
It turned out that I didn't have any of these dbm files at all in /usr/include. To begin with, I needed to install a libgdbm-dev package, which contains developer tools and headers that were necessary for infomap to call the gdbm libraries. (Other compatability issues we've seen in the past are affected by libgdbm_compat - if you encounter a problem this is another name to look for ...)
The libgdbm-dev package installed several gdbm related headers to /usr/include. I did need to create the symbolic link Scott refers to above (ln -s gdbm-ndbm.h ndbm.h). Once I had done this final step, configure, make, make install worked just fine and I could start building infomap models on my new system.
Thanks very much to Scott for helping out once again, and I hope this message is useful to others who may encounter similar problems.