0

GLFW機能をAdaにインポートするには?

GNAT GPS をコンパイラとして使用し、次のフォルダー構造を持ちます。

  • test.adb
  • test.gpr
  • 置き場
  • オブジェクト
  • libglfw3.a
  • ライブラリ
    • libglfw3.a

test.gpr

project test is
    for Source_Dirs use ("");
    for Main use ("test.adb");
    for Object_Dir use "obj";
    for Library_Dir use "lib";
    for Exec_Dir use "bin";
end test;

test.adb

with Interfaces.C;
with Ada.Text_IO;

procedure test is
    pragma Linker_Options("-lglfw3");
    pragma Linker_Options("-lgdi32");
    pragma Linker_Options("-lopengl32");
    function Init return Interfaces.C.int;
    pragma Import(C,Init,"glfwInit");
    success : Interfaces.C.int;
begin
   success := Init;
   Ada.Text_IO.Put_Line(success'Img);
end test;

gprbuild -P test.gprおよび出力を使用してコンパイルします。

p:/gnat/2014/bin/../libexec/gcc/i686-pc-mingw32/4.7.4/ld.exe: cannot find -lglfw3

したがって、 gdi32winmmopengl32が見つかったのは、それらが既に PC にインストールされているためだと考えていました。それらが必要かどうかはわかりませんが、安全のために。glfw3 lib が見つからないため、Linker_Option を正しい方法で使用しているかどうか、または libglfw3.a ファイルをどこに配置するかがわかりませ。c ライブラリにリンクする良い方法はありますか?

4

1 に答える 1