CosmoMC update: October 2009

Use of Cobaya. camb, CLASS, cosmomc, compilers, etc.
Post Reply
Antony Lewis
Posts: 1944
Joined: September 23 2004
Affiliation: University of Sussex
Contact:

CosmoMC update: October 2009

Post by Antony Lewis » October 23 2009

There was a significant new release of CosmoMC today. See

http://cosmologist.info/cosmomc/

If you are on the mailing list you should have received an email notification and download link, but there are a lot of outdated emails on the list. If you did not get it please download from

http://cosmologist.info/cosmomc/submit.html

submitting your latest email address.

gongbo zhao
Posts: 73
Joined: January 04 2005
Affiliation: NAOC
Contact:

CosmoMC update: October 2009

Post by gongbo zhao » October 24 2009

Has anybody succeeded in compiling this new version with LRGDR7? I am sure that I installed GSL correctly and linked to it properly, but it keeps showing the err msg like this,

'./cosmomc: symbol lookup error: ./cosmomc: undefined symbol: gsl_bspline_alloc'

Any idea? Thanks in advance.

Cheers,
Gongbo

gongbo zhao
Posts: 73
Joined: January 04 2005
Affiliation: NAOC
Contact:

CosmoMC update: October 2009

Post by gongbo zhao » October 24 2009

I should have been more articulate.
I was linking to gsl version 1.10, and cosmomc complied smoothly. When I run it with LRDDR7, I got the above error. Then I run

'ldd cosmomc', and here is the list,

libmkl.so => /global/software/intel-9/mkl/lib/32/libmkl.so (0x006e2000)
libguide.so => /global/software/intel-9/fc/lib/libguide.so (0x002e6000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0x00a7b000)
libblas.so.3 => /usr/lib/libblas.so.3 (0x00f81000)
libsvml.so => /global/software/intel-9/fc/lib/libsvml.so (0x00d71000)
libgsl.so.0 => /usr/lib/libgsl.so.0 (0x00111000)
libgslcblas.so.0 => /usr/lib/libgslcblas.so.0 (0x003e8000)
libm.so.6 => /lib/tls/libm.so.6 (0x00275000)
libc.so.6 => /lib/tls/libc.so.6 (0x00417000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00d09000)
libdl.so.2 => /lib/libdl.so.2 (0x00757000)
/lib/ld-linux.so.2 (0x00787000)
libg2c.so.0 => /usr/lib/libg2c.so.0 (0x00abe000)

As you can see, gsl was linked to the library files in the default location: '/usr/lib', which is not expected (it's supposed to link to /global/software/gsl-1.10/gcc/include). I run a diff of the binary file libgsl.so.0 in the above two directories, and it shows they are different. So I guess this is the reason -- cosmomc was linked to an old gsl lib in the system.

But I don't understand why cosmomc ignores my setting in the Makefile and links to the old gsl in the default location. Is there an easy way to fix it?

BTW, I am struggling on the glacier node of WestGrid. Anybody in the same boat?

Many thanks,
Gongbo

gongbo zhao
Posts: 73
Joined: January 04 2005
Affiliation: NAOC
Contact:

CosmoMC update: October 2009

Post by gongbo zhao » October 28 2009

Thanks to Doug Phillips, the problem has been solved.

On WestGrid (glacier node), do the following after compilation,

export LD_LIBRARY_PATH=/global/software/gsl-1.10/gcc/lib:$LD_LIBRARY_PATH

That's it!

Cheers,
Gongbo

Post Reply