我现在正在尝试为由几个子应用程序组成的 github 项目为 AUR 编写 PKGBUILD。
所以基本上这个项目的 CMake 文件只是运行一个 make 来 make && make 安装子应用程序。
这些是我的构建和打包步骤:
build() {
cd "$srcdir/$_gitname"
[[ -d build ]] && rm -r build
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/opt/od ..
}
package() {
cd "${_gitname}/build"
sudo make all
}
我的问题是现在一切正常,除了:
- makepkg -i 在构建期间从不要求 sudo 权限(因此我必须在 make all 前面添加 sudo)
- 当要求安装时,makepkg 无法识别包的大小。因此,在运行 packman -R packagename 时该包也不会卸载
我无法更改 CMake 文件,因为该项目不是我的,并且所有不同的子应用程序都属于一起,如果我尝试 make && make 分别安装它们,我会得到一堆错误,它们相互依赖。