Historical bug tracker for the Pacman package manager.
The pacman bug tracker has moved to gitlab:
https://gitlab.archlinux.org/pacman/pacman/-/issues
This tracker remains open for interaction with historical bugs during the transition period. Any new bugs reports will be closed without further action.
The pacman bug tracker has moved to gitlab:
https://gitlab.archlinux.org/pacman/pacman/-/issues
This tracker remains open for interaction with historical bugs during the transition period. Any new bugs reports will be closed without further action.
FS#12812 - makepkg3.2.2 crash, if PKGBUILD losed arch=() line.
Attached to Project:
Pacman
Opened by Road Tang (roadtang) - Friday, 16 January 2009, 05:40 GMT
Last edited by Allan McRae (Allan) - Monday, 03 August 2009, 03:30 GMT
Opened by Road Tang (roadtang) - Friday, 16 January 2009, 05:40 GMT
Last edited by Allan McRae (Allan) - Monday, 03 August 2009, 03:30 GMT
|
DetailsSummary and Info:
when make the PKGBUILD of squirm from the ABS. the makepkg crash with message "/usr/bin/makepkg: line 113: printf: `$': invalid format character" I found the PKGBUILD losed arch=() line. after add arch=(i686), the makepkg works. Steps to Reproduce: 1. get the squirm PKGBUILD, put it into current directory. ------------- start--------------- # Maintainer: Spider.007 <archPackage@spider007.net> # Contributor: Spider.007 <archPackage@spider007.net> packager="Spider.007 <archPackage@spider007.net>" pkgname=squirm pkgver=1.26 pkgrel=1 pkgdesc="Squirm is a fast & configurable redirector for squid. This package includes an adzap2squirm script" url="http://squirm.foote.com.au/" groups= provides= depends=('squid') source=("$url/$pkgname-$pkgver.tgz") md5sums=('54ac1d208620ec1e4419f97315d38848') build() { cp $startdir/Makefile $startdir/src/$pkgname-$pkgver cd $startdir/src/$pkgname-$pkgver make || return 1 sed "s|PREFIX=|PREFIX=$startdir/pkg|g" Makefile > Makefile.new && mv Makefile.new Makefile make install } -------------------- end ------------------------- 2. run makepkg version3.2.2, errors take places. 3. add arch=(i686) to PKGBUILD 4. run makepkg again. It's good. |
This task depends upon
Closed by Allan McRae (Allan)
Monday, 03 August 2009, 03:30 GMT
Reason for closing: Fixed
Additional comments about closing: pacman-3.3.0
Monday, 03 August 2009, 03:30 GMT
Reason for closing: Fixed
Additional comments about closing: pacman-3.3.0
PKGBUILD
> makepkg
==> ERROR: squirm is not available for the 'i686' architecture.
Note that many packages may need a line added to their PKGBUILD
such as arch=('i686').
The line that is causing the issue is:
printf "\033[1;31m==> $(gettext "ERROR:")\033[1;0m\033[1;1m ${mesg}\033[1;0m\n" "$@" >&2
That looks fine to me...
A long shot, but what locale are you using?
Not en_US. my local is zh_CN.gb2312..
I changed LC_ALL to en_US. the problem disappeared.
$ makepkg
/usr/bin/makepkg: line 113: printf: `$': invalid format character
==> 错误:
$ env LC_ALL=en_US makepkg
==> ERROR: squirm is not available for the 'i686' architecture.
Note that many packages may need a line added to their PKGBUILD
such as arch=('i686').
but why?
msgid "%s is not available for the '%s' architecture."
msgstr "%1$s 不具备 '%2$s' 架构。"
If I get rid of the "1$" and "2$: it works... Someone with translation experience will need to chime in here.