masa.yamaguchi
2024年12月2日 16時07分
==========
製品型番:Aramadillo-610
ABOSバージョン:3.20.3-at.3
カーネルバージョン: 5.10.226
その他:ATDE9を使用
==========
ATDEによるプロジェクト作成時、添付資料のプロジェクト作成を選択できます(プロジェクト作成.ping)( c/python/shell)
その場合、1つのコンテナで、c言語/python/shell プログラムを共存させたい場合はどのような手順で行うことになりますでしょうか。
( shellでプロジェクトを作成して、shファイルからpyファイルやビルド後のc実行ファイルを直接呼び出す形になりますでしょうか)
ファイル | ファイルの説明 |
---|---|
プロジェクト作成.png |
コメント
at_satoshi.ohta
masa.yamaguchi
at_satoshi.ohta
2024年12月2日 18時13分
太田です。
いつもお世話になっております。
python, shellscript, C言語を共存させることを想定してプロジェクトを作っていませんでしたが、行うとすればC言語のプロジェクトを使用するのがいいかと思います。
C言語のプロジェクトであれば、[Generate development swu] または [Generate release swu] 実行時に、作成したC言語のソースファイルをmakeして実行ファイルも作成することができます。
その場合、shellscriptやpythonのファイル(.shファイルや.pyファイル)はmy_project/app/buildディレクトリに配置してください。
my_project/app/buildディレクトリはコンテナの中の/vol_appにマウントされます。
(ここでのmy_projectは作成したC言語のプロジェクトです)
pythonやC言語の実行ファイル(ここではhoge.py, mainとします)を呼び出すshellscriptのスクリプトをここではhoge.shとすると、
my_project/config/app.confの最終行を以下のように修正してください。
hoge.shの中身は例えば以下のようにします。
このようにすれば、hoge.sh(シェルスクリプト)からhoge.py(Pythonのファイル)とmain(C言語の実行ファイル)を呼び出せるはずです。
また、C言語のプロジェクトでpythonを実行するには、以下の対応が必要です。
* my_project/container/Dockerfileの修正
以下の★がついている行を追記してください。
* my_project/container/resources/requirements.txtの作成
作成したrequirements.txtに必要なpythonのパッケージを記述してください。
* my_project/container/packages.txtの修正
以下の★がついている行を追記してください。
実際にこちらで試せたわけではないですが、まずはこれで試してみて頂ければ幸いです。
どうぞよろしくお願いいたします。