ftokioka
2025年4月20日 11時37分
A6E上でC言語のアプリケーションを動かす場合、下記とありましたが、A9の場合、どうなりますでしょうか?
wget https://armadillo.atmark-techno.com/files/downloads/armadillo-iot-a6e/t…
tar xf build-rootfs-v3.16-at.7.tar.gz
sudo docker run -it --name a6edev --platform "linux/armhf" --mount type=bind,src="$PWD",target=/home/builder/atmark alpine-3.16-armv7 /bin/sh
コメント
ftokioka
$ tarbuild-rootfs-v3.21-at.7.tar.gz
$ cd build-rootfs-v3.21-at.7/submodules/containers
$ sudo ./build.sh
...
展開して、コンテナimageを確認しましたが、入らない状況でした。
atmark@atde9:~/build-rootfs-v3.21-at.7/submodules/containers$ sudo ./build.sh
STEP 1: FROM docker.io/amd64/alpine:3.21
STEP 2: RUN apk update && apk upgrade && apk add alpine-sdk && rm -f /var/cache/apk/*
--> Using cache 8aaff973a3d29498f3de5210690b0f3ac2f64f17a4e1d2940dfadb7baf808562
--> 8aaff973a3d
STEP 3: RUN adduser -D builder && adduser builder abuild
--> Using cache 9a0cb487f7e71f1705b6c115f5d4368c08e8c4185a96f82fc8b0ef409ed2e181
--> 9a0cb487f7e
STEP 4: ARG at_version
--> Using cache c648dff9a5d2ee48dd0d9cb6bc3f0795ec89e7a1f0da9e8ecc60859b45c9151e
--> c648dff9a5d
STEP 5: RUN sed -i -e "1i@atmark http://download.atmark-techno.com/alpine/v${at_version}/atmark" -e "1ihttp://download.atmark-techno.com/alpine/v${at_version}/atmark" /etc/apk/repositories
--> Using cache 52b26b8cf96894522d7c641825720533c117d8ce797e08b5ddfa1a49e256a672
--> 52b26b8cf96
STEP 6: COPY atmark-601a0e69.rsa.pub /etc/apk/keys/
--> Using cache 7b475f0ec3351c314038417c7a357ebb914546c4ec11e8e221c61d6f979d98b2
--> 7b475f0ec33
STEP 7: COPY atmark-62b116af.rsa.pub /etc/apk/keys/
--> Using cache fb4e7c579e020228a2440e06e5eb0f939ff3f1015896fa6dfd63fdceeea0ab49
STEP 8: COMMIT alpine-3.21-x86_64
--> fb4e7c579e0
fb4e7c579e020228a2440e06e5eb0f939ff3f1015896fa6dfd63fdceeea0ab49
STEP 1: FROM docker.io/arm32v7/alpine:3.21
STEP 2: RUN apk update && apk upgrade && apk add alpine-sdk && rm -f /var/cache/apk/*
--> Using cache 26dc5e2e3715b9e26f509e6cf194ebef87c9a9ccfbcdf9ed725fd19a56b31f2a
--> 26dc5e2e371
STEP 3: RUN adduser -D builder && adduser builder abuild
--> Using cache dd3ffbab1086a24771a4a71c2c604ca611fc0c721d2308293faa89846166e088
--> dd3ffbab108
STEP 4: ARG at_version
--> Using cache 9de8c5fb63187e72a59f871a3db534db3d97322a8462db36243c77b58a8edd9e
--> 9de8c5fb631
STEP 5: RUN sed -i -e "1i@atmark http://download.atmark-techno.com/alpine/v${at_version}/atmark" -e "1ihttp://download.atmark-techno.com/alpine/v${at_version}/atmark" /etc/apk/repositories
--> Using cache 19fe65908c650cb52cb14c257dff36a3beb7a112758eb16651d6194481f609b4
--> 19fe65908c6
STEP 6: COPY atmark-601a0e69.rsa.pub /etc/apk/keys/
--> Using cache 65e2c8df1e4faf5981ee7d8265c9609f13ac267987558cf0de089244569b64d8
--> 65e2c8df1e4
STEP 7: COPY atmark-62b116af.rsa.pub /etc/apk/keys/
--> Using cache 30c2f02a181095de00858d44c02833cf6072d3315ae7181a0056eb5129fdfb44
STEP 8: COMMIT alpine-3.21-armv7
--> 30c2f02a181
30c2f02a181095de00858d44c02833cf6072d3315ae7181a0056eb5129fdfb44
STEP 1: FROM docker.io/arm64v8/alpine:3.21
STEP 2: RUN apk update && apk upgrade && apk add alpine-sdk && rm -f /var/cache/apk/*
--> Using cache 6a95245c91ed71c90e4c4ae972143d5a569b76635938eda52b9c5685d943326e
--> 6a95245c91e
STEP 3: RUN adduser -D builder && adduser builder abuild
--> Using cache 335d708af3e5357aea3b8a43c3d8d6ac0715545163f2e5a7f2c5680664162da8
--> 335d708af3e
STEP 4: ARG at_version
--> Using cache 7e6bcc161563f6f2f496ff78a5d1a2c1c041b999916f5f45326fc227bd3dedd8
--> 7e6bcc16156
STEP 5: RUN sed -i -e "1i@atmark http://download.atmark-techno.com/alpine/v${at_version}/atmark" -e "1ihttp://download.atmark-techno.com/alpine/v${at_version}/atmark" /etc/apk/repositories
--> Using cache 5a58208a1d78f6433ae372dfd5f0c4ffcae515df533c2646b84f7811aab86d08
--> 5a58208a1d7
STEP 6: COPY atmark-601a0e69.rsa.pub /etc/apk/keys/
--> Using cache 4ecb8d4b0ccab20c1532cc101795d5b43ae5e57a1317726cd75406e0d3486615
--> 4ecb8d4b0cc
STEP 7: COPY atmark-62b116af.rsa.pub /etc/apk/keys/
--> Using cache 435b40e21e8763170c85a0ec8c69aa1dd2bbfa78c8d4741128839be5b5ad7ac5
STEP 8: COMMIT alpine-3.21-aarch64
--> 435b40e21e8
435b40e21e8763170c85a0ec8c69aa1dd2bbfa78c8d4741128839be5b5ad7ac5
atmark@atde9:~/build-rootfs-v3.21-at.7/submodules/containers$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
atmark@atde9:/etc$ cat debian_version
11.11
バージョンの関連で入らないのですか?それともサポートされなくなりましたか?
よろしくお願い申し上げます。
> アットマークテクノの古賀です。
>
> ftokiokaさん:
> >A6E上でC言語のアプリケーションを動かす場合、下記とありましたが、A9の場合、どうなりますでしょうか?
> >wget https://armadillo.atmark-techno.com/files/downloads/armadillo-iot-a6e/t…
> >tar xf build-rootfs-v3.16-at.7.tar.gz
> >sudo docker run -it --name a6edev --platform "linux/armhf" --mount type=bind,src="$PWD",target=/home/builder/atmark alpine-3.16-armv7 /bin/sh
>
> この手順は、A6E 上で C 言語のアプリケーションを動かすというよりは、A6E の ABOS 上でも動作できる C 言語アプリケーションのビルド環境を、 ATDE 上にセットアップするための手順ですね。
> おそらく、このフォーラムの、以下の質問スレッドのコメントをご覧になったのかと思います:
> https://armadillo.atmark-techno.com/forum/armadillo/14009#comment-12363
>
> 現在は、VS Code の ABOSDE (ABOS Development Environment) エクステンションを使う手順を推奨しており、マニュアルで説明していますので、そちらをご覧になってみてください:
> https://manual.atmark-techno.com/armadillo-iot-a9e/armadillo-iotg-a9e_p…
>
> なお、ご質問の手順を A9E 用に行う場合は、次のように変更してください:
>
> ・wget でダウンロードする build-rootfs を、A9E 用のダウンロードページからリンクが張られているものに置き換える:
> https://armadillo.atmark-techno.com/resources/software/armadillo-iot-a9…
> :このページにある「Alpine Linuxルートファイルシステムビルドツール」のリンク先(※現時点では https://armadillo.atmark-techno.com/files/downloads/armadillo-iot-a9e/t…)を指定してください。
>
> ・tar で展開するアーカイブのファイル名を、wget でダウンロードするファイルの名前に合わせて変える。
>
> ・docker run コマンドの --platform オプションの引数を "linux/arm64" に変え、コンテナイメージ名は、alpine-x.xx-aarch64 のような名前のもの(ARM 64bit 用のコンテナイメージ)に変える。
> --name 引数も、a9e であることが分かるものに変えてください。
>
> いかがでしょうか?
at_shinya.koga
アットマークテクノの古賀です。
ftokiokaさん:
>$ tarbuild-rootfs-v3.21-at.7.tar.gz
>$ cd build-rootfs-v3.21-at.7/submodules/containers
>$ sudo ./build.sh
>...
>展開して、コンテナimageを確認しましたが、入らない状況でした。
...
atmark@atde9:~/build-rootfs-v3.21-at.7/submodules/containers$ sudo docker images
>REPOSITORY TAG IMAGE ID CREATED SIZE
>
>atmark@atde9:/etc$ cat debian_version
>11.11
>
>バージョンの関連で入らないのですか?それともサポートされなくなりましたか?
最新の ATDE 9 イメージ(atde9-amd64-20240925.ova)を VirtualBox でインポートして作った仮想マシンで、同じ状況になることを確認しました。
build-rootfs のバージョンによるものですね。
デフォルトでは、docker のコンテナイメージが作られませんので、次のようにしてみてください:
$ sudo env DOCKER=docker BUILDARCHS=aarch64 VERSION=3.21 ./build.sh
これで、 alpine-3.21-aarch64 という名前の docker コンテナイメージが生成されます。
コンテナイメージが生成されたら、次のようにしてみてください:
$ cd ~/[作業用ディレクトリ] $ sudo docker run -it --name a9edev --platform "linux/arm64" --mount type=bind,src="$PWD",target=/home/builder/atmark alpine-3.21-aarch64 /bin/sh (※以下は、コンテナ内) # su builder $ cd ~/atmark
なお、ABOS 用のアプリケーション開発については、先のコメントでも申しましたように、VS Code の ABOSDE エクステンションを使う手順を推奨しています。
こちらの手順もご覧になって頂ければと思います。
>>現在は、VS Code の ABOSDE (ABOS Development Environment) エクステンションを使う手順を推奨しており、マニュアルで説明していますので、そちらをご覧になってみてください:
>> https://manual.atmark-techno.com/armadillo-iot-a9e/armadillo-iotg-a9e_p…
at_shinya.koga
2025年4月21日 6時11分
アットマークテクノの古賀です。
ftokiokaさん:
>A6E上でC言語のアプリケーションを動かす場合、下記とありましたが、A9の場合、どうなりますでしょうか?
>wget https://armadillo.atmark-techno.com/files/downloads/armadillo-iot-a6e/t…
>tar xf build-rootfs-v3.16-at.7.tar.gz
>sudo docker run -it --name a6edev --platform "linux/armhf" --mount type=bind,src="$PWD",target=/home/builder/atmark alpine-3.16-armv7 /bin/sh
この手順は、A6E 上で C 言語のアプリケーションを動かすというよりは、A6E の ABOS 上でも動作できる C 言語アプリケーションのビルド環境を、 ATDE 上にセットアップするための手順ですね。
おそらく、このフォーラムの、以下の質問スレッドのコメントをご覧になったのかと思います:
https://armadillo.atmark-techno.com/forum/armadillo/14009#comment-12363
現在は、VS Code の ABOSDE (ABOS Development Environment) エクステンションを使う手順を推奨しており、マニュアルで説明していますので、そちらをご覧になってみてください:
https://manual.atmark-techno.com/armadillo-iot-a9e/armadillo-iotg-a9e_p…
なお、ご質問の手順を A9E 用に行う場合は、次のように変更してください:
・wget でダウンロードする build-rootfs を、A9E 用のダウンロードページからリンクが張られているものに置き換える:
https://armadillo.atmark-techno.com/resources/software/armadillo-iot-a9…
:このページにある「Alpine Linuxルートファイルシステムビルドツール」のリンク先(※現時点では https://armadillo.atmark-techno.com/files/downloads/armadillo-iot-a9e/t…)を指定してください。
・tar で展開するアーカイブのファイル名を、wget でダウンロードするファイルの名前に合わせて変える。
・docker run コマンドの --platform オプションの引数を "linux/arm64" に変え、コンテナイメージ名は、alpine-x.xx-aarch64 のような名前のもの(ARM 64bit 用のコンテナイメージ)に変える。
--name 引数も、a9e であることが分かるものに変えてください。
いかがでしょうか?