Icon-Tutorial Teil 30: Von Icon auf C-Bibliotheken zugreifen

  • Hallo Linux-Freaks, Himbeerfreunde und Forenbewohner,


    hier kommt der 30. Teil meines Icon-Tutorials. Heute geht es darum, wie man innerhalb von Icon-Programmen auf Bibliotheken zugreifen kann, die in einer anderen Programmiersprache geschrieben wurden.


    Vor diesem mir selbstgestellten Thema hatte ich ein wenig Schiss, weil mir dies vor einigen Jahren nicht einmal ansatzweise gelang. Hm, bei dem jetzt angestellten Versuch verlief alles (!) beim ersten Versuch fehlerfrei und erfolgreich.


    Fehlerfrei, na ja, nicht ganz. Bei einem der Testprogramme zur Vorstellung der unterschiedlichen Techniken kam eine Fehlermeldung, die eine kleine Analyse der Dateistrukturen der Icon-Program-Library (IPL) und Inhalte einiger dieser Icon-Dateien erforderlich machte. Ursache war letztlich, dass mittlerweile wohl Funktionen von einer Datei, die nicht mehr existiert, in eine andere Datei gewandert sind.


    Sollte mein Scheitern vor Jahren an so etwas Simplen gelegen haben? :s :wallbash: :@



    Inhalt:
    - Kurze Darstellung der Geschichte der Entwicklung von Programmiersprachen (Zeitraum von immerhin 67 Jahren)
    - Was sind Bibliotheken (Libraries)
    - Vorstellung aller Techniken zum Aufrufen von C-Libraries inkl. Listings
    - Besonderheiten bei der Entwicklung von C-Bibliotheklen für die Nutzung in der Programmiersprache Icon
    - Icon-Externwerte


    Da Icon ein gegenüber C vollkommen anderes Konzept der Behandlung von Datentypen kennt, ist einiges an Theorie zu vermitteln, wie Icons recht variable Datentypen einer in C geschriebenen Funktion übergeben werden können. Ebenso müssen dann die von der C-Funktion erhaltenen Resultate wieder im Icon-Programm ankommen - ansonsten wäre die ganze Übung überflüssig.
    Dies wird über sog. Externwerte realisiert, dem ein eigenes Kapitel gewidmet ist.



    Für die Programmieranfänger: Überspringt dieses Tutorial einfach... Ich habe mich zwar bemüht, diese anspruchsvolle Thematik so verständlich wie nur irgend möglich herüberzubringen. Aber ich befürchte, dass ein Programieranfänger in diesem Teil wahrscheinlich rein gar nichts wird verstehen können.



    Für die anderen viel Spaß - und bis zum nächsten Tutorial, in dem es um die Einbindung von Bibliotheken geht, die in der Programmiersprache C++ geschrieben sind.



    Beste Grüße


    Andreas

    Files

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    • Icon-Tutorials (IDE: Geany) - GPIO-Library - µController-Programmierung in Icon! - ser. Devices - kein Support per PM / Konversation

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

  • Hallo RealSplash,


    Deine Frage hat mit meinem Tutorial rein gar nichts zu tun...


    Kannst Du einen eigenen Thread eröffnen?



    Danke!


    Beste Grüße


    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    • Icon-Tutorials (IDE: Geany) - GPIO-Library - µController-Programmierung in Icon! - ser. Devices - kein Support per PM / Konversation

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

  • Hallo RealSplash,


    also, mach bitte einen neuen Thread auf - dann antworte ich Dir auch.


    Solche Beiträge in einem Tutorial-Thread müllen den nur unnötig zu.


    Beste Grüße


    Andreas


    An die MODS / Admin: Könntet Ihr die Beiträge #2 bis #5 löschen?

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    • Icon-Tutorials (IDE: Geany) - GPIO-Library - µController-Programmierung in Icon! - ser. Devices - kein Support per PM / Konversation

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

    Edited once, last by Andreas ().