Re: [wsjtgroup] WSJT7 and Ubuntu 8.10 or 9.04
Please look this and let me know if it helps. It was writen when Ubuntu
8.10 was still not born but wsjt still compiles well on Debian Testing
although here python was upgraded too.
73, Harry LZ1BB
- --- In email@example.com, "David Munn" <djmunn@...> wrote:
>I just found this in the changelog to the latest version of Numpy
> Hi All...i have tried to compile WSJT7 on both Ubuntu 8.10 and 9.04
> it will compile ok under Ubuntu 8.04....
> I believe the reason is that with 8.10 and 9.04 they use Python 2.6 and Python-Numpy 1:1.2.1 ....i believe that this version of Numpy is the cause of the problem..
> in Ubuntu 8.04 it used Python 2.5 and Python-Numpy 1.0.4 and compile 100%
> i have tried to downgrade to Python 2.5 and Python-Numpy 1.0.4 but the
> distros will not let me without removing much of the distro which would be bad...
> does anyone know how we can adujust things so that we get a compile on the later Ubuntu versions
> 73 David VK4BDJ
Fortran ABI mismatch
The two most popular open source fortran compilers are g77 and gfortran.
Unfortunately, they are not ABI compatible, which means that concretely you
should avoid mixing libraries built with one with another. In particular, if
your blas/lapack/atlas is built with g77, you *must* use g77 when building
numpy and scipy; on the contrary, if your atlas is built with gfortran, you
*must* build numpy/scipy with gfortran.
Choosing the fortran compiler
To build with g77:
python setup.py build --fcompiler=gnu
To build with gfortran:
python setup.py build --fcompiler=gnu95
How to check the ABI of blas/lapack/atlas
One relatively simple and reliable way to check for the compiler used to build
a library is to use ldd on the library. If libg2c.so is a dependency, this
means that g77 has been used. If libgfortran.so is a a dependency, gfortran has
been used. If both are dependencies, this means both have been used, which is
almost always a very bad idea.
My understanding of the above is that the entire package would have to be recompiled under G95 rather than a mix of gfortran and G95 as is the case in Ubuntu 9.04.
I will try this soon.