On 2015-02-23 23:18-0500 Jim Dishaw wrote:

> On Feb 23, 2015, at 2:50 PM, "Alan W. Irwin" <ir...@beluga.phys.uvic.ca> 
> wrote:
>>
>> Also, I am going to try again to attach the patch to this e-mail, but
>> this time in compressed form just in case some software in the mail
>> train between us is changing the bits in a pure text attachment. That,
>> of course, should not happen for standards-compliant mail software,
>> but you never know with pure text. Please check that compressed patch
>> file by uncompressing it, comparing with the patch file you derived
>> before from your e-mail, and trying the "dry-run" procedure above. If
>> that "dry-run" procedure works, then git am (and git apply for that
>> matter) should "just work".  But "git am" is far preferred because it
>> saves all the relevant git information for my commit (date, author,
>> etc.,) in a git commit on your topic branch.
>>
>
> I was able to apply the gzipped patch.

Good.  Of course, Phil's (parentheses-corrected) patch now supersedes
mine so you should use that from now on (until he pushes that patch),
but I don't think that difference is relevant to the error you
encountered below.

>
> I tested with wxWidgets 3.0 from MacPorts.
>
> CMake string:
>
> PATH=${PATH}:/opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxWidgets/3.0/bin
>  cmake -DCMAKE_INSTALL_PREFIX=/opt/nuclear -DBUILD_TEST=ON ../plplot-plplot/ 
> >& cmake.out
>
> N.B.  I had to specify the path to wx-config
>
> I then tried to make and ran into an error
>
> [ 30%] Building CXX object 
> bindings/wxwidgets/CMakeFiles/plplotwxwidgets.dir/wxPLplotstream.cpp.o
> Linking CXX shared library libplplotwxwidgets.dylib
> Undefined symbols for architecture x86_64:
>  "_c_plsstrm", referenced from:
>      plstream::set_stream() in wxPLplotstream.cpp.o
> ld: symbol(s) not found for architecture x86_64
> clang: error: linker command failed with exit code 1 (use -v to see 
> invocation)
> make[2]: *** [bindings/wxwidgets/libplplotwxwidgets.0.0.0.dylib] Error 1
> make[1]: *** [bindings/wxwidgets/CMakeFiles/plplotwxwidgets.dir/all] Error 2
> make: *** [all] Error 2
>
> I have attached my cmake.out and make.out contents.

I immediately noticed the mention of _c_plsstrm above which appears to
be a reference to a libplplot function (not libplplotcxx which is an
important difference) that is required by libplplotwxwidgets to set
the stream number.  This direct dependence of libplplotwxwidgets on
libplplot is confirmed on Linux with the following nm result:

software@raven> nm --undefined-only --demangle 
bindings/wxwidgets/libplplotwxwidgets.so |grep plsstrm
                  U c_plsstrm

I have now (commit id 67651bd) changed our build system so that
libplplotwxwidgets will be linked to both libplplot and libplplotcxx
now.

I am virtually positive that will solve the above linking issue, but let
me know how it goes, and if that linking works how much further you get.

Other remarks:

I am a bit concerned by your use of the clang compiler which as far as
I know has never been used before for building or testing PLplot on
any platform.  But if that is what you used for your previous
successful test_diff_psc test, then probably you should stick with it
(at least until you run into something that clang cannot handle) since
it is very useful experience for us to see what clang can do.

I am much more concerned about all those policy warnings at the end of
cmake.out.  What that really means is that the PLplot build system is
not really ready for CMake-3.1.3 so although cmake finished the
configuration without a showstopping error, PLplot configuration is
likely on shaky ground with cmake-3.1.3.  So could you please build
and use cmake-3.0.2 from now on (which is the version I am currently
using without problems)?

It was on my agenda to make PLplot really ready for cmake-3.1.x for
this release, but I have now decided to put that off until the next
release on the principle of minimizing changes this close to release.

Alan
__________________________
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state
implementation for stellar interiors (freeeos.sf.net); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); the libLASi project
(unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
and the Linux Brochure Project (lbproject.sf.net).
__________________________

Linux-powered Science
__________________________

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to