Install failure with Arch (linux kernel 4.6.2.1)

Post Reply
dgalt
Posts: 3
Joined: Wed May 11, 2016 11:34 am

Install failure with Arch (linux kernel 4.6.2.1)

Post by dgalt » Fri Jun 10, 2016 12:06 pm

When trying to install NEURON using the PKGBUILD shown below I'm getting the following error:

Code: Select all

Looking for InterViews in the usual places--
 not in  
Assuming InterViews in a standard? place.
checking compilation with interviews... failed
I can't compile and/or link an interviews program.  If InterViews is not
installed in /usr or /usr/local or /usr/local/iv,
specify the proper location of the interviews tree using
 
    configure --with-iv=/where/you/put/iv
 
The interviews headers should be in subdirectories of
/where/you/put/iv/include, and the libraries should be in
/where/you/put/iv/lib or /where/you/put/iv/x86_64/lib
(not in /where/you/put/iv/lib/ALPHA or
/where/you/put/iv/lib/LINUX or some other subdirectory of lib).
 
If you don't want interviews, but do want nrniv built with the non-gui
c++ classes then specify configure --without-iv.
==> ERROR: A failure occurred in build().
    Aborting...
:: failed to build neuron package(s)
The full terminal log for this install attemp can be found here: http://pastebin.com/dGEYNDqw


InterViews is installed, however, and is located where it should be( at least, as far as I can tell):

Code: Select all

dan ~ $ ls /usr/include | grep InterViews
InterViews

Code: Select all

dan ~ $ ls /usr/include/InterViews 
action.h      brush.h        _defines.h     glyph.h          _leave.h       printer.h    simplecomp.h   _undefs.h
adjust.h      canvas.h       dialog.h       group.h          leave-scope.h  psfont.h     stencil.h      winbmp.h
aggr.h        character.h    display.h      handler.h        lrmarker.h     raster.h     style.h        window.h
align.h       color.h        drag.h         hit.h            monoglyph.h    regexp.h     superpose.h    xymarker.h
alloctbl.h    composition.h  _enter.h       image.h          _names.h       reqerr.h     target.h
arraycomp.h   compositor.h   enter-scope.h  input.h          observe.h      resource.h   telltale.h
background.h  comption.h     event.h        iv3textbuffer.h  page.h         rule.h       texcomp.h
bitmap.h      coord.h        font.h         iv3text.h        patch.h        scrbox.h     tformsetter.h
Bitmaps       cursor.h       geometry.h     iv.h             pattern.h      selection.h  tiff.h
border.h      debug.h        glcontext.h    label.h          place.h        session.h    tile.h
box.h         deck.h         glue.h         layout.h         polyglyph.h    shadow.h     transformer.h
This is the terminal output from when InterViews was installed: http://pastebin.com/TR9GCZ0U
The InterViews PKGBUILD is also shown below.

If I edit the NEURON PKGBUILD to build without InterViews (i.e. add --without-iv to the configure line) I get this error:

Code: Select all

