0

Allegro5を Windows 上のFreeBasicで動作させる方法が見つかりません。 FreeBASIC-1.05.0-win32.exe をダウンロードしてインストールしました。 Allegro バイナリ allegro-5.0.10-mingw-4.7.0 をダウンロードしました。 インストールされている fbc のバージョンはスタンドアロンのものです。allegrolibs フォルダーを作成し、これらのライブラリを Allegro ディストリビューションから allegrolibs にコピーしました。


  liballegro_5.0.10-md.a  
  liballegro_font-5.0.10-md.a  
  liballegro_ttf-5.0.10-md.a  

Allegro ディストリビューションから必要な allegro dll を examples/graphics/allegro に追加しました。

  allegro_font-5.0.10-md.dll  
  allegro_ttf-5.0.10-md.dll  
  allegro-5.0.10-md.dll

コマンド ラインから fbc を実行し、examples/graphics/allegro5 から hello.bas をコンパイルしようとしました。

 fbc -s gui -p allegrolibs examples/graphics/allegro5/hello.bas

プログラムは問題なくコンパイルされました。
ただし、実行時に hello.exe で次のエラーが表示されます。

  The program can't start because libgcc_s_dw2_1.dll is missing from your computer. 

libgcc_s_dw2_1.dll を FreeBASIC\bin\win32 から hello.exe が存在するフォルダーにコピーし、次を実行します。

  The program can't start because libstdc++-6.dll is missing from your computer.  

ming4.7.0 バイナリ ディストリビューションから libstdc++-6.dll を追加し、次を実行します。

  The program can't start because libgcc_s_sjlj-1.dll is missing from your computer.  

ming4.7.0 バイナリ ディストリビューションから libgcc_s_sjlj-1.dll を追加し、次を実行します。

  The program can't start because libwinpthread-1.dll is missing from your computer.  

ming4.7.0 バイナリ ディストリビューションから libwinpthread-1.dll を追加し、次を実行します。

  The procedure entry point __gxx_personality_v0 could not be located
  in the dynamic link library libstd++-6.dll.

この時点で私は立ち往生しています。私が間違っているのは何ですか?同じことを試して解決できた人は、この問題を喜んで手伝ってくれますか?

4

1 に答える 1

0

Windows 用の allegro-5.0.10-mingw-4.7.0 バイナリは、mingw-4.7.0 コンパイラでコンパイルされました。
freeBASIC は mingw-w64 コンパイラでコンパイルされました。ただし、動的リンクに関する限り、それらは連携できます。Windows allegro-5.0.10-mingw-4.7.0 のバイナリ パッケージには、他にも 2 つのファイルが含まれています。

allegro-5.0.10-monolith-mt.dll
liballegro-5.0.10-monolith-mt.a

それらのいずれかを使用して、Allegro 5 ライブラリを exe にリンクできます
。allegro-5.0.10-monolith-mt.dll または liballegro-5.0.10-monolith-mt.a を allegrolib フォルダーにコピーします。allegro.bi、allegro_font.bi、allegro_ttf.bi を変更して、35 行目を次のように置き換えます。

#inclib "allegro-5.0.10-monolith-mt" 

コンソールから実行します。

fbc -s gui -p allegrolib examples/graphics/allegro5/hello.bas

allegro-5.0.10-monolith-mt.dll は、hello.exe と同じフォルダーに配置する必要があります。

于 2016-11-08T11:15:09.973 に答える