You are not logged in.

#1 2007-10-02 07:29:51

Eradest
Member
From: Germany
Registered: 2007-07-18
Posts: 56

PMX "make install" problem

Hi Everyone!
After being quite suprised to find a certain package in the AUR already several times (jost love it!) I now finally want to build one that's not there already, namely "PMX", a preprocessor for MusiXTeX (a TeX macro set for Music notation).

So here's the PKGBUILD:

# Contributor: Eradest <forregs@web.de>
pkgname=pmx
pkgver=2.5.4
pkgrel=1
pkgdesc="A preprocessor for MusiXTeX"
arch=('i686')
url="http://icking-music-archive.org/software/indexmt6.html#pmx"
license=('GPL')
depends=('texlive-core' 'texlive-music')
makedepends=('gcc-fortran' 'texlive-core')
source=(http://http.us.debian.org/debian/pool/main/p/pmx/${pkgname}_$pkgver.orig.tar.gz)
md5sums=('b1a267d36362006619fccd0d1cbfde12')

build() {
  cd "$startdir/src/$pkgname-$pkgver"

  make || return 1
  make DESTDIR="$startdir/pkg" install

}

nothing special obviously, just one problem:
when "make installing" the "DESTDIR" directive is not followed, the package wants to install to /usr which it of course can't because i'm building as normal user:

Making install in doc...
make[1]: Entering directory `/home/cornelius/Desktop/pmx/src/pmx-2.5.4/doc'
install -d /usr/local/man/man1
install: cannot change permissions of `/usr/local/man/man1': No such file or directory
make[1]: *** [install] Error 1
make[1]: Leaving directory `/home/cornelius/Desktop/pmx/src/pmx-2.5.4/doc'
Making install in examples...
make[1]: Entering directory `/home/cornelius/Desktop/pmx/src/pmx-2.5.4/examples'
install -d /usr/local/share/doc/pmx/examples
install: cannot create directory `/usr/local/share/doc': Permission denied
make[1]: *** [install] Error 1
make[1]: Leaving directory `/home/cornelius/Desktop/pmx/src/pmx-2.5.4/examples'
Making install in src...
make[1]: Entering directory `/home/cornelius/Desktop/pmx/src/pmx-2.5.4/src'
f77 -O2 -o pmxab pmxab.for
make[1]: f77: Command not found
make[1]: *** [pmxab] Error 127
make[1]: Leaving directory `/home/cornelius/Desktop/pmx/src/pmx-2.5.4/src'
Making install in tex...
make[1]: Entering directory `/home/cornelius/Desktop/pmx/src/pmx-2.5.4/tex'
install -d /usr/local/share/doc/pmx
install: cannot create directory `/usr/local/share/doc': Permission denied
make[1]: *** [install] Error 1
make[1]: Leaving directory `/home/cornelius/Desktop/pmx/src/pmx-2.5.4/tex'
make: *** [install-recursive] Error 2
==> ERROR: Build Failed.  Aborting...

i've already tried using

  make prefix=$startdir/pkg install

but this doesn't work any better


Is there any for me to make it install to the right directory without editing the makefiles?
And btw, what do you think of my first PKDBUILD in general? wink

Offline

#2 2007-10-02 08:42:05

kumico
Member
Registered: 2007-09-28
Posts: 224
Website

Re: PMX "make install" problem

the pkgbuild looks fine i guess ... i'd add || return 1 after the install line ...
am at school now so can't check it out myself, but mayeb it accepts the PREFIX var~ instead of DESTDIR ... otherwise you should be able to copy the files providing you know which ones are required

Offline

#3 2007-10-02 09:07:54

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: PMX "make install" problem

You have another little problem, btw - it's trying to use /usr/local, which is not used in Arch. Have a read through the Arch Packaging Standards in the wiki for full details.

Offline

#4 2007-10-02 10:45:57

Eradest
Member
From: Germany
Registered: 2007-07-18
Posts: 56

Re: PMX "make install" problem

you are genius, fixed everything: "PREFIX" works, but not "prefix" (damn case sensitivity) so that's the PKGBUILD now:

# Contributor: Eradest <forregs@web.de>
pkgname=pmx
pkgver=2.5.4
pkgrel=1
pkgdesc="A preprocessor for MusiXTeX"
arch=('i686')
url="http://icking-music-archive.org/software/indexmt6.html#pmx"
license=('GPL')
depends=('texlive-core' 'texlive-music')
makedepends=('gcc-fortran' 'texlive-core')
source=(http://http.us.debian.org/debian/pool/main/p/pmx/${pkgname}_$pkgver.orig.tar.gz)
md5sums=('b1a267d36362006619fccd0d1cbfde12')

build() {
  cd "$startdir/src/$pkgname-$pkgver"

  make || return 1
  make PREFIX=$startdir/pkg/usr/ install || return 1
}

.filelist is now:

usr/
usr/man/
usr/man/man1/
usr/man/man1/pmx.1.gz
usr/man/man1/pmxab.1.gz
usr/man/man1/scor2prt.1.gz
usr/share/
usr/share/texmf/
usr/share/texmf/tex/
usr/share/texmf/tex/musixtex/
usr/share/texmf/tex/musixtex/pmx/
usr/share/texmf/tex/musixtex/pmx/pmx.tex

is that ok tomk?

and if it is, do you think i should submit it to the AUR?

[EDIT] I just had a look into my /usr/local, there's some stuff from package 'gtk-qt-engine' in there, I think that should be fixed then as well

Last edited by Eradest (2007-10-02 10:49:23)

Offline

Board footer

Powered by FluxBB