Re: [wsjt-devel] wsjt-x build problem on OS X

2015-08-27 Thread Bill Somerville

On 09/08/2015 17:00, Eric Thornton wrote:

Hello all,

Hi Eric,

firstly, sorry for the delayed response as I have been off the grid for 
a few weeks enjoying some holiday time.


I've run into the same (or similar issue) compiling on OSX. I need to 
compile my own version since I'm using pulse audio as my sound server. 
I've already compiled QT from macports with pulse audio support.


If I use CC=gcc and CXX=g++, ham lib won't compile. I have been unable 
to work around the -no-cpp-precomp error. Anyway, I'm pretty sure my 
macports libs and QT are build with clang (the default) anyway.


If I use the default clang compilers, ham lib compiles fine (after 
pointing it to glibtoolize), but then wsjtx won't compile because of 
the openmp errors. I am using FC=gfortran-mp-4.9 from macports.
There should be no fatal errors with those tools if you use the CMake 
build script. What make you think the build fails?


I don't have a good understanding of openmp. Is this error because 
clang and gfortran are not compatible? I tried downloading a native 
gfortran compiler but got the same result.
Using CLang/Clang++ combined with gfortran from MacPorts is a valid 
combination and is the only one supported. The reason for this is that 
Qt only supports compilation with CLang++ on OS X. Clang/Clang++ have no 
OpenMP support but since our code only uses OpenMP in Fortran modules we 
are able to get away with the mixed compiler support. The CMake build 
script does what is necessary to make this apparently incompatible tool 
set work. It does report the OpenMP availability issues but they can be 
safely ignored for WSJT-X builds.


Thanks,

Eric
KM4DSJ

73
Bill
G4WJS.



