That's exactly what I'd like to do, and dlltool (of mingw)  is
supposed to allow that, but it only went so far and left some missing
references, so I just assume it isn't up to the task for such a large
collection.  Hence my second approach was to fudge-in the name by
modifying the output of gcc when the library is created.
  That method works to allow a build, but runtime, it doesn't seem to
operate correctly.  Next try will be to repurpose the use of
${LIB_TAG} from the old Cmake build files and have libplplot10-nd type
names - with corresponding names of the import-libraries.
  I'm shooting in the dark, though, as Its unclear to me that
compatibility will be independent of the options used in the creation.

On Sat, Apr 18, 2015 at 5:28 AM, Arjen Markus <arjen.mar...@deltares.nl> wrote:
> 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