From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.36.160.7 with SMTP id o7mr10429226ite.14.1507737059336; Wed, 11 Oct 2017 08:50:59 -0700 (PDT) X-Received: by 10.157.39.194 with SMTP id c60mr70623otb.6.1507737059312; Wed, 11 Oct 2017 08:50:59 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!border1.nntp.ams1.giganews.com!nntp.giganews.com!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!peer02.am4!peer.am4.highwinds-media.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!k70no595611itk.0!news-out.google.com!u132ni891ita.0!nntp.google.com!k70no595608itk.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Wed, 11 Oct 2017 08:50:58 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=2607:fb90:6853:94c8:c45d:3471:75ba:2a8e; posting-account=AvekzAoAAABj-TclKcOWQmXwA49MFPGX NNTP-Posting-Host: 2607:fb90:6853:94c8:c45d:3471:75ba:2a8e References: <9885a3fd-8ffa-4076-ba1f-db2f8035e0dc@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: Re: The best possible way to call a function in a shared library From: John Smith Injection-Date: Wed, 11 Oct 2017 15:50:59 +0000 Content-Type: text/plain; charset="UTF-8" X-Received-Body-CRC: 3602370004 X-Received-Bytes: 2223 Xref: news.eternal-september.org comp.lang.ada:48428 Date: 2017-10-11T08:50:58-07:00 List-Id: 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 (); 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. =================================== In the above post.