-- Building for for: Darwin-x86_64
-- **
-- Try OpenMP C flag = [ ]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [/openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-Qopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-xopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [+Oopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-qsmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-mp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [ ]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [/openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-Qopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-xopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [+Oopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-qsmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-mp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Could NOT find OpenMP (missing:  OpenMP_C_FLAGS OpenMP_CXX_FLAGS)

On Mon, Jun 29, 2015 at 6:12 PM, Bill Somerville 
g4...@classdesign.com mailto:g4...@classdesign.com wrote:


On 29/06/2015 22:58, Steven Franke wrote:
 Bill,
Hi Steve,
 On Jun 29, 2015, at 4:43 PM, Bill Somerville
g4...@classdesign.com mailto:g4...@classdesign.com wrote:

 On 29/06/2015 22:30, Steven Franke wrote:
 Bill,
 Hi Steve,
 On Jun 29, 2015, at 4:26 PM, Bill Somerville
g4...@classdesign.com mailto:g4...@classdesign.com wrote:

 On 29/06/2015 22:17, Steven Franke wrote:
 Bill,

 On Jun 29, 2015, at 3:57 PM, Bill Somerville
g4...@classdesign.com mailto:g4...@classdesign.com wrote:

 On 29/06/2015 21:34, Steven Franke wrote:
 Bill,
 On Jun 29, 2015, at 9:00 AM, Bill Somerville
g4...@classdesign.com mailto:g4...@classdesign.com wrote:

 On 28/06/2015 22:08, Steven Franke wrote:
 Thanks Bill,
 Hi Steve,
 For what it’s worth, 

Re: [wsjt-devel] wsjt-x build problem on OS X

2015-08-27 Thread Eric Thornton
Bill,

Thanks for your reply.

This is strange because I finally was able to get wsjtx to compile, but
gave up on clang and used gcc for the whole process. After editing the
hamlib autogen and configure scripts to get rid of an old no-precomp flag,
things went smoothly. After the fact, while looking into why I still don't
have any pulseaudio devices (posted a new message to the list on this last
night) I found the notes on the libstdc++ and libc++ incompatibility. I
think I should have received a linking error complaining about missing
objects, but the build finished.

The build failures I received with clang+gfortran were listed in the
wsjtx-stamp/configure-error.log and had to do with missing openmp libs. I
tried installing several different variants of gcc49 in macports, but got
the same error every time.

As a side note to my missing pulseaudio devices, I found that qt5-mac from
macports is not building the pulse plugin, despite having selected the
pulseaudio variant.  I don't understand why, at this time.

Eric
KM4DSJ
On Aug 27, 2015 9:43 AM, Bill Somerville g4...@classdesign.com wrote:

 On 09/08/2015 17:00, Eric Thornton wrote:

 Hello all,

 Hi Eric,

 firstly, sorry for the delayed response as I have been off the grid for a
 few weeks enjoying some holiday time.


 I've run into the same (or similar issue) compiling on OSX. I need to
 compile my own version since I'm using pulse audio as my sound server. I've
 already compiled QT from macports with pulse audio support.

 If I use CC=gcc and CXX=g++, ham lib won't compile. I have been unable to
 work around the -no-cpp-precomp error. Anyway, I'm pretty sure my
 macports libs and QT are build with clang (the default) anyway.

 If I use the default clang compilers, ham lib compiles fine (after
 pointing it to glibtoolize), but then wsjtx won't compile because of the
 openmp errors. I am using FC=gfortran-mp-4.9 from macports.

 There should be no fatal errors with those tools if you use the CMake
 build script. What make you think the build fails?


 I don't have a good understanding of openmp. Is this error because clang
 and gfortran are not compatible? I tried downloading a native gfortran
 compiler but got the same result.

 Using CLang/Clang++ combined with gfortran from MacPorts is a valid
 combination and is the only one supported. The reason for this is that Qt
 only supports compilation with CLang++ on OS X. Clang/Clang++ have no
 OpenMP support but since our code only uses OpenMP in Fortran modules we
 are able to get away with the mixed compiler support. The CMake build
 script does what is necessary to make this apparently incompatible tool set
 work. It does report the OpenMP availability issues but they can be safely
 ignored for WSJT-X builds.


 Thanks,

 Eric
 KM4DSJ

 73
 Bill
 G4WJS.



 -- Building for for: Darwin-x86_64
 -- **
 -- Try OpenMP C flag = [ ]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP C flag = [-fopenmp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP C flag = [/openmp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP C flag = [-Qopenmp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP C flag = [-openmp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP C flag = [-xopenmp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP C flag = [+Oopenmp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP C flag = [-qsmp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP C flag = [-mp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP CXX flag = [ ]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP CXX flag = [-fopenmp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP CXX flag = [/openmp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP CXX flag = [-Qopenmp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP CXX flag = [-openmp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP CXX flag = [-xopenmp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP CXX flag = [+Oopenmp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- Performing Test OpenMP_FLAG_DETECTED - Failed
 -- Try OpenMP CXX flag = [-qsmp]
 -- Performing Test OpenMP_FLAG_DETECTED
 -- 

Re: [wsjt-devel] wsjt-x build problem on OS X

2015-08-27 Thread Bill Somerville

On 27/08/2015 19:02, Eric Thornton wrote:


Bill,


Hi Eric,


Thanks for your reply.

This is strange because I finally was able to get wsjtx to compile, 
but gave up on clang and used gcc for the whole process. After editing 
the hamlib autogen and configure scripts to get rid of an old 
no-precomp flag, things went smoothly. After the fact, while looking 
into why I still don't have any pulseaudio devices (posted a new 
message to the list on this last night) I found the notes on the 
libstdc++ and libc++ incompatibility. I think I should have received a 
linking error complaining about missing objects, but the build finished.


AFAIK g++ builds of Qt5 are not supported and can only be done by doing 
some hacking of the mkspecs provided by the Qt team. Because of this I 
chose to use Clang++ from the Apple dev tools and gfortran from MacPorts 
with some special treatment in the CMake script to allow for the lack of 
OpenMP support in CLang++ and to ensure that the correct support 
libraries are linked. This has worked well so far and allows us to 
distribute a single DMG installer that works on 10.7 through 10.10.


The build failures I received with clang+gfortran were listed in the 
wsjtx-stamp/configure-error.log and had to do with missing openmp 
libs. I tried installing several different variants of gcc49 in 
macports, but got the same error every time.


Those errors should be non-fatal configuration errors and subsequent 
builds should work. Are you basing your WSJT-X build on the instructions in:


https://sourceforge.net/p/wsjt/wsjt/HEAD/tree/branches/wsjtx/INSTALL

As a side note to my missing pulseaudio devices, I found that qt5-mac 
from macports is not building the pulse plugin, despite having 
selected the pulseaudio variant.  I don't understand why, at this time.


Problems like that are usually due to missing dependencies at configure 
time. You probably need to check the configure log from Qt to see if the 
pulseaudio-dev package was detected at configure time.


Eric
KM4DSJ


73
Bill
G4WJS.

On Aug 27, 2015 9:43 AM, Bill Somerville g4...@classdesign.com 
mailto:g4...@classdesign.com wrote:


On 09/08/2015 17:00, Eric Thornton wrote:

Hello all,

Hi Eric,

firstly, sorry for the delayed response as I have been off the
grid for a few weeks enjoying some holiday time.


I've run into the same (or similar issue) compiling on OSX. I
need to compile my own version since I'm using pulse audio as my
sound server. I've already compiled QT from macports with pulse
audio support.

If I use CC=gcc and CXX=g++, ham lib won't compile. I have been
unable to work around the -no-cpp-precomp error. Anyway, I'm
pretty sure my macports libs and QT are build with clang (the
default) anyway.

If I use the default clang compilers, ham lib compiles fine
(after pointing it to glibtoolize), but then wsjtx won't compile
because of the openmp errors. I am using FC=gfortran-mp-4.9 from
macports.

There should be no fatal errors with those tools if you use the
CMake build script. What make you think the build fails?


I don't have a good understanding of openmp. Is this error
because clang and gfortran are not compatible? I tried
downloading a native gfortran compiler but got the same result.

Using CLang/Clang++ combined with gfortran from MacPorts is a
valid combination and is the only one supported. The reason for
this is that Qt only supports compilation with CLang++ on OS X.
Clang/Clang++ have no OpenMP support but since our code only uses
OpenMP in Fortran modules we are able to get away with the mixed
compiler support. The CMake build script does what is necessary to
make this apparently incompatible tool set work. It does report
the OpenMP availability issues but they can be safely ignored for
WSJT-X builds.


Thanks,

Eric
KM4DSJ

73
Bill
G4WJS.



-- Building for for: Darwin-x86_64
-- **
-- Try OpenMP C flag = [ ]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [/openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-Qopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-xopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [+Oopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - 

Re: [wsjt-devel] wsjt-x build problem on OS X

2015-08-09 Thread Eric Thornton
Hello all,

I've run into the same (or similar issue) compiling on OSX. I need to
compile my own version since I'm using pulse audio as my sound server. I've
already compiled QT from macports with pulse audio support.

If I use CC=gcc and CXX=g++, ham lib won't compile. I have been unable to
work around the -no-cpp-precomp error. Anyway, I'm pretty sure my
macports libs and QT are build with clang (the default) anyway.

If I use the default clang compilers, ham lib compiles fine (after pointing
it to glibtoolize), but then wsjtx won't compile because of the openmp
errors. I am using FC=gfortran-mp-4.9 from macports.

I don't have a good understanding of openmp. Is this error because clang
and gfortran are not compatible? I tried downloading a native gfortran
compiler but got the same result.

Thanks,

Eric
KM4DSJ


-- Building for for: Darwin-x86_64
-- **
-- Try OpenMP C flag = [ ]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [/openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-Qopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-xopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [+Oopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-qsmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-mp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [ ]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [/openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-Qopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-xopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [+Oopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-qsmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-mp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Could NOT find OpenMP (missing:  OpenMP_C_FLAGS OpenMP_CXX_FLAGS)

On Mon, Jun 29, 2015 at 6:12 PM, Bill Somerville g4...@classdesign.com
wrote:

 On 29/06/2015 22:58, Steven Franke wrote:
  Bill,
 Hi Steve,
  On Jun 29, 2015, at 4:43 PM, Bill Somerville g4...@classdesign.com
 wrote:
 
  On 29/06/2015 22:30, Steven Franke wrote:
  Bill,
  Hi Steve,
  On Jun 29, 2015, at 4:26 PM, Bill Somerville g4...@classdesign.com
 wrote:
 
  On 29/06/2015 22:17, Steven Franke wrote:
  Bill,
 
  On Jun 29, 2015, at 3:57 PM, Bill Somerville g4...@classdesign.com
 wrote:
 
  On 29/06/2015 21:34, Steven Franke wrote:
  Bill,
  On Jun 29, 2015, at 9:00 AM, Bill Somerville 
 g4...@classdesign.com wrote:
 
  On 28/06/2015 22:08, Steven Franke wrote:
  Thanks Bill,
  Hi Steve,
  For what it’s worth, here a link to the VERBOSE build capture:
 
 https://dl.dropboxusercontent.com/u/33211132/k9an_build_capture.txt
 
  Here’s the CMakeCache.txt:
  https://dl.dropboxusercontent.com/u/33211132/CMakeCache.txt
  OK, the problem wasn't quite what I thought. It is an include
 directive
  ordering issue but it stems from the use of FFTW3 from MacPorts,
 this in
  itself is not an issue but it has the side effect of picking up
 the Qt4
  headers as well. Unfortunately I can't find an easy way of
 ensuring the
  -I/opt/local/include is after the includes for Qt5. That would
 solve the
  issue but the way that the Qt includes are detected by CMake
 doesn't
  seem to have a way to change the ordering. I have posted a
 question to
  the CMake ML but for now you should be able to build by
 deactivating
  qt4-mac before building WSJT-X. It would be wise to add a
  '--clean-first' to the CMake build for the first time to ensure
 any
  incorrectly built object files are discarded. Something like:
 
  $ sudo port deactivate qt4-mac
  $ cmake --build ~/Builds/wsjtx --clean-first --target 

Re: [wsjt-devel] wsjt-x build problem on OS X

2015-06-29 Thread Bill Somerville
On 29/06/2015 22:30, Steven Franke wrote:
 Bill,
Hi Steve,
 On Jun 29, 2015, at 4:26 PM, Bill Somerville g4...@classdesign.com wrote:

 On 29/06/2015 22:17, Steven Franke wrote:
 Bill,

 On Jun 29, 2015, at 3:57 PM, Bill Somerville g4...@classdesign.com wrote:

 On 29/06/2015 21:34, Steven Franke wrote:
 Bill,
 On Jun 29, 2015, at 9:00 AM, Bill Somerville g4...@classdesign.com 
 wrote:

 On 28/06/2015 22:08, Steven Franke wrote:
 Thanks Bill,
 Hi Steve,
 For what it’s worth, here a link to the VERBOSE build capture:
 https://dl.dropboxusercontent.com/u/33211132/k9an_build_capture.txt

 Here’s the CMakeCache.txt:
 https://dl.dropboxusercontent.com/u/33211132/CMakeCache.txt
 OK, the problem wasn't quite what I thought. It is an include directive
 ordering issue but it stems from the use of FFTW3 from MacPorts, this in
 itself is not an issue but it has the side effect of picking up the Qt4
 headers as well. Unfortunately I can't find an easy way of ensuring the
 -I/opt/local/include is after the includes for Qt5. That would solve the
 issue but the way that the Qt includes are detected by CMake doesn't
 seem to have a way to change the ordering. I have posted a question to
 the CMake ML but for now you should be able to build by deactivating
 qt4-mac before building WSJT-X. It would be wise to add a
 '--clean-first' to the CMake build for the first time to ensure any
 incorrectly built object files are discarded. Something like:

 $ sudo port deactivate qt4-mac
 $ cmake --build ~/Builds/wsjtx --clean-first --target install -- -j
 $ sudo port activate qt4-mac
 $ open ~/Builds/wsjtx_install/wsjtx.app
 This got me past the incorrect headers issue, but now it dies because of 
 an OpenMP problem. I’ve placed the VERBOSE build capture here:
 https://dl.dropboxusercontent.com/u/33211132/k9an_build_capture.txt

 and the CMakeCache.txt here:
 https://dl.dropboxusercontent.com/u/33211132/CMakeCache.txt
 Is your OS X 32-bit or 64-bit?

 https://support.apple.com/en-gb/HT201948
 My processor is 64-bit:

 Hardware Overview:

Model Name:  MacBook Air
Model Identifier:MacBookAir5,2
Processor Name:  Intel Core i7
Processor Speed: 2 GHz
Number of Processors:1
Total Number of Cores:   2
L2 Cache (per Core): 256 KB
L3 Cache:4 MB
Memory:  8 GB
Boot ROM Version:MBA51.00EF.B02
SMC Version (system):2.5f9
Serial Number (system):  C02J401ADRVG
Hardware UUID:   1F7ABB4C-7FB0-5918-8AE6-0CA0AB789A89

 and I am running the 64-bit kernel:
 $ uname -a
 Darwin Stevens-MacBook-Air.local 14.3.0 Darwin Kernel Version 14.3.0: Mon 
 Mar 23 11:59:05 PDT 2015; root:xnu-2782.20.48~5/RELEASE_X86_64 x86_64
 OK, looks like the MacPorts libgcc is 32-bit only for some reason. What
 do the following print:

 $ grep build_arch /opt/local/etc/macports/macports.conf
 $ grep build_arch /opt/local/etc/macports/macports.conf
 #build_arch   i386

 and:

 $ grep universal /opt/local/etc/macports/macports.conf
 $ grep universal /opt/local/etc/macports/macports.conf
 # CPU architectures to use for Universal Binaries (+universal variant)
 universal_archs   x86_64 i386

 and:

 $ file /opt/local/lib/gcc49/libgomp.1.dylib
 $  file /opt/local/lib/gcc49/libgomp.1.dylib
 /opt/local/lib/gcc49/libgomp.1.dylib: Mach-O 64-bit dynamically linked shared 
 library x86_64
Hmm, that is all as expected. I think that means the link is picking up 
another libgomp from somewhere outside of MacPorts. The only other path 
that seems likely is /usr/local/lib is there an old libgomp there from 
some prior build of gcc/gfortran?

Also what does:

$ nm -gU /opt/local/lib/gcc49/libgomp.1.dylib | grep parallel

print?
 ...

 73
 Bill
 G4WJS.


--
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] wsjt-x build problem on OS X

2015-06-29 Thread Bill Somerville
On 29/06/2015 21:34, Steven Franke wrote:
 Bill,
 On Jun 29, 2015, at 9:00 AM, Bill Somerville g4...@classdesign.com wrote:

 On 28/06/2015 22:08, Steven Franke wrote:
 Thanks Bill,
 Hi Steve,
 For what it’s worth, here a link to the VERBOSE build capture:
 https://dl.dropboxusercontent.com/u/33211132/k9an_build_capture.txt

 Here’s the CMakeCache.txt:
 https://dl.dropboxusercontent.com/u/33211132/CMakeCache.txt
 OK, the problem wasn't quite what I thought. It is an include directive
 ordering issue but it stems from the use of FFTW3 from MacPorts, this in
 itself is not an issue but it has the side effect of picking up the Qt4
 headers as well. Unfortunately I can't find an easy way of ensuring the
 -I/opt/local/include is after the includes for Qt5. That would solve the
 issue but the way that the Qt includes are detected by CMake doesn't
 seem to have a way to change the ordering. I have posted a question to
 the CMake ML but for now you should be able to build by deactivating
 qt4-mac before building WSJT-X. It would be wise to add a
 '--clean-first' to the CMake build for the first time to ensure any
 incorrectly built object files are discarded. Something like:

 $ sudo port deactivate qt4-mac
 $ cmake --build ~/Builds/wsjtx --clean-first --target install -- -j
 $ sudo port activate qt4-mac
 $ open ~/Builds/wsjtx_install/wsjtx.app
 This got me past the incorrect headers issue, but now it dies because of an 
 OpenMP problem. I’ve placed the VERBOSE build capture here:
 https://dl.dropboxusercontent.com/u/33211132/k9an_build_capture.txt

 and the CMakeCache.txt here:
 https://dl.dropboxusercontent.com/u/33211132/CMakeCache.txt
Is your OS X 32-bit or 64-bit?

https://support.apple.com/en-gb/HT201948

...

73
Bill
G4WJS.

--
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] wsjt-x build problem on OS X

2015-06-29 Thread John Nelson
Steve,

I had a look at your output but in cases like this, Bill is the expert.   Does 
seem to be an omp problem.

Your compiler picks out the same minor problems in wsprd.c as mine:  in 
readwavfile   unsigned long i, j, npoints might better be defined as   int  i, 
j, npoints  to get rid of compiler warnings.

--- John G4KLA
--
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] wsjt-x build problem on OS X

2015-06-29 Thread Steven Franke
Bill,
 On Jun 29, 2015, at 4:43 PM, Bill Somerville g4...@classdesign.com wrote:
 
 On 29/06/2015 22:30, Steven Franke wrote:
 Bill,
 Hi Steve,
 On Jun 29, 2015, at 4:26 PM, Bill Somerville g4...@classdesign.com wrote:
 
 On 29/06/2015 22:17, Steven Franke wrote:
 Bill,
 
 On Jun 29, 2015, at 3:57 PM, Bill Somerville g4...@classdesign.com 
 wrote:
 
 On 29/06/2015 21:34, Steven Franke wrote:
 Bill,
 On Jun 29, 2015, at 9:00 AM, Bill Somerville g4...@classdesign.com 
 wrote:
 
 On 28/06/2015 22:08, Steven Franke wrote:
 Thanks Bill,
 Hi Steve,
 For what it’s worth, here a link to the VERBOSE build capture:
 https://dl.dropboxusercontent.com/u/33211132/k9an_build_capture.txt
 
 Here’s the CMakeCache.txt:
 https://dl.dropboxusercontent.com/u/33211132/CMakeCache.txt
 OK, the problem wasn't quite what I thought. It is an include directive
 ordering issue but it stems from the use of FFTW3 from MacPorts, this in
 itself is not an issue but it has the side effect of picking up the Qt4
 headers as well. Unfortunately I can't find an easy way of ensuring the
 -I/opt/local/include is after the includes for Qt5. That would solve the
 issue but the way that the Qt includes are detected by CMake doesn't
 seem to have a way to change the ordering. I have posted a question to
 the CMake ML but for now you should be able to build by deactivating
 qt4-mac before building WSJT-X. It would be wise to add a
 '--clean-first' to the CMake build for the first time to ensure any
 incorrectly built object files are discarded. Something like:
 
 $ sudo port deactivate qt4-mac
 $ cmake --build ~/Builds/wsjtx --clean-first --target install -- -j
 $ sudo port activate qt4-mac
 $ open ~/Builds/wsjtx_install/wsjtx.app
 This got me past the incorrect headers issue, but now it dies because of 
 an OpenMP problem. I’ve placed the VERBOSE build capture here:
 https://dl.dropboxusercontent.com/u/33211132/k9an_build_capture.txt
 
 and the CMakeCache.txt here:
 https://dl.dropboxusercontent.com/u/33211132/CMakeCache.txt
 Is your OS X 32-bit or 64-bit?
 
 https://support.apple.com/en-gb/HT201948
 My processor is 64-bit:
 
 Hardware Overview:
 
   Model Name:  MacBook Air
   Model Identifier:MacBookAir5,2
   Processor Name:  Intel Core i7
   Processor Speed: 2 GHz
   Number of Processors:1
   Total Number of Cores:   2
   L2 Cache (per Core): 256 KB
   L3 Cache:4 MB
   Memory:  8 GB
   Boot ROM Version:MBA51.00EF.B02
   SMC Version (system):2.5f9
   Serial Number (system):  C02J401ADRVG
   Hardware UUID:   1F7ABB4C-7FB0-5918-8AE6-0CA0AB789A89
 
 and I am running the 64-bit kernel:
 $ uname -a
 Darwin Stevens-MacBook-Air.local 14.3.0 Darwin Kernel Version 14.3.0: Mon 
 Mar 23 11:59:05 PDT 2015; root:xnu-2782.20.48~5/RELEASE_X86_64 x86_64
 OK, looks like the MacPorts libgcc is 32-bit only for some reason. What
 do the following print:
 
 $ grep build_arch /opt/local/etc/macports/macports.conf
 $ grep build_arch /opt/local/etc/macports/macports.conf
 #build_arch  i386
 
 and:
 
 $ grep universal /opt/local/etc/macports/macports.conf
 $ grep universal /opt/local/etc/macports/macports.conf
 # CPU architectures to use for Universal Binaries (+universal variant)
 universal_archs  x86_64 i386
 
 and:
 
 $ file /opt/local/lib/gcc49/libgomp.1.dylib
 $  file /opt/local/lib/gcc49/libgomp.1.dylib
 /opt/local/lib/gcc49/libgomp.1.dylib: Mach-O 64-bit dynamically linked 
 shared library x86_64
 Hmm, that is all as expected. I think that means the link is picking up 
 another libgomp from somewhere outside of MacPorts. The only other path 
 that seems likely is /usr/local/lib is there an old libgomp there from 
 some prior build of gcc/gfortran?

You’re a wizard! That was the problem. Moved the old libraries out of the way 
and compile completed. Running it now.
Thanks!!
 
 Also what does:
 
 $ nm -gU /opt/local/lib/gcc49/libgomp.1.dylib | grep parallel

and just for completeness, and future reference:
$ nm -gU /opt/local/lib/gcc49/libgomp.1.dylib | grep parallel
9732 T _GOACC_parallel
32aa T _GOMP_parallel
3240 T _GOMP_parallel_end
256c T _GOMP_parallel_loop_dynamic
24ba T _GOMP_parallel_loop_dynamic_start
2599 T _GOMP_parallel_loop_guided
24d0 T _GOMP_parallel_loop_guided_start
25c6 T _GOMP_parallel_loop_runtime
24e6 T _GOMP_parallel_loop_runtime_start
253f T _GOMP_parallel_loop_static
24a4 T _GOMP_parallel_loop_static_start
3619 T _GOMP_parallel_sections
359d T _GOMP_parallel_sections_start
320e T _GOMP_parallel_start
3432 T _omp_in_parallel
713e T _omp_in_parallel_

Thanks again!
Steve k9an
 
 print?
 ...
 
 73
 Bill
 G4WJS.
 
 
 --
 Don't Limit Your Business. Reach for the Cloud.
 GigeNET's Cloud Solutions provide you with the 

Re: [wsjt-devel] wsjt-x build problem on OS X

2015-06-29 Thread Bill Somerville
On 29/06/2015 22:58, Steven Franke wrote:
 Bill,
Hi Steve,
 On Jun 29, 2015, at 4:43 PM, Bill Somerville g4...@classdesign.com wrote:

 On 29/06/2015 22:30, Steven Franke wrote:
 Bill,
 Hi Steve,
 On Jun 29, 2015, at 4:26 PM, Bill Somerville g4...@classdesign.com wrote:

 On 29/06/2015 22:17, Steven Franke wrote:
 Bill,

 On Jun 29, 2015, at 3:57 PM, Bill Somerville g4...@classdesign.com 
 wrote:

 On 29/06/2015 21:34, Steven Franke wrote:
 Bill,
 On Jun 29, 2015, at 9:00 AM, Bill Somerville g4...@classdesign.com 
 wrote:

 On 28/06/2015 22:08, Steven Franke wrote:
 Thanks Bill,
 Hi Steve,
 For what it’s worth, here a link to the VERBOSE build capture:
 https://dl.dropboxusercontent.com/u/33211132/k9an_build_capture.txt

 Here’s the CMakeCache.txt:
 https://dl.dropboxusercontent.com/u/33211132/CMakeCache.txt
 OK, the problem wasn't quite what I thought. It is an include directive
 ordering issue but it stems from the use of FFTW3 from MacPorts, this 
 in
 itself is not an issue but it has the side effect of picking up the Qt4
 headers as well. Unfortunately I can't find an easy way of ensuring the
 -I/opt/local/include is after the includes for Qt5. That would solve 
 the
 issue but the way that the Qt includes are detected by CMake doesn't
 seem to have a way to change the ordering. I have posted a question to
 the CMake ML but for now you should be able to build by deactivating
 qt4-mac before building WSJT-X. It would be wise to add a
 '--clean-first' to the CMake build for the first time to ensure any
 incorrectly built object files are discarded. Something like:

 $ sudo port deactivate qt4-mac
 $ cmake --build ~/Builds/wsjtx --clean-first --target install -- -j
 $ sudo port activate qt4-mac
 $ open ~/Builds/wsjtx_install/wsjtx.app
 This got me past the incorrect headers issue, but now it dies because 
 of an OpenMP problem. I’ve placed the VERBOSE build capture here:
 https://dl.dropboxusercontent.com/u/33211132/k9an_build_capture.txt

 and the CMakeCache.txt here:
 https://dl.dropboxusercontent.com/u/33211132/CMakeCache.txt
 Is your OS X 32-bit or 64-bit?

 https://support.apple.com/en-gb/HT201948
 My processor is 64-bit:

 Hardware Overview:

Model Name:MacBook Air
Model Identifier:  MacBookAir5,2
Processor Name:Intel Core i7
Processor Speed:   2 GHz
Number of Processors:  1
Total Number of Cores: 2
L2 Cache (per Core):   256 KB
L3 Cache:  4 MB
Memory:8 GB
Boot ROM Version:  MBA51.00EF.B02
SMC Version (system):  2.5f9
Serial Number (system):C02J401ADRVG
Hardware UUID: 1F7ABB4C-7FB0-5918-8AE6-0CA0AB789A89

 and I am running the 64-bit kernel:
 $ uname -a
 Darwin Stevens-MacBook-Air.local 14.3.0 Darwin Kernel Version 14.3.0: Mon 
 Mar 23 11:59:05 PDT 2015; root:xnu-2782.20.48~5/RELEASE_X86_64 x86_64
 OK, looks like the MacPorts libgcc is 32-bit only for some reason. What
 do the following print:

 $ grep build_arch /opt/local/etc/macports/macports.conf
 $ grep build_arch /opt/local/etc/macports/macports.conf
 #build_arch i386

 and:

 $ grep universal /opt/local/etc/macports/macports.conf
 $ grep universal /opt/local/etc/macports/macports.conf
 # CPU architectures to use for Universal Binaries (+universal variant)
 universal_archs x86_64 i386

 and:

 $ file /opt/local/lib/gcc49/libgomp.1.dylib
 $  file /opt/local/lib/gcc49/libgomp.1.dylib
 /opt/local/lib/gcc49/libgomp.1.dylib: Mach-O 64-bit dynamically linked 
 shared library x86_64
 Hmm, that is all as expected. I think that means the link is picking up
 another libgomp from somewhere outside of MacPorts. The only other path
 that seems likely is /usr/local/lib is there an old libgomp there from
 some prior build of gcc/gfortran?
 You’re a wizard! That was the problem. Moved the old libraries out of the way 
 and compile completed. Running it now.
 Thanks!!
Good, that was my last guess at a solution.

This is related to the liberties we take with OpenMP I mentioned further 
up this thread. Normally if you use gfortran you would link with the gcc 
compiler driver or gfortran itself, these know exactly were to get he 
matching libgcc supporting libraries like libgomp and libgcc_1. Because 
we have to use the clang++ compiler driver to link since Qt uses that 
for its C++, we have to manually add the gcc/gfortran support libraries 
to the link command line. Perhaps I should use the gcc/gfortran 
compiler/linker driver to discover the correct paths to avoid this kind 
of issue.

It is a PITA that Apple and LLVM don't have a Fortran compiler nor 
OpenMP support in clang/clang++.

...

73
Bill
G4WJS.

--
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.