コンテンツにスキップ

Framegrabber API の前提条件#

Framegrabber API を使用してプログラムを作成するには、C/C++ で記述されたプログラムのコンパイルおよびリンクを行う一連のツールが必要です。Microsoft Windows の場合、Framegrabber API は Microsoft C/C++ コンパイラツールチェーンをサポートしており、ほとんどのプロジェクトでは Microsoft Visual Studio Integrated Development Environment (IDE) が使用されます。

Linux オペレーティングシステムを使用する場合、GNU C/C++ および Clang コンパイラツールチェーンがサポートされています。これらは通常、Linux ディストリビューションに付属するパッケージマネージャーを使用してインストールできます。Linux ディストリビューションのドキュメントや、関連するオンラインフォーラムおよびコミュニティを参照してください。

本書のコード例では、通常、少なくとも C++11 標準をサポートする最新の C++ コンパイラを使用することを前提としています。厳密な C コンパイルが必要な場合は、詳細についてプレーン C 使用時の考慮事項の章を参照してください。

環境#

Framegrabber SDK をインストールする際、通常は環境変数 BASLER_FG_SDK_DIR がシステムに登録されます。これは、以降の説明において Framegrabber SDK のインストール場所を示すために使用されます。

Linux オペレーティングシステムを使用する場合、スクリプト setup_siso_env.sh によって環境変数が設定され、システム管理者によってスタートアップスクリプトに追加することができます。ディストリビューションによってスタートアップの方式が異なるため、これは自動的には行われません。システムの起動時やユーザーのログイン時にスクリプトが自動的に呼び出されない場合は、Framegrabber API を使用するアプリケーションのコンパイルと実行の両方を行うために、手動でスクリプトを source 実行する必要があります。

オペレーティングシステムドライバ#

Framegrabber API がコンピュータにインストールされているフレームグラバーにアクセスするには、オペレーティングシステムのドライバーが必要です。Microsoft Windows では、Framegrabber SDK インストーラーを使用してドライバーをインストールできます。Linux オペレーティングシステムを使用する場合、ドライバーは個別にダウンロード、コンパイル、およびインストールする必要があります。ドライバーのコンパイルおよびインストールの詳細については、Linux ドライバーパッケージ内の INSTALL ドキュメントに従ってください。

Microsoft Visual Studio の使用#

Microsoft Visual Studio を使用する場合、新しいプロジェクトを開始し、「Visual C++」カテゴリから「Empty Project」テンプレートを選択できます。生成されるプロジェクトでライブラリを使用するには、まずディレクトリ %BASLER_FG_SDK_DIR%\include をコンパイラで使用されるインクルードパスに追加する必要があります。

情報

ターゲットプラットフォームが使用している Framegrabber SDK プラットフォームと一致していることを常に確認してください。Framegrabber SDK の場合、常に 64 ビットです。

コンパイラ設定

次に、ディレクトリ %BASLER_FG_SDK_DIR%\lib\visualc をリンカーで使用されるライブラリパスに追加する必要があります。

リンカ設定

Microsoft Visual Studio プロジェクトでライブラリにリンクするには、リンカー設定の依存関係にそのライブラリを追加する必要があります。次の例では、ライブラリ fglib5.lib が追加されています。

リンカ設定

依存関係を追加するには、 ドロップダウンメニュー ボタンをクリックして選択します。 <Edit...>.

Linux の使用#

Linux オペレーティングシステムと gcc または clang コンパイラを使用する場合、スイッチ -I $BASLER_FG_SDK_DIR/include によって Framegrabber API のインクルードディレクトリがコンパイラ設定に追加され、スイッチ -L $BASLER_FG_SDK_DIR/lib によって Framegrabber API のライブラリディレクトリがリンカー設定に追加されます。

gcc または clang コンパイラの使用時にライブラリにリンクするには、スイッチ -l が使用されます。たとえば、 -l fglib5 はライブラリ libfglib5.so をリンカーの依存関係に追加します。ソースコードファイル main.cppがあり、このファイルをコンパイルして実行可能ファイルにリンクするには、 SimpleExample、コマンドラインで次のようなコマンドを入力します。

g++ -o SimpleExample -I $BASLER_FG_SDK_DIR/include -L $BASLER_FG_SDK_DIR/lib -l fglib5 main.cpp

CMake の使用#

CMakeは、Microsoft Visual Studioなどの多くの統合開発環境(IDE)向けに、プロジェクト要件の簡潔なテキスト記述からプロジェクトファイルを生成するツールであり、また make.

Framegrabber APIには、CMakeの FIND_PACKAGE コマンドをサポートするファイルが付属しています。ソースコードファイル main.cppと、ファイルをコンパイルして実行可能ファイルにリンクするプロジェクト用のシンプルな CMakeLists.txt ファイルは、 SimpleExample 次のような構成になります。

PROJECT(SimpleExample)

FILE(TO_CMAKE_PATH "$ENV{BASLER_FG_SDK_DIR}" BASLER_FG_SDK_DIR)
LIST(APPEND CMAKE_MODULE_PATH "${BASLER_FG_SDK_DIR}/cmake/modules")

FIND_PACKAGE(FgLib5 REQUIRED)

INCLUDE_DIRECTORIES(
    ${FgLib5_INCLUDE_DIR}
)

SET (PRJ_SOURCES
    SimpleExample.cpp
)

ADD_EXECUTABLE(${PROJECT_NAME} ${PRJ_SOURCES})

TARGET_LINK_LIBRARIES(${PROJECT_NAME}
    ${FgLib5_LIBRARIES}
)

Microsoft Visual Studio での CMake の使用#

ファイル CMakeLists.txt を処理してMicrosoft Visual Studio用プロジェクトを生成するには、GUIツールを使用するか、コマンドラインで次のように入力してプロジェクトファイルを生成します。

cmake -G "Visual Studio 15 2017 Win64" .

make での CMake の使用#

ビルドワークフロー用の Makefile を makeを使用して生成するには、コマンドラインで次のように入力します。

cmake -G "Unix Makefiles" .