0

Linux で SFML ライブラリの標準的な例を実行しようとしています。Github から Rep. をダウンロードし、CMake でビルドしてインストールしました。静的/共有デバッグ用に 2 つのライブラリを構築し、静的/共有リリース用に 2 つのライブラリを構築しました。

問題は、ターミナルでのコンパイルについてあまり知りません。SFML Web サイトで見つけたコマンドを使用します。

g++ -c test.cpp

g++ test.o -o sfml-app -lsfml-graphics -lsfml-window -lsfml-system

それは機能します。./sfml-app をダブルクリックして SFML アプリケーションを実行できます。しかし、Linux を使用している (SFML をインストールしていない) 人は使えません。コンパイラが静的ライブラリを使用していないためだと思います。もちろん - どうやって彼はできたのですか?コマンドには書いてありません。しかし、私はそれを書く方法も知りません。

静的リリース ライブラリの名前は、たとえば

libsfml-graphics-sa

libsfml-window-sa

libsfml-システム-sa

彼が物をリンクするときにこのライブラリを使用していることをg ++で何を書く必要がありますか?

4

1 に答える 1

1

ライブラリの静的バージョンに対してプログラムをリンクするには、次のようにします。

g++ test.o -o sfml-app libsfml-graphics-s.a libsfml-window-s.a libsfml-system-s.a

(もちろん、これらのファイルがローカル ディレクトリにあると仮定します。)

于 2013-07-15T19:53:23.627 に答える