Closed pramodk closed 3 years ago
Not sure if this is relevant but with gcc on OSX I am seeing:
[ 6%] Linking CXX shared library ../../lib/libnrniv.dylib
cd /Users/kumbhar/workarena/repos/bbp/nn/build/src/nrniv && /usr/local/Cellar/cmake/3.16.1/bin/cmake -E cmake_link_script CMakeFiles/nrniv_lib.dir/link.txt --verbose=1
/usr/local/bin/g++-9 -g -O2 -dynamiclib -Wl,-headerpad_max_install_names -L/usr/local/opt/ruby/lib -o ../../lib/libnrniv.dylib -install_name @rpath/libnrniv.dylib CMakeFiles/nrniv_lib.dir/__/ivoc/apwindow.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/axis.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/bndedval.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/cbwidget.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/checkpnt.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/epsprint.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/fourier.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/gifimage.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/graph.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/graphvec.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/grglyph.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/grmanip.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/hocmark.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/htlist.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/idraw.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ivoc.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ivocmain.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ivocrand.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ivocvect.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/matrix.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/mlinedit.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/mymath.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/objcmd.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/oc2iv.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ocbox.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ocbrowsr.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ocdeck.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ocfile.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ochelp.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/oclist.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ocmatrix.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ocnoiv1.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ocobserv.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ocpicker.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ocpointer.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/ocptrvector.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/octimer.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/pwman.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/rect.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/rubband.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/scene.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/scenepic.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/strfun.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/symchoos.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/utility.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/xmenu.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/xyview.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/field.cpp.o CMakeFiles/nrniv_lib.dir/__/ivoc/xdep.cpp.o CMakeFiles/nrniv_lib.dir/bbs.cpp.o CMakeFiles/nrniv_lib.dir/bbsavestate.cpp.o CMakeFiles/nrniv_lib.dir/bbsdirect.cpp.o CMakeFiles/nrniv_lib.dir/bbslocal.cpp.o CMakeFiles/nrniv_lib.dir/bbslsrv.cpp.o CMakeFiles/nrniv_lib.dir/bbslsrv2.cpp.o CMakeFiles/nrniv_lib.dir/bbsrcli.cpp.o CMakeFiles/nrniv_lib.dir/bbssrv.cpp.o CMakeFiles/nrniv_lib.dir/bgpmeminfo.c.o CMakeFiles/nrniv_lib.dir/cachevec.cpp.o CMakeFiles/nrniv_lib.dir/classreg.cpp.o CMakeFiles/nrniv_lib.dir/cvodeobj.cpp.o CMakeFiles/nrniv_lib.dir/cvodestb.cpp.o CMakeFiles/nrniv_lib.dir/cvtrset.cpp.o CMakeFiles/nrniv_lib.dir/cxprop.cpp.o CMakeFiles/nrniv_lib.dir/datapath.cpp.o CMakeFiles/nrniv_lib.dir/finithnd.cpp.o CMakeFiles/nrniv_lib.dir/geometry3d.cpp.o CMakeFiles/nrniv_lib.dir/glinerec.cpp.o CMakeFiles/nrniv_lib.dir/hocmech.cpp.o CMakeFiles/nrniv_lib.dir/impedanc.cpp.o CMakeFiles/nrniv_lib.dir/kschan.cpp.o CMakeFiles/nrniv_lib.dir/kssingle.cpp.o CMakeFiles/nrniv_lib.dir/linmod.cpp.o CMakeFiles/nrniv_lib.dir/linmod1.cpp.o CMakeFiles/nrniv_lib.dir/matrixmap.cpp.o CMakeFiles/nrniv_lib.dir/multisplit.cpp.o CMakeFiles/nrniv_lib.dir/ndatclas.cpp.o CMakeFiles/nrniv_lib.dir/netcvode.cpp.o CMakeFiles/nrniv_lib.dir/netpar.cpp.o CMakeFiles/nrniv_lib.dir/nonlinz.cpp.o CMakeFiles/nrniv_lib.dir/nrnbbcore_write.cpp.o CMakeFiles/nrniv_lib.dir/nrndae.cpp.o CMakeFiles/nrniv_lib.dir/nrndaspk.cpp.o CMakeFiles/nrniv_lib.dir/nrnmenu.cpp.o CMakeFiles/nrniv_lib.dir/nrnpy.cpp.o CMakeFiles/nrniv_lib.dir/nrnrtime.cpp.o CMakeFiles/nrniv_lib.dir/nrnste.cpp.o CMakeFiles/nrniv_lib.dir/nvector_nrnserial_ld.c.o CMakeFiles/nrniv_lib.dir/nvector_nrnthread.c.o CMakeFiles/nrniv_lib.dir/nvector_nrnthread_ld.c.o CMakeFiles/nrniv_lib.dir/ocbbs.cpp.o CMakeFiles/nrniv_lib.dir/occvode.cpp.o CMakeFiles/nrniv_lib.dir/ocjump.cpp.o CMakeFiles/nrniv_lib.dir/partrans.cpp.o CMakeFiles/nrniv_lib.dir/ppshape.cpp.o CMakeFiles/nrniv_lib.dir/prcellstate.cpp.o CMakeFiles/nrniv_lib.dir/pysecname2sec.cpp.o CMakeFiles/nrniv_lib.dir/rotate3d.cpp.o CMakeFiles/nrniv_lib.dir/savstate.cpp.o CMakeFiles/nrniv_lib.dir/secbrows.cpp.o CMakeFiles/nrniv_lib.dir/shape.cpp.o CMakeFiles/nrniv_lib.dir/shapeplt.cpp.o CMakeFiles/nrniv_lib.dir/singlech.cpp.o CMakeFiles/nrniv_lib.dir/spaceplt.cpp.o CMakeFiles/nrniv_lib.dir/splitcell.cpp.o CMakeFiles/nrniv_lib.dir/symdir.cpp.o CMakeFiles/nrniv_lib.dir/tqueue.cpp.o CMakeFiles/nrniv_lib.dir/vrecord.cpp.o CMakeFiles/nrniv_lib.dir/__/nrnoc/cabcode.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/capac.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/clamp.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/code.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/eion.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/extcelln.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/fadvance.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/fstim.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/hocprax.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/hocusr.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/hoc_init.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/hoc_oop.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/init.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/ldifus.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/method3.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/nrnnemo.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/nrntimeout.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/nrnversion.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/passive0.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/point.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/psection.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/seclist.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/secref.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/solve.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/synapse.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/treeset.c.o CMakeFiles/nrniv_lib.dir/__/oc/isaac64.c.o CMakeFiles/nrniv_lib.dir/__/oc/mcran4.c.o CMakeFiles/nrniv_lib.dir/__/oc/nrnisaac.c.o CMakeFiles/nrniv_lib.dir/__/oc/nrnran123.c.o CMakeFiles/nrniv_lib.dir/__/oc/audit.c.o CMakeFiles/nrniv_lib.dir/__/oc/axis.c.o CMakeFiles/nrniv_lib.dir/__/oc/bksub.c.o CMakeFiles/nrniv_lib.dir/__/oc/code2.c.o CMakeFiles/nrniv_lib.dir/__/oc/cygwinprt.c.o CMakeFiles/nrniv_lib.dir/__/oc/debug.c.o CMakeFiles/nrniv_lib.dir/__/oc/fileio.c.o CMakeFiles/nrniv_lib.dir/__/oc/fmenu.c.o CMakeFiles/nrniv_lib.dir/__/oc/ftime.c.o CMakeFiles/nrniv_lib.dir/__/oc/functabl.c.o CMakeFiles/nrniv_lib.dir/__/oc/getelm.c.o CMakeFiles/nrniv_lib.dir/__/oc/getsym.c.o CMakeFiles/nrniv_lib.dir/__/oc/hoc.c.o CMakeFiles/nrniv_lib.dir/__/oc/hocedit.c.o CMakeFiles/nrniv_lib.dir/__/oc/isoc99.c.o CMakeFiles/nrniv_lib.dir/__/oc/lineq.c.o CMakeFiles/nrniv_lib.dir/__/oc/list.c.o CMakeFiles/nrniv_lib.dir/__/oc/math.c.o CMakeFiles/nrniv_lib.dir/__/oc/nonlin.c.o CMakeFiles/nrniv_lib.dir/__/oc/nrnfilewrap.c.o CMakeFiles/nrniv_lib.dir/__/oc/ocerf.c.o CMakeFiles/nrniv_lib.dir/__/oc/parallel.c.o CMakeFiles/nrniv_lib.dir/__/oc/parse.c.o CMakeFiles/nrniv_lib.dir/__/oc/plot.c.o CMakeFiles/nrniv_lib.dir/__/oc/plt.c.o CMakeFiles/nrniv_lib.dir/__/oc/prmat.c.o CMakeFiles/nrniv_lib.dir/__/oc/regexp.c.o CMakeFiles/nrniv_lib.dir/__/oc/scoprand.c.o CMakeFiles/nrniv_lib.dir/__/oc/settext.c.o CMakeFiles/nrniv_lib.dir/__/oc/subrows.c.o CMakeFiles/nrniv_lib.dir/__/oc/symbol.c.o CMakeFiles/nrniv_lib.dir/__/oc/version.c.o CMakeFiles/nrniv_lib.dir/__/oc/x.c.o CMakeFiles/nrniv_lib.dir/__/oc/xred.c.o CMakeFiles/nrniv_lib.dir/__/memacs/ansi.c.o CMakeFiles/nrniv_lib.dir/__/memacs/basic.c.o CMakeFiles/nrniv_lib.dir/__/memacs/bind.c.o CMakeFiles/nrniv_lib.dir/__/memacs/buffer.c.o CMakeFiles/nrniv_lib.dir/__/memacs/display.c.o CMakeFiles/nrniv_lib.dir/__/memacs/file.c.o CMakeFiles/nrniv_lib.dir/__/memacs/fileio.c.o CMakeFiles/nrniv_lib.dir/__/memacs/line.c.o CMakeFiles/nrniv_lib.dir/__/memacs/lock.c.o CMakeFiles/nrniv_lib.dir/__/memacs/main1.c.o CMakeFiles/nrniv_lib.dir/__/memacs/random.c.o CMakeFiles/nrniv_lib.dir/__/memacs/region.c.o CMakeFiles/nrniv_lib.dir/__/memacs/search.c.o CMakeFiles/nrniv_lib.dir/__/memacs/spawn.c.o CMakeFiles/nrniv_lib.dir/__/memacs/tcap.c.o CMakeFiles/nrniv_lib.dir/__/memacs/termio.c.o CMakeFiles/nrniv_lib.dir/__/memacs/window.c.o CMakeFiles/nrniv_lib.dir/__/memacs/word.c.o CMakeFiles/nrniv_lib.dir/__/mesch/arnoldi.c.o CMakeFiles/nrniv_lib.dir/__/mesch/bdfactor.c.o CMakeFiles/nrniv_lib.dir/__/mesch/bkpfacto.c.o CMakeFiles/nrniv_lib.dir/__/mesch/chfactor.c.o CMakeFiles/nrniv_lib.dir/__/mesch/conjgrad.c.o CMakeFiles/nrniv_lib.dir/__/mesch/copy.c.o CMakeFiles/nrniv_lib.dir/__/mesch/dmacheps.c.o CMakeFiles/nrniv_lib.dir/__/mesch/err.c.o CMakeFiles/nrniv_lib.dir/__/mesch/extras.c.o CMakeFiles/nrniv_lib.dir/__/mesch/fft.c.o CMakeFiles/nrniv_lib.dir/__/mesch/givens.c.o CMakeFiles/nrniv_lib.dir/__/mesch/hessen.c.o CMakeFiles/nrniv_lib.dir/__/mesch/hsehldr.c.o CMakeFiles/nrniv_lib.dir/__/mesch/init.c.o CMakeFiles/nrniv_lib.dir/__/mesch/iter0.c.o CMakeFiles/nrniv_lib.dir/__/mesch/iternsym.c.o CMakeFiles/nrniv_lib.dir/__/mesch/itersym.c.o CMakeFiles/nrniv_lib.dir/__/mesch/ivecop.c.o CMakeFiles/nrniv_lib.dir/__/mesch/lanczos.c.o CMakeFiles/nrniv_lib.dir/__/mesch/lufactor.c.o CMakeFiles/nrniv_lib.dir/__/mesch/machine.c.o CMakeFiles/nrniv_lib.dir/__/mesch/matlab.c.o CMakeFiles/nrniv_lib.dir/__/mesch/matop.c.o CMakeFiles/nrniv_lib.dir/__/mesch/matrixio.c.o CMakeFiles/nrniv_lib.dir/__/mesch/meminfo.c.o CMakeFiles/nrniv_lib.dir/__/mesch/memory.c.o CMakeFiles/nrniv_lib.dir/__/mesch/memstat.c.o CMakeFiles/nrniv_lib.dir/__/mesch/mfunc.c.o CMakeFiles/nrniv_lib.dir/__/mesch/norm.c.o CMakeFiles/nrniv_lib.dir/__/mesch/otherio.c.o CMakeFiles/nrniv_lib.dir/__/mesch/pxop.c.o CMakeFiles/nrniv_lib.dir/__/mesch/qrfactor.c.o CMakeFiles/nrniv_lib.dir/__/mesch/schur.c.o CMakeFiles/nrniv_lib.dir/__/mesch/solve.c.o CMakeFiles/nrniv_lib.dir/__/mesch/sparse.c.o CMakeFiles/nrniv_lib.dir/__/mesch/sparseio.c.o CMakeFiles/nrniv_lib.dir/__/mesch/spbkp.c.o CMakeFiles/nrniv_lib.dir/__/mesch/spchfctr.c.o CMakeFiles/nrniv_lib.dir/__/mesch/splufctr.c.o CMakeFiles/nrniv_lib.dir/__/mesch/sprow.c.o CMakeFiles/nrniv_lib.dir/__/mesch/spswap.c.o CMakeFiles/nrniv_lib.dir/__/mesch/submat.c.o CMakeFiles/nrniv_lib.dir/__/mesch/svd.c.o CMakeFiles/nrniv_lib.dir/__/mesch/symmeig.c.o CMakeFiles/nrniv_lib.dir/__/mesch/update.c.o CMakeFiles/nrniv_lib.dir/__/mesch/vecop.c.o CMakeFiles/nrniv_lib.dir/__/mesch/version.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zcopy.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zfunc.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zgivens.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zhessen.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zhsehldr.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zlufctr.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zmachine.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zmatio.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zmatlab.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zmatop.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zmemory.c.o CMakeFiles/nrniv_lib.dir/__/mesch/znorm.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zqrfctr.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zschur.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zsolve.c.o CMakeFiles/nrniv_lib.dir/__/mesch/zvecop.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/apcount.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/feature.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/intfire2.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/oclmp.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/ppmark.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/syn.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/exp2syn.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/hh.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/intfire4.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/passive.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/stim.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/vclmp.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/expsyn.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/intfire1.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/netstim.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/pattern.c.o CMakeFiles/nrniv_lib.dir/__/nrnoc/svclmp.c.o CMakeFiles/nrniv_lib.dir/__/gnu/ACG.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/Binomial.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/Complex.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/DiscUnif.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/Erlang.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/Geom.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/HypGeom.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/LogNorm.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/MLCG.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/NegExp.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/Normal.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/Poisson.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/RNG.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/Random.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/RndInt.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/SmplHist.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/SmplStat.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/Uniform.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/Weibull.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/builtin.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/d_avec.cpp.o CMakeFiles/nrniv_lib.dir/__/gnu/d_vec.cpp.o CMakeFiles/nrniv_lib.dir/__/scopmath/abort.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/adams.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/adeuler.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/adrunge.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/advance.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/boundary.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/crank.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/crout.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/csoda.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/csodabnc.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/deflate.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/dimplic.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/scoperf.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/euler.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/expfit.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/exprand.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/f2cmisc.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/factoria.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/force.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/gauss.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/gear.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/getmem.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/harmonic.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/heun.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/hyperbol.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/invert.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/lag.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/legendre.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/newton.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/normrand.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/perpulse.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/perstep.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/poisrand.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/poisson.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/praxis.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/pulse.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/quad.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/ramp.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/revhyper.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/revsawto.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/revsigmo.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/romberg.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/runge.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/sawtooth.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/schedule.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/seidel.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/sigmoid.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/simeq.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/simplex.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/sparse.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/vsparse.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/spline.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/squarewa.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/ssimplic.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/step.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/threshol.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/tridiag.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/sparse_thread.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/newton_thread.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/crout_thread.c.o CMakeFiles/nrniv_lib.dir/__/scopmath/ssimplic_thread.c.o CMakeFiles/nrniv_lib.dir/__/sparse13/spalloc.c.o CMakeFiles/nrniv_lib.dir/__/sparse13/spbuild.c.o CMakeFiles/nrniv_lib.dir/__/sparse13/spfactor.c.o CMakeFiles/nrniv_lib.dir/__/sparse13/spoutput.c.o CMakeFiles/nrniv_lib.dir/__/sparse13/spsolve.c.o CMakeFiles/nrniv_lib.dir/__/sparse13/sputils.c.o CMakeFiles/nrniv_lib.dir/__/sparse13/cspalloc.c.o CMakeFiles/nrniv_lib.dir/__/sparse13/cspbuild.c.o CMakeFiles/nrniv_lib.dir/__/sparse13/cspfactor.c.o CMakeFiles/nrniv_lib.dir/__/sparse13/cspoutput.c.o CMakeFiles/nrniv_lib.dir/__/sparse13/cspsolve.c.o CMakeFiles/nrniv_lib.dir/__/sparse13/csputils.c.o CMakeFiles/nrniv_lib.dir/__/sundials/cvodes/cvband.c.o CMakeFiles/nrniv_lib.dir/__/sundials/cvodes/cvbandpre.c.o CMakeFiles/nrniv_lib.dir/__/sundials/cvodes/cvbbdpre.c.o CMakeFiles/nrniv_lib.dir/__/sundials/cvodes/cvdense.c.o CMakeFiles/nrniv_lib.dir/__/sundials/cvodes/cvdiag.c.o CMakeFiles/nrniv_lib.dir/__/sundials/cvodes/cvodea.c.o CMakeFiles/nrniv_lib.dir/__/sundials/cvodes/cvodes.c.o CMakeFiles/nrniv_lib.dir/__/sundials/cvodes/cvodesio.c.o CMakeFiles/nrniv_lib.dir/__/sundials/cvodes/cvspgmr.c.o CMakeFiles/nrniv_lib.dir/__/sundials/ida/idaband.c.o CMakeFiles/nrniv_lib.dir/__/sundials/ida/idabbdpre.c.o CMakeFiles/nrniv_lib.dir/__/sundials/ida/ida.c.o CMakeFiles/nrniv_lib.dir/__/sundials/ida/idadense.c.o CMakeFiles/nrniv_lib.dir/__/sundials/ida/idaic.c.o CMakeFiles/nrniv_lib.dir/__/sundials/ida/idaio.c.o CMakeFiles/nrniv_lib.dir/__/sundials/ida/idaspgmr.c.o CMakeFiles/nrniv_lib.dir/__/sundials/shared/band.c.o CMakeFiles/nrniv_lib.dir/__/sundials/shared/dense.c.o CMakeFiles/nrniv_lib.dir/__/sundials/shared/iterative.c.o CMakeFiles/nrniv_lib.dir/__/sundials/shared/nvector.c.o CMakeFiles/nrniv_lib.dir/__/sundials/shared/nvector_serial.c.o CMakeFiles/nrniv_lib.dir/__/sundials/shared/smalldense.c.o CMakeFiles/nrniv_lib.dir/__/sundials/shared/spgmr.c.o CMakeFiles/nrniv_lib.dir/__/sundials/shared/sundialsmath.c.o CMakeFiles/nrniv_lib.dir/__/nrnmpi/nrnmpi.c.o CMakeFiles/nrniv_lib.dir/__/nrnmpi/bbsmpipack.c.o CMakeFiles/nrniv_lib.dir/__/nrnmpi/mpispike.c.o CMakeFiles/nrniv_lib.dir/__/nrnmpi/nrnrt.c.o CMakeFiles/nrniv_lib.dir/__/nrnpython/nrnpython.cpp.o CMakeFiles/nrniv_lib.dir/__/nrnpython/nrnpy_hoc.cpp.o CMakeFiles/nrniv_lib.dir/__/nrnpython/nrnpy_nrn.cpp.o CMakeFiles/nrniv_lib.dir/__/nrnpython/nrnpy_p2h.cpp.o CMakeFiles/nrniv_lib.dir/__/nrnpython/grids.cpp.o CMakeFiles/nrniv_lib.dir/__/nrnpython/rxd.cpp.o CMakeFiles/nrniv_lib.dir/__/nrnpython/rxd_extracellular.cpp.o CMakeFiles/nrniv_lib.dir/__/nrnpython/rxd_intracellular.cpp.o CMakeFiles/nrniv_lib.dir/__/nrnpython/rxd_vol.cpp.o CMakeFiles/nrniv_lib.dir/__/nrnpython/rxd_marching_cubes.c.o CMakeFiles/nrniv_lib.dir/__/nrnpython/rxd_llgramarea.c.o CMakeFiles/nrniv_lib.dir/__/ivos/file.cpp.o CMakeFiles/nrniv_lib.dir/__/ivos/listimpl.cpp.o CMakeFiles/nrniv_lib.dir/__/ivos/math.cpp.o CMakeFiles/nrniv_lib.dir/__/ivos/memory.cpp.o CMakeFiles/nrniv_lib.dir/__/ivos/string.cpp.o CMakeFiles/nrniv_lib.dir/__/ivos/ustring.cpp.o CMakeFiles/nrniv_lib.dir/__/ivos/observe.cpp.o CMakeFiles/nrniv_lib.dir/__/ivos/regexp.cpp.o CMakeFiles/nrniv_lib.dir/__/ivos/resource.cpp.o ../../lib/libreadline.a /System/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib /usr/lib/libcurses.dylib /usr/lib/libform.dylib
Undefined symbols for architecture x86_64:
"_modl_reg", referenced from:
_hoc_last_init in init.c.o
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status
Couldn't reproduce on my mac. Looks like it was due to the fact Python2.7 on Mac OS X is compiled by default with the alias "cc", maybe you had a discrepancy over there (see https://stackoverflow.com/questions/28121148/how-to-fix-cc-error-unrecognized-command-line-option-wshorten-64-to-32-is/46610651)
So, the reason why this is happening is the following:
When src/nrnpython/setup.py
is executed, the environment has neither CFLAGS
or CPPFLAGS
set. With python 2.7 and whatever distutils runs within this will load a set of flags when running the build_ext
command. Specifically this happens in distutils/command/build_ext.py:run()
as customize_compiler(self.compiler)
is called. This function is defined in distutils/sysconfig.py
.
if sys.platform == "darwin":
global _config_vars
# Use get_config_var() to ensure _config_vars is initialized.
if not get_config_var('CUSTOMIZED_OSX_COMPILER'):
import _osx_support
_osx_support.customize_compiler(_config_vars)
_config_vars['CUSTOMIZED_OSX_COMPILER'] = 'True'
(cc, cxx, opt, cflags, ccshared, ldshared, so_ext, ar, ar_flags) = \
get_config_vars('CC', 'CXX', 'OPT', 'CFLAGS',
'CCSHARED', 'LDSHARED', 'SO', 'AR',
'ARFLAGS')
If the environment variables are set, the defaults are overwritten:
if 'CFLAGS' in os.environ:
cflags = opt + ' ' + os.environ['CFLAGS']
ldshared = ldshared + ' ' + os.environ['CFLAGS']
if 'CPPFLAGS' in os.environ:
cpp = cpp + ' ' + os.environ['CPPFLAGS']
cflags = cflags + ' ' + os.environ['CPPFLAGS']
ldshared = ldshared + ' ' + os.environ['CPPFLAGS']
By the way _osx_support
is found here: /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/_osx_support.py
And here's a little bit more context (_osx_support.py
):
def customize_config_vars(_config_vars):
"""Customize Python build configuration variables.
Called internally from sysconfig with a mutable mapping
containing name/value pairs parsed from the configured
makefile used to build this interpreter. Returns
the mapping updated as needed to reflect the environment
in which the interpreter is running; in the case of
a Python from a binary installer, the installed
environment may be very different from the build
environment, i.e. different OS levels, different
built tools, different available CPU architectures.
This customization is performed whenever
distutils.sysconfig.get_config_vars() is first
called. It may be used in environments where no
compilers are present, i.e. when installing pure
Python dists. Customization of compiler paths
and detection of unavailable archs is deferred
until the first extension module build is
requested (in distutils.sysconfig.customize_compiler).
Currently called from distutils.sysconfig
"""
In short: the cflags are set by default to be the same as the ones used to build python.
Since @pramodk asked. When building with python 3.9 this issue does not appear. distutils evidently uses the correct set of build arguments. Here is the relevant build command issued by the setup.py
:
/usr/local/bin/gcc-10 -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -I/usr/local/include -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk -I/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include -I/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers -DNRNCMAKE=1 -I/Users/awile/workbench/fix_nrn_osx_cmake/nrn/src/oc -I../oc -I/Users/awile/workbench/fix_nrn_osx_cmake/nrn/src/nrnmpi -I/usr/local/include -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/sqlite/include -I/Users/awile/workbench/fix_nrn_osx_cmake/.venv/include -I/usr/local/Cellar/python@3.9/3.9.1_5/Frameworks/Python.framework/Versions/3.9/include/python3.9 -c inithoc.cpp -o build/temp.macosx-10.15-x86_64-3.9/inithoc.o
/usr/local/bin/g++-10 -bundle -undefined dynamic_lookup -L/usr/local/lib -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk build/temp.macosx-10.15-x86_64-3.9/inithoc.o -L/usr/local/lib -L/../lib -L/Users/awile/workbench/fix_nrn_osx_cmake/nrn/build/lib -L/usr/local/lib -L/usr/local/opt/openssl@1.1/lib -L/usr/local/opt/sqlite/lib -lnrniv -o /Users/awile/workbbench/fix_nrn_osx_cmake/nrn/build/lib/python/neuron/hoc.cpython-39-darwin.so -Wl,-rpath,@loader_path/../../ -Wl,-rpath,/../lib
as you can see it uses for example -isysroot
instead of -iwithsysroot
.
But it is also possible that the python 3.9 from homebrew was built with gcc and hence the flags will be "correct" even if the behavior is wrong.
I am using following cmake options with GCC-9:
And while building we get:
If I remember this is because setup.py / setuptools by default assume Clang compiler on OSX and uses corresponding flags.
I will create a PR with fix soon.