Page 1 of 1

Without iv?

Posted: Tue Aug 05, 2008 7:17 pm
by ksarma
I'm trying to get nrnpython working without iv -- I thought perhaps that simply removing the reference to IVhines from setup.py should do it, but I still get an undefined symbol error when trying to import the neuron modules (undefined symbol: _ZNK10ivResource3refEv)

Is there an easy fix to get this working (since running nrniv does work just fine without iv)?

Re: Without iv?

Posted: Wed Aug 06, 2008 8:59 am
by hines
simply removing the reference to IVhines from setup.py should do it
Replace the IVhines reference with the name of the tiny
replacement shared library. I think it has "ivos" in its name
and is in the same directory as ivoc, nrniv, etc shared libraries.
Unfortunately, I am away from my linux machine for the next
three weeks so can't be more precise or test it myself til I return.

Re: Without iv?

Posted: Thu Aug 20, 2009 9:03 pm
by wvangeit
I've tried replacing the reference with one to ivos, but now I get a new error:

"libnrniv.so.0: undefined symbol: nrnpython_reg_real"

Btw, the reason why I'm configuring --without-x is because the -nogui option doesn't seem to work when using python. When I run a python script with 'nrniv -nogui -python', an 'import neuron' doesn't work when there is an empty DISPLAY variable set (which is the case on the nodes of our cluster). Is there another solution for this ?

thx

Re: Without iv?

Posted: Thu Aug 20, 2009 9:33 pm
by wvangeit
Actually, concerning that DISPLAY issue, I've looked into the neuron source:

Code: Select all

    
if (getenv("DISPLAY")) {
        session = new Session("NEURON", our_argc, our_argv, options, properties);
    }else{
        fprintf(stderr, "Warning: no DISPLAY environment variable.\
\n--No graphics will be displayed.\n");
        hoc_usegui = 0;
    }
Wouldn't it be possible that in case the "new Session" fails, because there is no display, that Neuron would also just give a warning instead of stopping with an exit(1) ? I think it might make things easier for people running batch jobs on clusters (or on computers where the X11 server is not running)