Cmake PKGBUILD与make all
我正在尝试为一个包含多个子应用程序的github项目编写AUR的PKGBUILD。Cmake PKGBUILD与make all,cmake,makefile,archlinux,pkgbuild,Cmake,Makefile,Archlinux,Pkgbuild,我正在尝试为一个包含多个子应用程序的github项目编写AUR的PKGBUILD。 因此,这个项目的CMake文件基本上只运行make-to-make&&make-install子应用程序。 以下是我的构建和打包步骤: build() { cd "$srcdir/$_gitname" [[ -d build ]] && rm -r build mkdir build && cd build cmake -DCMAKE_INSTALL_PREFIX=
因此,这个项目的CMake文件基本上只运行make-to-make&&make-install子应用程序。
以下是我的构建和打包步骤:
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-我在构建过程中从不要求sudo权限(因此我必须在makeall之前添加sudo)
- 请求安装时,makepkg无法识别包的大小。因此,在运行packman-R packagename时,包也不会卸载
但是,我无法更改CMake文件,因为该项目不是我的,所有不同的子应用程序都属于同一个项目,如果我尝试分别制作和制作安装它们,就会出现一系列错误,它们相互依赖。包函数无法安装到根层次结构中。相反,makepkg旨在安装到fakeroot下的pkgdir中,其中pkgdir复制实际的根目录结构。看 您可以通过将
DESTDIR=“$pkgdir/”
添加到包函数中的make选项来完成此操作
在创建的包上调用pacman时,它会将文件复制到真正的根层次结构中