Ich versuche, eine Bibliotheksdatei mit dem Namen libmathematica.a in gcc aufzunehmen, damit sie im ausführbaren Beispiel verknüpft wird.
Ich versuche dies mit gcc main.c libmathematica.a -o example
Hinweis: Ich muss dies mit gcc tun, da ld es nicht richtig mit den richtigen Systembibliotheken verknüpfen wird
Aber ich bekomme: fatal error: mathematica.h: No such file or directory
, was seltsam ist, weil mathematika.h in der Bibliothek ist.
Können Sie mir helfen?
Eine Header-Datei kann nicht in der Bibliothek sein. Es muss an einem bestimmten Ort vorhanden sein und Sie müssen diesen Ort mit dem Compiler-Flag -I
angeben:
Wenn sich die Headerdatei in dem Verzeichnis befindet, in dem sich main.c
befindet, oder in einem Unterverzeichnis, dann stellen Sie sicher, dass Sie Anführungszeichen und keine spitzen Klammern in der #include
-Direktive verwenden.
Das Problem wäre in Ihrer Quelldatei. Wenn die Mathematica.h im System Verzeichnis enthält, dann würden Sie #include <mathematica.h>
verwenden und wenn es in einem lokalen Verzeichnis wäre, würden Sie etwas wie #include "libs/mathematica.h"
verwenden.