comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: The best possible way to call a function in a shared library
Date: Mon, 2 Oct 2017 09:30:54 +0200
Date: 2017-10-02T09:30:54+02:00	[thread overview]
Message-ID: <oqspve$d2q$1@gioia.aioe.org> (raw)
In-Reply-To: 9885a3fd-8ffa-4076-ba1f-db2f8035e0dc@googlegroups.com

On 01/10/2017 23:06, John Smith wrote:
> I've recently come across this example on rosettacode:
> http://rosettacode.org/wiki/Call_a_function_in_a_shared_library#Ada
> 
> I have a project that's building a DLL. There is a neighboring
> project file that builds an executable and needs to make use of the
> DLL. Is it possible to include the DLL in the application through the
> 2nd project file?

DLL is not included, it is loaded/linked/mapped to.

[ In order to include DLL you must extract object files from there, if 
that works, then put them into a static library and use that instead. ]

In the scenario when the DLL is to be linked to at build time and loaded 
automatically at the application start, you create two library project 
files. One is used to build the library itself. Another is to use the 
library in another project. See GNAT project files.

Essential for "build" project is

    for Library_Interface use (<units-list>);

which determines which Ada units get exported out of the library.

For the "use" project it is

    for Externally_Built use "true";

telling that the library is already built.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de


  parent reply	other threads:[~2017-10-02  7:30 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-01 21:06 The best possible way to call a function in a shared library John Smith
2017-10-01 23:51 ` John Smith
2017-10-02  7:15   ` Dmitry A. Kazakov
2017-10-02 11:12     ` John Smith
2017-10-02 11:32       ` Dmitry A. Kazakov
2017-10-02 22:44         ` John Smith
2017-10-03  7:14           ` Dmitry A. Kazakov
2017-10-03 11:32             ` John Smith
2017-10-03 13:43               ` Dmitry A. Kazakov
2017-10-03 23:28                 ` John Smith
2017-10-04  2:10                   ` John Smith
2017-10-04  8:10                     ` Dmitry A. Kazakov
2017-10-04 11:23                       ` John Smith
2017-10-04 11:48                         ` Dmitry A. Kazakov
2017-10-04 11:54                           ` John Smith
2017-10-04 11:59                             ` Dmitry A. Kazakov
2017-10-04 12:04                               ` John Smith
2017-10-04 12:47                                 ` Dmitry A. Kazakov
2017-10-04 15:03                   ` Simon Wright
2017-10-04 23:24                     ` John Smith
2017-10-05 23:55                       ` John Smith
2017-10-06  2:21                         ` John Smith
2017-10-06  6:46                           ` Dmitry A. Kazakov
2017-10-06 11:30                             ` John Smith
2017-10-06 13:26                               ` Dmitry A. Kazakov
2017-10-06 18:57                                 ` Simon Wright
2017-10-06 19:18                                   ` Dmitry A. Kazakov
2017-10-07  2:47                                 ` John Smith
2017-10-07  3:57                                 ` John Smith
2017-10-07  8:25                                   ` Dmitry A. Kazakov
2017-10-07 11:52                                     ` Simon Wright
2017-10-07 12:57                                     ` John Smith
2017-10-07 13:19                                       ` Dmitry A. Kazakov
2017-10-07 13:28                                         ` John Smith
2017-10-10  3:39                                         ` John Smith
2017-10-10 13:15                                           ` Dmitry A. Kazakov
2017-10-11  0:38                                             ` John Smith
2017-10-11  1:18                                               ` Anh Vo
2017-10-11  1:22                                                 ` John Smith
2017-10-11  1:40                                                   ` Anh Vo
2017-10-11  7:08                                               ` Dmitry A. Kazakov
2017-10-11 12:09                                                 ` John Smith
2017-10-11 13:43                                                   ` Dmitry A. Kazakov
2017-10-11 22:25                                                   ` Randy Brukardt
2017-10-11 22:57                                                     ` John Smith
2017-10-13  0:38                                                       ` John Smith
2017-11-06  6:25                                                       ` Robert Eachus
2017-10-03 14:22               ` Dennis Lee Bieber
2017-10-02  7:30 ` Dmitry A. Kazakov [this message]
2017-10-11 14:31   ` John Smith
2017-10-11 15:50     ` John Smith
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox