<div dir="ltr">Dear QE developers!<div>The current trunk version of QE is very hard to compile on non-Linux environment.</div><div><br></div><div>1. On OSX 'fox' and 'FoX' are the same directory. This breaks the configure script and the FoX library can't be configured and installed. I had to patch the extlibs_makefile like this<br><div>diff --git a/install/extlibs_makefile b/install/extlibs_makefile</div><div>index 3a834c4..032b9a9 100644</div><div>--- a/install/extlibs_makefile</div><div>+++ b/install/extlibs_makefile</div><div>@@ -78,9 +78,11 @@ libiotk:</div><div><br></div><div> libfox:</div><div>        if test ! -d ../FoX; then \</div><div>-       (gzip -dc ../archive/fox.tgz | (cd ../; tar -xvf -)); \</div><div>-       cd ../fox/; export FC=$(F90); ./configure --prefix=$(TOPDIR)/FoX ;\</div><div>-       cd ../fox; $(MAKE) install; rm -fr ../fox;fi</div><div>+       mkdir ../FoX; \</div><div>+       cd ../Fox; \</div><div>+       tar zxvf ../archive/fox.tgz;\</div><div>+       cd ./fox; export FC=$(F90); ./configure --prefix=$(TOPDIR)/FoX ;\</div><div>+       cd ../fox; $(MAKE) install; fi</div></div><div><br></div><div>2. There are missing symbols in FFT (with the default -D__FFTW flag). The following patch was applied</div><div><br></div><div><div>diff --git a/FFTXlib/Makefile b/FFTXlib/Makefile</div><div>index b0325f3..0d9f717 100644</div><div>--- a/FFTXlib/Makefile</div><div>+++ b/FFTXlib/Makefile</div><div>@@ -27,7 +27,8 @@ fft_error.o  \</div><div> fft_stick.o  \</div><div> fft_types.o \</div><div> tg_gather.o \</div><div>-fft_param.o</div><div>+fft_param.o \</div><div>+fft_stick.o</div><div><br></div><div><br></div><div> all : libqefft.a</div><div>diff --git a/FFTXlib/fft_stick.c b/FFTXlib/fft_stick.c</div><div>index fd69d58..9e890e7 100644</div><div>--- a/FFTXlib/fft_stick.c</div><div>+++ b/FFTXlib/fft_stick.c</div><div>@@ -136,7 +136,7 @@ int fftw_inplace_drv_3d</div><div>    return 0;</div><div> }</div><div><br></div><div>-int ft_x_stick_single</div><div>+int fft_x_stick_single_</div><div> (fftw_plan *p, FFTW_COMPLEX *a, int *nx, int *ny, int *nz, int *ldx, int *ldy )</div><div> {</div><div><br></div><div>@@ -158,7 +158,7 @@ int ft_x_stick_single</div><div> }</div><div><br></div><div><br></div><div>-int fft_z_stick_single (fftw_plan *p, FFTW_COMPLEX *a, int *ldz)</div><div>+int fft_z_stick_single_ (fftw_plan *p, FFTW_COMPLEX *a, int *ldz)</div></div><div><br></div><div>3. Duplicate symbols in the iterative solver:</div><div><br></div><div><div>duplicate symbol _cdiaghg_ in:</div><div>    ../../KS_Solvers/Davidson/libdavid.a(cdiaghg.o)</div><div>    ../../KS_Solvers/CG/libcg.a(cdiaghg.o)</div><div>duplicate symbol _pcdiaghg_ in:</div><div>    ../../KS_Solvers/Davidson/libdavid.a(cdiaghg.o)</div><div>    ../../KS_Solvers/CG/libcg.a(cdiaghg.o)</div></div><div><br></div><div>I don't know how to fix this and why it's working on Linux.</div><div><br></div><div>With best regards,</div><div>Anton.</div></div>