Makefile:567: recipe for target 'nrnpy_hoc.lo' failed
make[4]: *** [nrnpy_hoc.lo] Error 1
make[4]: Leaving directory '/home/dan/pkgbuilds/neuron/src/nrn-7.4/src/nrnpython'
Makefile:454: recipe for target 'all' failed
make[3]: *** [all] Error 2
make[3]: Leaving directory '/home/dan/pkgbuilds/neuron/src/nrn-7.4/src/nrnpython'
Makefile:492: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/home/dan/pkgbuilds/neuron/src/nrn-7.4/src'
Makefile:628: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/dan/pkgbuilds/neuron/src/nrn-7.4'
Makefile:485: recipe for target 'all' failed
make: *** [all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
Full terminal output when trying to install NEURON without InterViews: http://pastebin.com/JJ9DdHH6


I have other machines running older versions of Arch linux where I have NEURON running just fine. I took one of these and updated Arch (from kernel 4.4.1-1 to 4.6.2-1), and then went through the process of reinstalling InterViews and NEURON and I'm now getting this same issue. As one might expect such a big jump produced updates to a number of things, so I figured I'd just show all of them in case it helps in making sense of what's going on here. The output from pacman.log from the update can be found here:
http://pastebin.com/0uKRmaWM

NEURON PKGBUILD:

Code: Select all

# Maintainer: Ali Neishabouri <ali at neishabouri.net>
# Contributor: David Campbell <davekong@archlinux.us>

pkgname=neuron
pkgver=7.4
pkgrel=1
pkgdesc="Empirically-based simulations of neurons and networks of neurons"
arch=('i686' 'x86_64')
url="http://www.neuron.yale.edu"
license=('GPL')
depends=('interviews' 'openmpi' 'python')
optdepends=('python-numpy' 'python-scipy' 'mpich2')
source=("http://www.neuron.yale.edu/ftp/neuron/versions/v$pkgver/nrn-$pkgver.tar.gz")
options=('libtool')
md5sums=('2c0bbee8a9e55d60fa26336f4ab7acbf')

build() {
  cd "$srcdir/nrn-$pkgver"

  # We do this so the python libraries actually get installed in the package prefix
  sed -i "s_ac\_pysetup='--home=\$(prefix)'_ac\_pysetup='--home=$pkgdir/usr'_g" "$srcdir/nrn-$pkgver/configure"
  sed -i 's_exec\_prefix="${prefix}/${host\_cpu}"_exec\_prefix="${prefix}"_g' "$srcdir/nrn-$pkgver/configure"

  ./configure --prefix=/usr --libdir=/usr/lib --bindir=/usr/bin --with-paranrn --with-nrnpython=`which python`
  make 
}

package() {
  cd "$srcdir/nrn-$pkgver"
  DESTDIR="$pkgdir"
  sed -i "s_package\_dir\ =\ {'':instdir+'/share/nrn/lib/python'}\,_package\_dir\ =\ {'':'$pkgdir/usr/share/nrn/lib/python'}\,_g" src/nrnpython/setup.py
  make DESTDIR="$pkgdir" install
  #rm -f "$pkgdir/usr/lib/libnrnmpi.la"
  #rm -f "$pkgdir/usr/lib/libmeschach.la"
  #rm -f "$pkgdir/usr/lib/libivoc.la"
  #rm -f "$pkgdir/usr/lib/libscopmath.la"
  #rm -f "$pkgdir/usr/lib/libneuron_gnu.la"
  #rm -f "$pkgdir/usr/lib/libmemacs.la"
  #rm -f "$pkgdir/usr/lib/libnrnoc.la"
  #rm -f "$pkgdir/usr/lib/libnrnpython.la"
  #rm -f "$pkgdir/usr/lib/liboc.la"
  #rm -f "$pkgdir/usr/lib/libnrniv.la"
  #rm -f "$pkgdir/usr/lib/libsundials.la"
  #rm -f "$pkgdir/usr/lib/libsparse13.la"
  #rm -f "$pkgdir/usr/lib/libocxt.la"
  
  cd "src/nrnpython/"
  python setup.py install --root="$pkgdir/"
}
InterViews PKGBUILD:

Code: Select all

# Maintainer: Michael Schubert <mschu.dev at gmail>
# Contributor: David Campbell <davekong@archlinux.us>

pkgname=interviews
pkgver=19
pkgrel=1
pkgdesc="GUI for neuron"
arch=('i686' 'x86_64')
url="http://www.neuron.yale.edu"
license=('custom')
depends=('libx11')
source=("http://www.neuron.yale.edu/ftp/neuron/versions/v7.4/iv-$pkgver.tar.gz")
md5sums=('79fde976b2c89590fb78854aa2c04101')

build() {
  cd "$srcdir/iv-$pkgver"
  ./configure --prefix=/usr --bindir=/usr/bin --libdir=/usr/lib
  make
}

package() {
  cd "$srcdir/iv-$pkgver"
  install -Dm644 Copyright "$pkgdir/usr/share/licenses/$pkgname/COPYING"
  make DESTDIR="$pkgdir/" install
}

I've contacted the package maintainer, but in the meantime I was wondering if anyone might have any insight into what's going on here.

thanks

ted
Site Admin
Posts: 5572
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: Install failure with Arch (linux kernel 4.6.2.1)

Post by ted » Fri Jun 10, 2016 8:30 pm

dgalt wrote:InterViews is installed, however, and is located where it should be( at least, as far as I can tell)
Actually, no. Those are header files, used by the C compiler. A proper installation tree into some location, for example /home/dgalt/bin/iv, would have a directory called
/home/dgalt/bin/iv
that contains three subdirectories whose names are include, share, and either i686 or x86_64, depending on whether you were installing under a 32 bit or a 64 bit operating system.

I'm not going to debug the PKGBUILD you were using or try to guide you through it, because it's easy enough to install NEURON from source code. Just get the gzipped tar files for the latest alpha versions for interviews and NEURON from http://www.neuron.yale.edu/ftp/neuron/versions/alpha/, and then follow the instructions posted at https://www.neuron.yale.edu/neuron/down ... pile_linux

Post Reply