Hi Greg,


I am not sure I understand exactly what you are trying to achieve (and I have 
only briefly looked at your explanation of the background), but have a look at 
the Fortran bindings. Here we explicitly use a .def file to export the various 
routines. The thing is that such a .def file allows the specification of the 
name of the DLL _independently_ of the name of the produced import library. (I 
made a mistake not too long with that LIBRARY statement, hence I know that it 
works this way).



Of course this only works on platforms where a .def file is required, MinGW and 
Win32.



Regards,



Arjen



> -----Original Message-----
> From: Greg Jung [mailto:gvj...@gmail.com]
> Sent: Friday, April 17, 2015 4:48 PM
> To: plplot-devel@lists.sourceforge.net
> Subject: [Plplot-devel] Wrestling library linkage experiments.
>
> Hi guys,
>   I have one specific plplot question then I will give a lot of background 
> info that I'm
> fairly certain would come up in the ensuing Q/A for the issue.  The 
> foreground is, I'm
> building GDL on mingw32, GDL wants to (optionally) bring in  a number of  
> libraries
> to accomplish added functionalities.
>
> The Question:
>    How do I get a specially-named libplplot version to function?  I wish to 
> have
> libplplot-v2.dll be the shared that libplplot.dll.a is an import for - built 
> and held in a
> directory  separately specified.  A copy of libplplot-v2.dll is then kept in 
> the runtime
> path alongside the standard versions libplplot.dll, libplplotcxx.dll, 
> wingcc.dll, etc.
> v2 version is actually "nodyn" - all of the same source except dynamic 
> drivers are not
> enabled.
>
> What I've been trying:
>   I'm using a semi-updated plplot distribution from git Oct 7, 2014.
> My first attempt was to use dlltool
> to create an import library libplplot.dll.a which hooked into 
> libplplot-nodyn.dll, itself
> created by simply renaming.  The link attempt failed so I went to the build 
> directory
> and basically changed all references libplplot.dll to libplplot-nodyn.dll
>
> cat build.make | sed 's/libplplot.dll/libplplot-nodyn.dll/g' | sed 
> 's/libplplot-
> nodyn.dll.a/libplplot.dll.a/g'
>
> (except that I did this in a text editor)
>
> This result worked to be successfully linked (and loaded, verified via
> depends_x86.exe).
>   But it doesn't work.
> To see that the dysfunction is not in the code, I did the same procedure for 
> the plplot
> version that was working, going to the original build directory, making a 
> shareable;
> libplplot-sidyn.dll described by import library libplplot.dll.a - this didn't 
> work, either.
>
> -----------------------
>
> background:
>
>   I'm running on windows 7 (64 bit).  32-bit compiles are done using gcc 
> 4.9.2 built by
> msys2; its all posix, dwarf2.
>   In order to centralize the support libraries I keep those needed to run 
> programs in
> c:/mingw/dll32-psxdw2 which is entered (via an NTFS junction) as c:/usr/lib32 
> below:
> PATH:
> C:\cmd:C:\cmd/bin:C:\usr/bin:C:\usr/bin32:C:\usr/bin32/mingw:C:\usr/lib32:C:\Windo
> ws/system32:C:\Windows:C:\Windows/System32/Wbem
>
> greg@Homerw7 MINGW32 /d/bld/mingw32-psxdw2 $ ls -la plplot11/bin total 1232
> drwxr-xr-x 1 greg None      0 Apr 17 06:04 .
> drwxr-xr-x 1 greg None      0 Apr 17 06:04 ..
> -rwxr-xr-x 1 greg None 118558 Jan 28 14:54 libcsirocsa.dll -rwxr-xr-x 1 greg 
> None
> 188815 Apr 17 06:02 libplplotcxx.dll -rwxr-xr-x 1 greg None 512591 Apr 17 
> 06:02
> libplplot-sidyn.dll -rwxr-xr-x 1 greg None 195307 Apr 17 06:02 
> libplplotwxwidgets.dll -
> rwxr-xr-x 1 greg None 120392 Jan 28 14:54 libqsastime.dll -rwxr-xr-x 1 greg 
> None
> 107360 Apr 17 06:02 pltek.exe
>
>  /d/bld/mingw32-psxdw2$ ls -la plplot11-SAVE/bin total 1236
> drwxr-xr-x 1 greg None      0 Jan 28 16:53 .
> drwxr-xr-x 1 greg None      0 Apr 17 05:33 ..
> -rwxr-xr-x 1 greg None 118558 Jan 28 14:54 libcsirocsa.dll -rwxr-xr-x 1 greg 
> None
> 512079 Jan 28 14:54 libplplot.dll -rwxr-xr-x 1 greg None 188803 Jan 28 14:54
> libplplotcxx.dll -rwxr-xr-x 1 greg None 195295 Jan 28 14:54 
> libplplotwxwidgets.dll -
> rwxr-xr-x 1 greg None 120392 Jan 28 14:54 libqsastime.dll -rwxr-xr-x 1 greg 
> None
> 106848 Jan 28 14:55 pltek.exe
>
> and also, higher up the path, c:/usr/bin32, which keeps a hodge-podge of 
> libraries I
> might be linking against for special reasons.
>
> $ ls -la /c/usr/bin32
> total 14580
> drwxr-xr-x 1 greg None        0 Apr 16 21:12 .
> drwxr-xr-x 1 greg None        0 Mar 30 14:57 ..
> -rwxr-xr-x 1 greg None 12328473 Mar 30 14:29 gdl.exe
> -rwxr-xr-x 1 greg None   203638 Apr  5 22:28 libcsironn.dll
> -rwxr-xr-x 1 greg None   186311 Apr  5 22:28 libplplotcxxd.dll
> -rwxr-xr-x 1 greg None   572150 Apr  5 22:28 libplplotd.dll
> -rwxr-xr-x 1 greg None  1107048 Apr 16 17:42 libplplot-nodyn.dll
> -rwxr-xr-x 1 greg None   512591 Apr 17 06:02 libplplot-sidyn.dll
> lrwxrwxrwx 1 greg None       12 Mar  7 19:51 mingw -> /mingw32/bin
>
>
> greg@Homerw7 MINGW32 /d/bld/mingw32-psxdw2 $ ls -la plplot11/bin total 1232
> drwxr-xr-x 1 greg None      0 Apr 17 06:04 .
> drwxr-xr-x 1 greg None      0 Apr 17 06:04 ..
> -rwxr-xr-x 1 greg None 118558 Jan 28 14:54 libcsirocsa.dll -rwxr-xr-x 1 greg 
> None
> 188815 Apr 17 06:02 libplplotcxx.dll -rwxr-xr-x 1 greg None 512591 Apr 17 
> 06:02
> libplplot-sidyn.dll -rwxr-xr-x 1 greg None 195307 Apr 17 06:02 
> libplplotwxwidgets.dll -
> rwxr-xr-x 1 greg None 120392 Jan 28 14:54 libqsastime.dll -rwxr-xr-x 1 greg 
> None
> 107360 Apr 17 06:02 pltek.exe
>
> greg@Homerw7 MINGW32 /d/bld/mingw32-psxdw2 $ ls -la plplot11-SAVE/bin total
> 1236
> drwxr-xr-x 1 greg None      0 Jan 28 16:53 .
> drwxr-xr-x 1 greg None      0 Apr 17 05:33 ..
> -rwxr-xr-x 1 greg None 118558 Jan 28 14:54 libcsirocsa.dll -rwxr-xr-x 1 greg 
> None
> 512079 Jan 28 14:54 libplplot.dll -rwxr-xr-x 1 greg None 188803 Jan 28 14:54
> libplplotcxx.dll -rwxr-xr-x 1 greg None 195295 Jan 28 14:54 
> libplplotwxwidgets.dll -
> rwxr-xr-x 1 greg None 120392 Jan 28 14:54 libqsastime.dll -rwxr-xr-x 1 greg 
> None
> 106848 Jan 28 14:55 pltek.exe
>
> greg@Homerw7 MINGW32 /d/bld/mingw32-psxdw2 $ ls -la /c/mingw/dll32-psxdw2 |
> grep Jan\ 28
> -rwxr-xr-x 1 greg None   143271 Jan 28 14:54 cairo.dll
> -rwxr-xr-x 1 greg None   118558 Jan 28 14:54 libcsirocsa.dll
> -rwxr-xr-x 1 greg None   512079 Jan 28 14:54 libplplot.dll
> -rwxr-xr-x 1 greg None   188803 Jan 28 14:54 libplplotcxx.dll
> -rwxr-xr-x 1 greg None   195295 Jan 28 14:54 libplplotwxwidgets.dll
> -rwxr-xr-x 1 greg None   120392 Jan 28 14:54 libqsastime.dll
> -rwxr-xr-x 1 greg None    90308 Jan 28 14:54 mem.dll
> -rwxr-xr-x 1 greg None    82507 Jan 28 14:54 null.dll
> -rwxr-xr-x 1 greg None   120304 Jan 28 14:54 ps.dll
> -rwxr-xr-x 1 greg None   108182 Jan 28 14:54 svg.dll
> -rwxr-xr-x 1 greg None   114481 Jan 28 14:54 wingcc.dll
> -rwxr-xr-x 1 greg None   499063 Jan 28 14:55 wxwidgets.dll
> -rwxr-xr-x 1 greg None   100481 Jan 28 14:55 xfig.dll
>
> ------------------------------------------------------------------------------
> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT Develop your
> own process in accordance with the BPMN 2 standard Learn Process modeling best
> practices with Bonita BPM through live exercises
> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=V
> A_SF
> _______________________________________________
> 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.
------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to