AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen FreePascal FreePascal Schlüsselwort "exports" wird in Unit ignoriert

Schlüsselwort "exports" wird in Unit ignoriert

Ein Thema von Benedikt Magnus · begonnen am 4. Sep 2019
Antwort Antwort
Benedikt Magnus

Registriert seit: 6. Jul 2012
Ort: Bonn
190 Beiträge
 
FreePascal / Lazarus
 
#1

Schlüsselwort "exports" wird in Unit ignoriert

  Alt 4. Sep 2019, 21:59
Hallo,

ich habe folgende zwei Dateien:

ExportTest.pas:
Delphi-Quellcode:
library ExportTest;

{$mode objfpc}
{$H+}

uses
  ExportUnit;

procedure MainTest();
begin
  WriteLn('MainTest');
end;

exports
  MainTest;

end.
ExportUnit.pas:
Delphi-Quellcode:
unit ExportUnit;

{$mode objfpc}
{$H+}

interface

implementation

procedure UnitTest();
begin
  WriteLn('UnitTest');
end;

exports
    UnitTest;

end.
Compiler ist Free Pascal, Betriebssystem Ubuntu 18.04.

Wenn ich diese Bibliothek nun kompiliere, ist die Prozedur MainTest erfolgreich exportiert worden und kann von einem Programm heraus aufgerufen werden. Ein Aufruf der Prozedur UnitTest scheitert hingegen. Wenn ich mit
Code:
nm -D libUnitTest.so
nachsehe, findet das tatsächlich auch nur MainTest als einzige exportierte Prozedur.
Entferne ich den Abschnitt exports aus der ExportTest.pas, so wird gar keine Prozedur mehr gefunden.
Die einzige Möglichkeit, die Prozedur UnitTest erfolgreich zu exportieren, ist sie in interface zu verweisen und unter exports in der ExportTest.pas mit aufzulisten, was aber natürlich ziemlich unschön ist.

Weiß jemand, ob ich etwas falsch mache? Oder ist diese Funktion einfach nicht im FPC (für Linux?) implementiert und der Exportabschnitt wird stillschweigend ignoriert?
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:21 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz