Table of contents
Preparation for establishing the SDK development environment
Settings for downloading and installing software
Set up a package management system ‘apt’ in Ubuntu in order to download and install software tools.
Adjust setting if network is connected to Internet via Proxy.(only in the necessary environment)
Edit /etc/apt/apt.conf as follows
Acquire::http::proxy "http://my.http-proxy.co.jp:Port_Number";
Acquire::https::proxy "http://my.https-proxy.co.jp:Port_Number";
Modify http://my.http-proxy.co.jp:PortNumber and http://my.https-proxy.co.jpd epending on your environment.
Update apt package index.
$ sudo apt-get update
Installing tools for host machine
Install tools for the host machine including a toolchain such as compiler, linker or assembler along with the libraries etc. Use apt-get command for the installation.
Install g++ toolchain.
$ sudo apt-get install g++
Install g++-multilib.
$ sudo apt-get install g++-multilib
Install libjpeg package.
$ sudo apt-get install libjpeg-turbo8-dev
Install g++-multilib again.
$ sudo apt-get install g++-multilib
Install packages for executing 32-bit binary over the 64-bit system
$ sudo dpkg –-add-architecture i386 $ sudo apt-get update $ sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386
If fails, do also.
$ sudo apt-get install multiarch-support
Installing modules in accordance with each target
Install Ambarella_Toolchain_Linaro_2018.08 included in AdamAppSDK_DevTools_YYYYMMDD.zip★link★ as a cross compiler to build AdamApps for i-pro ambaCV2X models.
The compiler is located in the following location in AdamAppSDK_DevTool and is Ubuntu 64bit version only.
AdamAppSDK_DevTools_YYYYMMDD/toolchain/Ambarella_Toolchain_Linaro_2018.08
Execute the file as follows to install the cross compiler.
$ sudo apt-get install python3 $ tar xvf Ambarella_Toolchain_Linaro_2018.08.tar.xz $ cd Ambarella_Toolchain_Linaro_2018.08 $ sudo chmod +x ubuntuToolChain-201808 $ ./ubuntuToolChain-201808
Installing Google Chrome Browser
Install Google Chrome Browser from the URL below. The location to install Chrome can be either on Windows or on Ubuntu in VirtualBox.
Google Chrome browser :
Installing Adam Operation UI in Chrome
Install the Adam Operation UI extension for Google Chrome.
Click “menu” -> “More tools” -> “Extensions”, and open “Extensions” page.
Open /tool folder using file manager, then drag and drop “AdamControlExtension” folder on Extensions page.
Enable “Developer mode” on Extensions page if you could not install the extension.
Installing Resource Monitor Extension in Chrome
Install Resource Monitor Extension for Google Chrome. The installation procedure is the same as Adam Operation UI Extension.
Open /tool folder using file manager, then drag and drop “ResourceMonitorExtension” folder on Extensions page.
Please refer to here★link★ for the instruction of Resource Monitor.
How to install AdamAppSDK
Installing AdamAppSDK
Unzip iPRO_CAMERA_SDK_Vx_xx.zip★link★ in any directory on your Development PC as indicated below. (iPRO_CAMERA_SDK file name’s Vx_xx is a value of the AdamAppSDK version).
$ cd <The directory in which a developer is going to install AdamAppSDK> $ unzip iPRO_CAMERA_SDK_Vx_xx.zip $ ls –CF iPRO_CAMERA_SDK_Vx_xx/
The installation is completed.
Getting the Development License
In principle, only encrypted AdamApp can be installed into i-PRO cameras sold in general. A development license is embedded in SDK so that AdamApp that has not been encrypted can be installed into i-PRO camera with specified MAC address. Please obtain a development license file from i-PRO Co., Ltd. then save the file as shown below.
<AdamAppSDK’s Installation Directry>/conf/development.key
Build the sample app
Build the sample application "additional_info_sample_app" and install it on the camera. If sample application works, the construction of the SDK development environment is completed.
Only the minimum necessary steps are described. Please see here★link★ for details on how to develop.
ソースファイルと Makefile を生成する
AdamAppSDK では、AdamApp のソースコードは、
<AdamAppSDK の イ ン ス ト ー ル デ ィ レ ク ト リ >/src/adamapp
以下に置くことを前提としています。
Pythonのソースコードは、
<AdamAppSDK の イ ン ス ト ー ル デ ィ レ ク ト リ >/src/adamapp-py
となります。このチュートリアルではC/C++を用いますので、Pythonを用いた開発方法は★こちら(準備中)★を参照してください。
apt のパッケージ情報を更新します。
その前提に従って、AdamAppSDK 付属のサンプルプログラム(additional_info_sample_app)のソースコード
は、
<AdamAppSDK の イ ン ス ト ー ル デ ィ レ ク ト リ >/src/adamapp/skeleton_sample_app
に配置されています。
このため、新規に AdamApp を作りたい場合は、
<AdamAppSDK のインストールディレクトリ>/src/adamapp/<新規 AdamApp のディレクトリ名
のディレクトリを作成し、その下にソースコード、及び、ヘッダファイル、Makefile を作成・配置する
ようにしてください。
サンプルアプリをビルドする
ビルド用環境設定ファイルとして、setup_env.sh が用意されています。これを source コマンドを用い て読み込むことで、環境設定が完了します。その際、AdamApp を動作させる実行環境に応じて、引数 を指定する必要があります。
指定できる引数は下記の通りです。
i-pro ambaCV2X 用の AdamApp を作成する場合 ipro-ambaCV2X
下記に、それぞれの場合の詳細な手順を示します。
※[実機環境(i-pro ambaCV2X モデル)実行用の AdamApp を作成する場合]
$ cd <directory of installed AdamAppSDK> $ source setup_env.sh ipro-ambaCV2X ***** /usr/local/linaro-aarch64-2018.08-gcc8.2/bin/aarch64-linux-gnu-gcc found. ***** PF_BASEDIR = /home/user/adamappsdk BUILD_TARGET = ipro-ambaCV2X TARGET_FOR_ADAM = ambaCV2X TARGET_ARCH = aarch64-linux-gnu VERBOSE = 0 PATH = /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
make の実行(AdamApp のビルド&パッケージの作成)
続いて、AdamApp(追加アプリ)のビルドとパッケージ作成を行うために、make を実行します。
make を実行すると、ビルドとパッケージの作成を一気に行います。
make が成功した場合には、additional_info_sample_app ディレクトリ直下に、
AdditionalInfoSampleApp :additional_info_sample_app の実行プログラム
AdditionalInfoSampleApp.zip :additional_info_sample_app のパッケージ
AdditionalInfoSampleApp.ext :additional_info_sample_app.zip を Base64 化したもの
の 3 つのファイルが生成されます。
$ cd <directory of installed AdamAppSDK> $ cd src/adamapp/skeleton_sample_app $ make
サンプルアプリの動作確認
作成した「AdditionalInfoSampleApp.ext」をカメラにインストールして動作確認します。
ここでは下記のようにWebブラウザからカメラにアクセスし、インストールを試します。
画像の緑枠からインストールします。ファイルの選択ボタンを押下し作成した
「AdditionalInfoSampleApp.ext」を選択し、インストールを実行します。
インストールが完了したら、画像の赤枠ボタンを押下しサンプルアプリの動作を確認します。
アプリ画面に以下の文字列が表示されていれば開発環境の構築は成功です。
{"r_appDataType":"0","r_appData":"e3tMYW5ndWFnZTowfX0="}