On 2008-02-04 10:20+0100 Werner Smekal wrote:

> Hi Ty,
>
> you can get rid of the tk warnings by gettting rid of the tk driver,
> which you don't need anyway by setting the cmake option -
> DENABLE_tk=OFF and -DENABLE-tcl=OFF. The other warnings you get are
> since there is a mixup between the png/jpeg libraries installed by
> macport to /opt/local/ and the ones provided by the wxWidgets library.
> I actually have similar problems and need to find a way how I tell
> cmake which library/headers it should use. In the shared case this is
> not a problem, since the wxWidgets library knows which dylib to use,
> but if you link all together many symbols are twice in the linked
> object.

Hi Werner:

I follow the above argument this far. If you turn dynamic drivers off (which
is a necessary side effect of the -DBUILD_SHARED_LIBS=OFF option or which
you can specify independently for the shared libraries case by using the
-DENABLE_DYNDRIVERS=OFF option), then instead of being used as independent
plug-ins all driver code becomes part of our core library.  In that
all-in-one case, you have the wxwidgets driver code using the wxwidgets
library and the gd driver using the gd library, i.e., our core library links
to both the wxwidgets and gd libraries, but NOT directly to the jpeg or png
libraries since our device drivers do not refer to jpeg or png symbols.  So
this is classical hierarchical linking with libplplot linking to wxwidgets
which in turn links to the jpeg and png libraries and similarly with
libplplot linking to libgd which in turn links to the jpeg and png
libraries.  If those two libraries link to two separate versions of the jpeg
and png libraries, that should not be an issue for a really smart library
linking and run-time linking environment, but I am not sure whether Mac OS X
(or any other platform) is that smart or not.  In any case, how libgd and
libwxwidgets are linked is completely outside of our build system's control
and something that the Mac OS X user may have to deal with independently by
reinstalling one or both of those libraries.

Note, another complicating factor is our FindGD.cmake module finds jpeg and
png library information just in case the platform's linking and run-time
environment is too dumb to even support hierarchical linking.  However, the
CMake modules to find the jpeg and png libraries are completely independent
of each other and also of our own FindGD.cmake so it's quite possible that
FindGD.cmake is finding an inconsistent set of jpeg and png libraries.  To
change that behaviour set the environment variable CMAKE_LIBRARY_PATH (see
our wiki for more information on this variable) to the appropriate path for
the png and jpeg libraries needed by libgd.

Werner, does that change solve the issue?  If not, then perhaps libwxwidgets
and libgd as currently installed on your system are linked to different jpeg
and png libraries, and you may have to reinstall one or both of them to
use consistent jpeg and png libraries if the Mac OS X linker and run-time
loader is not smart enough to handle that situation.

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); PLplot scientific plotting software
package (plplot.org); 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
__________________________

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Plplot-general mailing list
Plplot-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-general

Reply via email to