Hi Phil,

right, I misunderstood the problem. There are several ways
to deal with these runtime libraries:

- Put them along with the executables on the target 
machine.
   If they are in the same directory this usually works,
   but the manifest mechanism has made this slightly 
tricky.

- Install the proper version of the runtime libraries
   - this is the recommended way for the MS Visual C/C++
   compiler. It uses so-called side-by-side assemblies
   and the manifest mechanism.
   The main drawback: you have to make sure they are
   installed on all target machines. Not a big deal if you
   are allowed to install something, but I have had 
headaches
   trying to deal with systems where that was pertinently
   not allowed :(.

- Incorporate the runtime libraries into the executables.
   This is the easiest solution in terms of deployment,
   but modern compilers are making this increasingly
   difficult and sometimes outright impossible to achieve.
   I know for instance that the static OpenMP library used
   by Intel is scheduled to be removed, leaving a 
dependency
   on the DLL. Similar things have happened long ago with
   the X11 libraries on Linux/UNIX.

I will see if there compiler and linker options that help
with the scenario you are after, but it may turn out to
be impossible - /MT and /MTd may be the way towards that
goal. (I just failed to produce a small program that
depends on these runtime libraries so that is easy to
investigate what options would help - sigh. Probably
better then to try a PLplot example instead)

Regards,

Arjen

On Tue, 2 Oct 2012 12:50:28 -0700 (PDT)
  phil rosenberg <philip_rosenb...@yahoo.com> wrote:
> 
> 
> Hi Arjen
> Sorry, the phrase "static linkage" clearly has different 
>meanings depending upon who uses it.
>  
> When I refer to static linkage I don't mean creating 
>.lib files rather than .dll files I mean linking against 
>the static runtime libraries (/MT and /MTd compiler 
>options or runtime library under project properties, 
>C/C++, Code Generation.
>  
> Sorry if I'm teaching my granny to suck eggs, but these 
>options mean I can copy an exe file to any other windows 
>PC and run it. Otherwise the PC needs the visual studio 
>runtime installed. If I try to create a statically linked 
>exe, but link to a dynamically linked library (using the 
>definition above) then the linker generates loads of 
>errors because it gets conflicts between the two runtime 
>environments.
>  
> In theory I should just need to add /MT or /MTd to the 
>compiler flag as Alan mentioned earlier in the thread, 
>but this didn't seem to work for some reason (it worked 
>fine for setting unicode). Hence the patch.
>  
> Phil
> 
> Message: 4
> Date: Tue, 02 Oct 2012 09:03:39 +0200
>From: Arjen Markus <arjen.mar...@deltares.nl>
> Subject: Re: [Plplot-devel] Building examples on Windows
> To: "plplot-devel@lists.sourceforge.net"
>     <plplot-devel@lists.sourceforge.net>
> Message-ID: <506a91cb....@deltares.nl>
> Content-Type: text/plain; charset=ISO-8859-1; 
>format=flowed
> 
> Hi Phil, Alan,
> 
> just tested this on Windows, using MS VC/C++ 2008 and 
>GCC (MinGW)
> with CMake 2.8.7:
> 
> With the option BUILD_SHARED_LIBS=OFF, the build process 
>results
> in static libraries (for PLplot, csirocsa and qsastime, 
>the default
> libraries that are usually built on my system).
> 
> The only dynamic libraries left are the runtime 
>libraries that
> come from the compiler.
> 
> So it is not necessary to apply Phil's patch anymore. 
>(The problems
> may have been due to some bug/quirk in older CMake 
>versions.)
> 
> Regards,
> 
> Arjen
> 
> On 2012-10-01 09:50, Arjen Markus wrote:
>> Hi Alan, Phil,
>> 
>> On Sat, 29 Sep 2012 16:53:17 -0700 (PDT)
>>   "Alan W. Irwin" <ir...@beluga.phys.uvic.ca> wrote:
>> 
>>> I don't recall exactly what happened in this case, but 
>>> probably I just
>>> silently left it to Arjen to deal with since he is in a 
>>> good position
>>> to test your patch on the Windows platform.
>>>
>>> Arjen, if you haven't dealt with this already, would
>>> you be willing to take a look?
>>>
>> 
>> I do not recall the follow-up either, but I should be 
>>able
>> to look into this. I will try to do that this week.
>> 
>> Regards,
>> 
>> Arjen
>> 
>>  
>> 
>> DISCLAIMER: This message is intended exclusively for the 
>>addressee(s) and may contain confidential and privileged 
>>information. If you are not the intended recipient please 
>>notify the sender immediately and destroy this message. 
>>Unauthorized use, disclosure or copying of this message 
>>is strictly prohibited.
>> The foundation 'Stichting Deltares', which has its seat 
>>at Delft, The Netherlands, Commercial Registration Number 
>>41146461, is not liable in any way whatsoever for 
>>consequences and/or damages resulting from the improper, 
>>incomplete and untimely dispatch, receipt and/or content 
>>of this e-mail.
>> 
>> 
>> 
>> 
>> 
>> ------------------------------------------------------------------------------
>> Got visibility?
>> Most devs has no idea what their production app looks 
>>like.
>> Find out how fast your code is with AppDynamics Lite.
>> http://ad.doubleclick.net/clk;262219671;13503038;y?
>> http://info.appdynamics.com/FreeJavaPerformanceDownload.html
>> _______________________________________________
>> Plplot-devel mailing list
>> Plplot-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/plplot-devel
>> 
> 
> 
> 
> DISCLAIMER: This message is intended exclusively for the 
>addressee(s) and may contain confidential and privileged 
>information. If you are not the intended recipient please 
>notify the sender immediately and destroy this message. 
>Unauthorized use, disclosure or copying of this message 
>is strictly prohibited.
> The foundation 'Stichting Deltares', which has its seat 
>at Delft, The Netherlands, Commercial Registration Number 
>41146461, is not liable in any way whatsoever for 
>consequences and/or damages resulting from the improper, 
>incomplete and untimely dispatch, receipt and/or content 
>of this e-mail.
> 
> 
> 
> 
> 
> 
> 
> ------------------------------
> 
> Message: 5
> Date: Tue, 02 Oct 2012 09:44:38 +0200
>From: Davide Cesari <dces...@arpa.emr.it>
> Subject: Re: [Plplot-devel] map resolution
> To: "Alan W. Irwin" <ir...@beluga.phys.uvic.ca>
> Cc: PLplot development list 
><plplot-devel@lists.sourceforge.net>
> Message-ID: <506a9b66.1060...@arpa.emr.it>
> Content-Type: text/plain; charset=ISO-8859-1; 
>format=flowed
> 
> On 01/10/2012 22:38, Alan W. Irwin wrote:
>>> On Mon, Oct 01, 2012 at 10:09:31AM +0200, Davide Cesari 
>>>wrote:
>>>> [...]Hello to everybody,
>>>>     please note that shapelib is part of the OSGEO4W 
>>>>installation,
>>>>
>>>>    https://trac.osgeo.org/osgeo4w/
>>>>
>>>> which is currently the official and supported way to 
>>>>install shapelib
>>>> (and to build it) on Windows; OSGEO4W comes with an 
>>>>interactive
>>>> installer which allows you to choose the desired 
>>>>packages, from lower
>>>> level libraries to full GIS applications, and the 
>>>>necessary dependencies
>>>> are automatically installed. And of course it includes 
>>>>also Gdal/Ogr, as
>>>> a more general approach to GIS formats.
>>>>     FYI. another useful site with high resolution, free 
>>>>(with
>>>> limitations)
>>>> country boundaries data in shapefile format is this one:
>>>>    http://www.gadm.org/
>>>>
>>>> Best regards, Davide
>>
>> @ Davide:
>>
>> That combination of shapelib and GDAL/OGR of the OSGEO4W 
>>installation
>> might indeed be potentially useful to our Windows 
>>users.  However, I
>> am a bit concerned about flexibility.  For example, if 
>>PLplot Windows
>> users build PLplot with either MinGW or the proprietary 
>>Microsoft
>> compilers can they always link to the OSGEO4W versions 
>>of shapelib and
>> GDAL/OGR? Or are they forced to use just one type of 
>>Windows compiler?
> 
> Just to share some experience, I am trying to port to 
>Windows the 
>Fortran interface to shapelib and gdal 
>(fortrangis.berlios.de) and I 
> succeeded with GNU compilers under mingw linking to the 
>OSGEO4W install, 
> despite the difficulties of sticking to an autoconf 
>build system; I 
> don't know how it would be with MS compilers. Anyway 
>shapelib has no 
> dependencies so I agree that an independent solution 
>will be suitable as 
> well.
> 
>>
>> As I posted to this list previously shapelib is an 
>>extremely simple
>> build. So for that I would advocate using a CMake-based 
>>build system
>> to give maximum flexibility in compiler choices.  The 
>>builds for
>> GDAL/OGR can be complex (see remarks at
> ...
> 
>     Davide
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> ------------------------------
> 
> Message: 6
> Date: Tue, 2 Oct 2012 12:23:46 -0700 (PDT)
>From: "Alan W. Irwin" <ir...@beluga.phys.uvic.ca>
> Subject: [Plplot-devel] Using gcj-4.7-jdk on Debian 
>wheezy fails with
>     PLplot
> To: Andrew Ross <andrewr...@users.sourceforge.net>,     
>PLplot
>     development list 
><Plplot-devel@lists.sourceforge.net>
> Message-ID: 
><alpine.deb.2.02.1210021138510.2...@enira.zlyna.ubzr>
> Content-Type: TEXT/PLAIN; format=flowed; 
>charset=US-ASCII
> 
> Debian wheezy has a huge number of different java 
>choices so I thought
> I should briefly document the particular choices I made 
>which
> lead to the error below.
> 
> I installed the gcj-4.7-jdk package which seemed to suck 
>in everything
> else that is needed via the large number of package 
>dependencies for
> that package. However, CMake needs help finding the 
>peculiar location
> of the headers and libraries that this package uses.  So 
>before
> running cmake in an initially empty build tree I had to 
>set the
> following environment variables:
> 
> export 
>CMAKE_INCLUDE_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.7/include
> export 
>CMAKE_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/gcj-4.7-13
> 
> After that, running cmake seemed to work fine to find 
>all java
> components, and the java bindings were built without any
> obvious issues.  However, when trying to compile the 
>examples,
> I ran into the following peculiar error:
> 
> software@raven> make x01j
> [  0%] Built target plhershey-unicode-gen
> [  0%] Built target plhershey-unicode.h_built
> [  0%] Built target csirocsa
> [ 13%] Built target csironn
> [ 13%] Built target deltaT-gen
> [ 17%] Built target deltaT.h_built
> [ 17%] Built target tai-utc-gen
> [ 21%] Built target tai-utc.h_built
> [ 26%] Built target qsastime
> [ 78%] Built target plplotd
> [ 78%] Built target plplotjavac_wrap
> [ 95%] Built target plplot_core
> Scanning dependencies of target x01j
> [100%] Generating plplot/examples/x01.class
> gcj-4.7: error: utf8: No such file or directory
> 
> and similarly for any of our other Java examples.
> 
> @Andrew:
> 
> I believe you have had success with Java on Debian 
>unstable. What do
> you do that is different from what I did above?  Can you 
>also confirm
> the above issue on Debian unstable for the Java package 
>selection
> (gcj-4.7-jdk) that I made?  Is there something else I 
>should install
> as well to get that to work?  When I did a google search 
>for the above
> error message there were only a few hits, but they 
>appeared to be
> quite significant because they were associated with 
>Debian package
> builds which also appear to be running into this same 
>gcj error.
> 
> Thanks in advance for any help you can give me with this 
>error.
> 
> 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
> __________________________
> 
> 
> 
> ------------------------------
> 
> ------------------------------------------------------------------------------
> Don't let slow site performance ruin your business. 
>Deploy New Relic APM
> Deploy New Relic app performance management and know 
>exactly
> what is happening inside your Ruby, Python, PHP, Java, 
>and .NET app
> Try New Relic at no cost today and get our sweet Data 
>Nerd shirt too!
> http://p.sf.net/sfu/newrelic-dev2dev
> 
> ------------------------------
> 
> _______________________________________________
> Plplot-devel mailing list
> Plplot-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/plplot-devel
> 
> 
> End of Plplot-devel Digest, Vol 77, Issue 2
> *******************************************


 

DISCLAIMER: This message is intended exclusively for the addressee(s) and may 
contain confidential and privileged information. If you are not the intended 
recipient please notify the sender immediately and destroy this message. 
Unauthorized use, disclosure or copying of this message is strictly prohibited.
The foundation 'Stichting Deltares', which has its seat at Delft, The 
Netherlands, Commercial Registration Number 41146461, is not liable in any way 
whatsoever for consequences and/or damages resulting from the improper, 
incomplete and untimely dispatch, receipt and/or content of this e-mail.





------------------------------------------------------------------------------
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to