您尚未登录。

楼主 # 2022-02-18 18:26:16

taotieren
会员
注册时间: 2020-05-19
已发帖子: 116
积分: 151

NUC970_NuWriter_CMD 打包到 Arch Linux 的 AUR 仓库

编写 nuc970-nuwriter 的 PKGBUILD 已经上传到 Arch Linux 的 AUR 仓库 [nuc970-nuwriter-git](https://aur.archlinux.org/packages/nuc970-nuwriter-git)。
可以通过 AUR 工具下载安装,如:yay

yay -S nuc970-nuwriter-git

PKGBUILD 源码

# Maintainer: taotieren <admin@taotieren.com>

pkgname=nuc970-nuwriter-git
pkgver=1328b10
pkgrel=1
epoch=
pkgdesc="The Nu-writer Command Tool is a linux console application consisting of functions to access storage(eg. DRAM,NAND,SPINOR,SPINAND,SD) in a NUC970 family processors"
arch=('any')
url="https://gitee.com/OpenNuvoton/NUC970_NuWriter_CMD"
license=('GPL3')
groups=()
depends=('libusb')
makedepends=("gcc" "git" "automake" "pkgconfig")
checkdepends=()
optdepends=()
provides=('NUC970_NuWriter_CMD')
conflicts=(${pkgname%-git})
replaces=()
backup=()
options=('!strip')
install=
changelog=
source=("${pkgname%-git}::git+${url}.git")
noextract=()
sha256sums=('SKIP')
#validpgpkeys=()

pkgver() {
    cd "${srcdir}/${pkgname%-git}/"
#     git describe --long --tags | sed 's/V//g;s/\([^-]*-g\)/r\1/;s/-/./g'
    git describe --always | sed 's|-|.|g'
}

build() {
    cd "${srcdir}/${pkgname%-git}"
    autoreconf -f -i
    ./configure
#     ./configure --prefix=$PWD/install
    make
}

package() {
    cd "${srcdir}/${pkgname%-git}"
#     make install
    install -Dm0755 "nuwriter" "${pkgdir}/usr/bin/${pkgname%-git}"
    install -Dm0755 "99-nuvoton_isp.rules" "${pkgdir}/usr/lib/udev/rules.d/99-nuvoton_isp.rules"
    install -dm0755 "${pkgdir}/usr/share/${pkgname%-git}"
    cp -rv nudata "${pkgdir}/usr/share/${pkgname%-git}"
}

反馈的问题:
- 内置的 automake 版本是使用 automake-1.15 生成。现 Arch 上版本是 1.16 需要使用 `autoreconf -f -i` 更新配置文件,其他 Linux 版本编译不过,也可以使用 `autoreconf -f -i` 更新 automake 文件
- `./configure --prefix=$PWD/install` 内的文件有缺失,需要更新。
- 串口配置文件安装后需要刷新 udev

sudo udevadm trigger
sudo udevadm control --reload-rules

- 可能会踩的坑 Ubuntu 等需要将 $USER 加到 串口组(uucp) 里面(新版本一般是 uucp ,旧版本可能是其他的,使用 ls -lsh /dev/ttyUSB* 查看设备所在组。如果在 Linux 下调试时遇到串口不通或者提示没权限,把用户加入串口设备组里面,后重启电脑试试。示例:

❯ ls -lash /dev/ttyS0 0 crwxrwxrwx 1 root uucp 4, 64 Feb 15 19:09 /dev/ttyS0
❯ sudo gpasswd -a `whoami` uucp
[sudo] taotieren 的密码:
正在将用户“taotieren”加入到“uucp”组中
❯ groups `whoami` 
wheel uucp vboxusers taotieren
❯ reboot

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn