On 2015-03-17 22:38+0100 laurent Berger wrote:

> with VS2013 like yesterday there is no problem but same error (like vs2012) 
> is in test_plbuf project
>
> 1>  Building Custom Rule F:/Lib/test/plplot-plplot/examples/c/CMakeLists.txt
> 1>  CMake does not need to re-run because 
> F:\Lib\test\plplot-plplot\build\examples\c\CMakeFiles\generate.stamp is 
> up-to-date.
> 1>  test_plbuf.c
> 1>F:\Lib\test\plplot-plplot\examples\c\test_plbuf.c(69): warning C4101: 'ver' 
> : variable locale non référencée
> 1>test_plbuf.obj : error LNK2001: symbole externe non résolu plsc (unresolved 
> external symbol plsc)
>
>
> I have investigate this error :
> plsc is defined at line 167 of plplotp.h : extern PLDLLIMPEXP_DATA( PLStream 
> * ) plsc;
> Hence I have append Preprocessor definition USINGDLL and plsc is resolved 
> now.
> **************************
> With error preprocessor definition are :
> WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_DEPRECATE;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)
> ***************************
> without error preprocessor definition are :
> USINGDLL;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_DEPRECATE;CMAKE_INTDIR="Debug";%(PreprocessorDefinitions)
>

Hi laurant:

We use the following cmake logic (see src/CMakeFiles.txt) to specify
that the -DUSINGDLL compiler option is used for the shared library
case.

if(BUILD_SHARED_LIBS)
   SET_SOURCE_FILES_PROPERTIES(${plplot_LIB_SRCS}
     PROPERTIES COMPILE_FLAGS "-DUSINGDLL" )
endif(BUILD_SHARED_LIBS)

This has generally worked fine for many years, but apparently not for
your "with error preprocessor" case for the MSVC compiler.

This issue might well be a CMake bug for the MSVC case since the
COMPILE_FLAGS property should "just work".

To investigate that possible CMake bug further what cmake version are
you using, and exactly what CMake option are you using to specify the
"With error preprocessor definition" case?  I would like to quote that
information if I forward a description of the issue to the CMake list
for further help there.

Also, suppose you change the above logic to

if(BUILD_SHARED_LIBS)
   SET_SOURCE_FILES_PROPERTIES(${plplot_LIB_SRCS}
     PROPERTIES
     COMPILE_DEFINITIONS "USINGDLL" )
     #Maybe? COMPILE_DEFINITIONS_<config> "USINGDLL" )
endif(BUILD_SHARED_LIBS)

where <config> is one of DEBUG, RELEASE, MINSIZEREL, and
RELWITHDEBINFO.  But I have commented out all those <config>
possibilities because I think the overall COMPILE_DEFINITIONS
"USINGDLL" should work for all <config> cases by default.

Does that change (with or without setting COMPILE_DEFINITIONS_DEBUG)
work around the issue that COMPILE_FLAGS is not working for you for
the "error preprocessor definition" case?

> PS
> I cannot run wxPLplotdemo because on my computer I used vs2012 for
> wxwidgets library.
> If you want I can test it but I need time to change all library on my
> computer.

Actually, a thorough testing on vs2012 would be better than being
distracted by vs2013.  So for now, let's stick with vs2012 until
you are satisfied with it.

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