You are not logged in.
Hi, I'm currently trying to build a program called vimgdb. This program is usefull if you like to code with vim, since it allows you to call gdb from vim and then to debug within the best editor of the world. If you knew clewn, it does the same thing, except I find it 10 times better since you don't have to use gvim and you can code directly in a terminal (so you are able to ctrl+Z, and so on).
Here is the PKGBUILD that I'm trying to debug.
pkgname=vim
pkgver=7.2
pkgrel=0.1
pkgdesc="vim, but patched for the use of gdb. You may prefer it to clewn, since it does not require you to use gvim."
arch=(i686 x86_64)
license=('custom:vim')
url="http://www.vim.org"
depends=("vi>=${pkgver}" 'perl' 'python' 'ruby' 'acl' 'gpm>=1.20.4' 'libxt')
makedepends=('wget' 'sed' 'grep')
source=(ftp://ftp.vim.org/pub/vim/unix/vim-7.2.tar.bz2 \
"http://downloads.sourceforge.net/clewn/vimgdb72-1.14.tar.gz")
md5sums=('f0901284b338e448bfd79ccca0041254' 'e406c64d29a3152a3f5d0fffe3d2bba8')
build()
{
cd "${srcdir}"
patch -d vim72 --backup -p0 < vimgdb/vim72.diff
cd "${srcdir}/vim72/src"
./configure --prefix=/usr --localstatedir=/var/lib/vim \
--mandir=/usr/share/man --with-compiledby=ArchLinux \
--with-features=big --with-x=yes --disable-gui \
--with-global-runtime=/usr/share/vim --with-vim-name=vim \
--enable-multibyte --enable-cscope --enable-perlinterp \
--enable-pythoninterp --enable-rubyinterp --enable-multibyte \
--enable-gettext --enable-iconv --enable-langmap --enable-signs \
--enable-gdb
make || return 1
make VIMRCLOC=/etc DESTDIR=${startdir}/pkg VIMRTDIR= install
cd ${startdir}/pkg/usr/bin
rm -f ex view rview xxd vimtutor
ln -s vitutor vimtutor
# delete the manpages/symlinks provided by vi package
find ${startdir}/pkg/usr/share/man -type d -name 'man1' 2> /dev/null | \
while read mandir; do
cd ${mandir}
mv vimdiff.1 vimdiff.org
rm -f *.1
ln -s rvi.1.gz rvim.1.gz
ln -s vi.1.gz vim.1.gz
ln -s vitutor.1.gz vimtutor.1.gz
mv vimdiff.org vimdiff.1
done
}
I tried to use the extra/vim PKGBUILD (here is a link) It compiles nicely, but then when I use pacman -U, I get the following errors (sorry I'm french, so the output is in french) :
Just recall that "est déjà présent dans le système de fichiers" means "is already present in the filesystem".
Thank you in advance for the kind help you would provide me.
Offline
I tried to use the extra/vim PKGBUILD (here is a link) It compiles nicely, but then when I use pacman -U, I get the following errors (sorry I'm french, so the output is in french) :
Just recall that "est déjà présent dans le système de fichiers" means "is already present in the filesystem".
Thank you in advance for the kind help you would provide me.
Well. If those files are present, and it's trying to overwrite them, where did they come from? Try a pacman -Qo /path/to/some/file to see which package owns that one. If it's vim and your package is not named vim, you need to tell pacman that yours replaces=(vim). If they are owner by nothing, then someone goofed and you should figure out how those files got on your machine
Offline
Thank you, I'm trying it.
Offline
Apparently, those files belong to vi.
I removed vi from
depends=("vi>=${pkgver}" 'perl' 'python' 'ruby' 'acl' 'gpm>=1.20.4' 'libxt')
and I also added
replaces=('vi' 'vim')
But I this does not seem to solve the problem.
Offline
I also have to say that at this point, if remove vi with pacman, the installation performs well.
Offline
here is my new PKGBUILD :
pkgname=vimgdb
pkgver=7.2
pkgrel=0.1
pkgdesc="vim, but patched for the use of gdb. You may prefer it to clewn, since it does not require you to use gvim."
arch=(i686 x86_64)
license=('custom:vim')
url="http://www.vim.org"
conflicts=('vi' 'vim')
depends=('perl' 'python' 'ruby' 'acl' 'gpm>=1.20.4' 'libxt')
makedepends=('wget' 'sed' 'grep')
source=(ftp://ftp.vim.org/pub/vim/unix/vim-7.2.tar.bz2 \
"http://downloads.sourceforge.net/clewn/vimgdb72-1.14.tar.gz")
md5sums=('f0901284b338e448bfd79ccca0041254' 'e406c64d29a3152a3f5d0fffe3d2bba8')
build()
{
cd "${srcdir}"
patch -d vim72 --backup -p0 < vimgdb/vim72.diff
cd "${srcdir}/vim72/src"
./configure --prefix=/usr --localstatedir=/var/lib/vim \
--mandir=/usr/share/man --with-compiledby=ArchLinux \
--with-features=big --with-x=yes --disable-gui \
--with-global-runtime=/usr/share/vim --with-vim-name=vim \
--enable-multibyte --enable-cscope --enable-perlinterp \
--enable-pythoninterp --enable-rubyinterp --enable-multibyte \
--enable-gettext --enable-iconv --enable-langmap --enable-signs \
--enable-gdb
make || return 1
make VIMRCLOC=/etc DESTDIR=${startdir}/pkg VIMRTDIR= install
}
I told vimgdb to conflict with vi and vim. Maybe it is not the best solution, but at least it works and pacman -Suy does not try to replace it by vi or vim.
Please have a look and correct it. I would like to propose it to AUR.
Offline
Unfortunately, vimpager depends on vi. So if you want to use it, you'll have to change its pkgbuild and modify it to
depends=('vimgdb')
Offline
1) you can ask me those things by phone
2) you can edit your messages instead of posting them in a row
3) you just met arch linux's project leader, phrakture
4) your pkgdesc should be shorter. think 72 characters or so as it will be printed by pacman...
5) i personnaly prefer license=('custom:"vim"'). plus it implies you to put something in /usr/share/licenses/vim
6) generally a good read for your "first times": http://wiki.archlinux.org/index.php/Arc … _Standards
7) you should consider using LANG="C" to post messages on international forums!
Last edited by gcarrier (2008-12-20 14:48:14)
Offline
In particular, note the "provides" array. You should use that instead of rebuilding everything to depend on vimgdb.
ARCH|awesome3.0 powered by Pentium M 750 | 512MB DDR2-533 | Radeon X300 M
The journey is the reward.
Offline
you just met arch linux's project leader, phrakture
Hi phrakture, nice to meet you
your pkgdesc should be shorter. think 72 characters or so as it will be printed by pacman...
fixed.
i personnaly prefer license=('custom:"vim"'). plus it implies you to put something in /usr/share/licenses/vim
Actually I took that part from tobias' PKGBUILD, I really had no idea how this was handled. I'm trying to fix that.
generally a good read for your "first times": http://wiki.archlinux.org/index.php/Arc … _Standards
If there was only this one to read... done.
you should consider using LANG="C" to post messages on international forums!
My mistake. I did not remember how to get the outputs in english.
In particular, note the "provides" array. You should use that instead of rebuilding everything to depend on vimgdb.
Thank you! This fixed the problem with vimpager.
Here is the new PKGBUILD :
pkgname=vimgdb
pkgver=7.2
pkgrel=0.1
pkgdesc="vim patched for gdb: a clewn that does not require gvim."
arch=(i686 x86_64)
license=('custom:"vim"')
url="http://www.vim.org"
conflicts=('vi' 'vim')
provides=('vi=7.2' 'vim=7.2')
replaces=('vi' 'vim')
depends=('perl' 'python' 'ruby' 'acl' 'gpm>=1.20.4' 'libxt')
makedepends=('wget' 'sed' 'grep')
source=(ftp://ftp.vim.org/pub/vim/unix/vim-7.2.tar.bz2 \
http://downloads.sourceforge.net/clewn/vimgdb72-1.14.tar.gz)
md5sums=('f0901284b338e448bfd79ccca0041254' 'e406c64d29a3152a3f5d0fffe3d2bba8')
build()
{
cd "${srcdir}"
patch -d vim72 --backup -p0 < vimgdb/vim72.diff
cd "${srcdir}/vim72/src"
./configure --prefix=/usr --localstatedir=/var/lib/vim \
--mandir=/usr/share/man --with-compiledby=ArchLinux \
--with-features=big --with-x=yes --disable-gui \
--with-global-runtime=/usr/share/vim --with-vim-name=vim \
--enable-multibyte --enable-cscope --enable-perlinterp \
--enable-pythoninterp --enable-rubyinterp --enable-multibyte \
--enable-gettext --enable-iconv --enable-langmap --enable-signs \
--enable-gdb
make || return 1
make VIMRCLOC=/etc DESTDIR=${startdir}/pkg VIMRTDIR= install
}
Last edited by duquesnc (2008-12-20 18:24:32)
Offline