投稿

10月, 2023の投稿を表示しています

Androidとkivyとcamera

イメージ
なんかスマホアプリ作るならカメラ使えるべきだろうと公式サンプルを動かす事にした 記述 2023年10月24日 変更 2023年11月10日 出力画像へのアクセス方法 Camera Example — Kivy 2.2.1 documentation まあ覚悟はしてたけどすんなりは動かなかった Androidで動かすにはPermission要求が必要 apk作成にbuildozerを使用しているが記述ルールが不明で辛い ググって多種多様な話を纏めてトライ&エラー 正解はUserGroupやDiscordに参加なんだろうと思う 英語の出来ないオツムなのが悪いので苦労するのは仕方ない 結果としてbuildozer.specとmain.pyの両方でPermission要求する事で動いた 本当に正しいかは判らない 動くには動いたがサンプルの画像みたいに画像は最大化されないし向きは縦横合ってない サンプルはmacっぽいのでmacなら正常動作するのか? 面白い事にWindowsSubsystemForAndroidの方は正常動作 保存した画像がappフォルダ直下でユーザーが触れないのはサンプルだからで済ます所か 動きさえすれば後はパラメータ指定すれば良いのだろうからひとまずOK adb shellでデバイスに接続してrun-asコマンドでファイル操作ができる 遥か昔にAndroidアプリを作ってみた時に使った気がする 昔過ぎて忘れてた appフォルダ直下は不便すぎるのでユーザーが触れるフォルダにしようとしたらまたひと悶着 ユーザーフォルダを取得する方法が判らない とりまplyerを使えば取れるのは確認済なのだがサンプルを大げさにしたくなかったのでハードコーディング camera.export_to_png("/storage/emulated/0/DCIM/""IMG_{}.png".format(timestr)) 共有フォルダの取得はp4aのドキュメントに書いてあった https://python-for-android.readthedocs.io/en/latest/apis/ from android.storage import primary_external_storage_path primary_ext_storage

Windows11とkivyとpygame

イメージ
最新環境で実行しようとしたらできなかった件 記述 2023年10月24日 python3.12でkivyをインストールしようとしたらエラー ERROR: No matching distribution found for kivy_deps.gstreamer_dev~=0.3.3 対応:python3.10にダウングレード ※既に入っていたのが3.10だっただけで3.11でもOK 実運用としては3.10と3.12の環境は共存 vscodeでインタプリター選択するなりコマンドでバージョン指定するなりしている python3.10でkivyとpygameを使おうとしたらエラー RuntimeError: Dynamic linking causes SDL downgrade! (compiled with version 2.28.3, linked to 2.26.4) 対応:pygameを2.5.2から2.4.0にダウングレード > pip uninstall pygame > pip install pygame==2.4.0 ※外部ライブラリの使用バージョンが変わるのはメジャー単位と想定して2.4.0を選択 別にこれでなければとかは無い、適当に選んでたまたま動いただけ 存在するバージョン番号は > pip install pygame== で確認 python手軽に書けてたーのしー! してるので環境依存とか依存関係とか多発して欲しくないなぁ 今回windowsは関係ないかもしれないが未確認 →Windows サブシステム for Androidではpygameのバージョン指定なしで動いた --

Windows11とpython3.12とpylsd

イメージ
windows11上のpython3.12でpylsdを使うために > pip install pylsd するとインストールは出来るがlsd()が動かない 代替として提供されている > pip install orcd-fork-pylsd をインストールしようとするとエラーがでてインストールできない ここを読むとオリジナルの不具合がfork版で修正されているらしい PyLSD 0.0.2 の修正 on Python 3.9.1 https://mitsuharua.blogspot.com/2021/02/pylsd-02-on-python-391.html しかしながらfork版がインストールできないのでオリジナルにパッチを適用 しようとしたがエラーがでてパッチが完了しなかった パッチには詳しくないのでパッチのエラー対策は諦めて パッチの内容を手作業で反映した 具体的にはlsd.pyを修正 from bindings.lsd_ctypes import * を from .bindings.lsd_ctypes import * に lsdlib.lsdGet(src, ctypes.c_int(rows), ctypes.c_int(cols), temp) を #lsdlib.lsdGet(src, ctypes.c_int(rows), ctypes.c_int(cols), temp) enc_temp = temp.encode('utf-8') cstr_temp = ctypes.create_string_buffer(enc_temp) lsdlib.lsdGet(src, ctypes.c_int(rows), ctypes.c_int(cols), cstr_temp に このファイル以外のパッチは正常に適用されていた pylsdの管理状況にもやっとはするが楽はしたいので動けばいいや論を適用する pylsdの場所はpipで確認 > pip show pylsd Name: pylsd Version: 0.0.2 Summary: pylsd is the python bindings for LSD - Line Segment Detector Home-page: https://github.

Raspberry pi 4上のUbuntu22.04にqemuをインストール

イメージ
記述 2023年10月15日 依存ファイルインストール 過去(6.1.0)必要だったパッケージ群、今回不要な物が含まれているかもしれない $ sudo apt install ninja-build $ sudo apt install pkg-config libglib2.0-dev libmount-dev python3 python3-pip python3-dev git libssl-dev libffi-dev build-essential autoconf automake libfreetype6-dev libtheora-dev libtool libvorbis-dev pkg-config texinfo zlib1g-dev unzip cmake yasm libx264-dev libmp3lame-dev libopus-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev libxcb-xfixes0-dev pkg-config texinfo wget zlib1g-dev libpixman-1-dev 今回(8.1.1)追加で入れたパッケージ群 $ sudo apt install flex bison docsが必要な場合、sphinxが必要 qemuコンパイル&インストール qemuダウンロードページ https://www.qemu.org/download/ $ wget https://download.qemu.org/qemu-8.1.1.tar.xz $ tar xvJf qemu-8.1.1.tar.xz $ cd qemu-8.1.1 $ ./configure --targetlist=aarch64-softmmu,x86_64-linux-user  --disable-docs $ make -j$(nproc) $ sudo make install 確認 $ which qemu-system-aarch64  /usr/local/bin/qemu-system-aarch64 $ qemu-system-aarch64 --version QEMU emulator version 8.1.1 Copyright (c) 2003-2023 Fa

ubuntu22.04へsshログイン時に自アドレスを知る方法

イメージ
結論 $ pinky ipv6の表示が見切れなくタイプ量も少ないpinkyが優秀 方法 参照 https://www.baeldung.com/linux/find-client-ip-ssh 以下追加インストール無しで実行できたもの $ w -i -s  12:08:33 up 18 min,  1 user,  load average: 0.01, 0.55, 0.78 USER     TTY      FROM              IDLE WHAT ubuntu   pts/0    fe80::deb6:a6b7:  1.00s w -i -s $ pinky ログイン 名前               端末   待機 開始時刻     ログイン元 ubuntu   Ubuntu               pts/0           2023-10-15 11:55 fe80::deb6:a6b7:ba77:8cba%eth0 $ last|head  sudo lsof -i TCP -s tcp:established -n | grep ssh --