NeuralEnsemble / PyNN

A Python package for simulator-independent specification of neuronal network models.
Other
275 stars 125 forks source link

Build failure trying to build 0.11.0 for Fedora #780

Closed penguinpee closed 1 year ago

penguinpee commented 1 year ago

I had a first shot at updating PyNN to 0.11.0 in Fedora. The build failed with:

In file included from /builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/pynn_extensions.cpp:14:
/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/simple_stochastic_synapse.h: In member function 'nest::port pynn::simple_stochastic_synapse<targetidentifierT>::ConnTestDummyNode::handles_test_event(nest::SpikeEvent&, nest::rport)':
/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/simple_stochastic_synapse.h:100:20: error: 'invalid_port' is not a member of 'nest'; did you mean 'invalid_port_'?
  100 |       return nest::invalid_port;
      |                    ^~~~~~~~~~~~
      |                    invalid_port_
/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/simple_stochastic_synapse.h: In member function 'nest::port pynn::simple_stochastic_synapse<targetidentifierT>::ConnTestDummyNode::handles_test_event(nest::DSSpikeEvent&, nest::rport)':
/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/simple_stochastic_synapse.h:106:20: error: 'invalid_port' is not a member of 'nest'; did you mean 'invalid_port_'?
  106 |       return nest::invalid_port;
      |                    ^~~~~~~~~~~~
      |                    invalid_port_
In file included from /builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/pynn_extensions.cpp:15:
/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/stochastic_stp_synapse.h: In member function 'nest::port pynn::stochastic_stp_synapse<targetidentifierT>::ConnTestDummyNode::handles_test_event(nest::SpikeEvent&, nest::rport)':
/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/stochastic_stp_synapse.h:116:20: error: 'invalid_port' is not a member of 'nest'; did you mean 'invalid_port_'?
  116 |       return nest::invalid_port;
      |                    ^~~~~~~~~~~~
      |                    invalid_port_
In file included from /builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/pynn_extensions.cpp:14:
/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/simple_stochastic_synapse.h: In member function 'nest::port pynn::simple_stochastic_synapse<targetidentifierT>::ConnTestDummyNode::handles_test_event(nest::SpikeEvent&, nest::rport)':
/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/simple_stochastic_synapse.h:100:20: error: 'invalid_port' is not a member of 'nest'; did you mean 'invalid_port_'?
  100 |       return nest::invalid_port;
      |                    ^~~~~~~~~~~~
      |                    invalid_port_
/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/simple_stochastic_synapse.h: In member function 'nest::port pynn::simple_stochastic_synapse<targetidentifierT>::ConnTestDummyNode::handles_test_event(nest::DSSpikeEvent&, nest::rport)':
/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/simple_stochastic_synapse.h:106:20: error: 'invalid_port' is not a member of 'nest'; did you mean 'invalid_port_'?
  106 |       return nest::invalid_port;
      |                    ^~~~~~~~~~~~
      |                    invalid_port_
In file included from /builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/pynn_extensions.cpp:15:
/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/stochastic_stp_synapse.h: In member function 'nest::port pynn::stochastic_stp_synapse<targetidentifierT>::ConnTestDummyNode::handles_test_event(nest::SpikeEvent&, nest::rport)':
/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/stochastic_stp_synapse.h:116:20: error: 'invalid_port' is not a member of 'nest'; did you mean 'invalid_port_'?
  116 |       return nest::invalid_port;
      |                    ^~~~~~~~~~~~
      |                    invalid_port_
gmake[2]: *** [CMakeFiles/pynn_extensions_lib.dir/build.make:79: CMakeFiles/pynn_extensions_lib.dir/pynn_extensions.cpp.o] Error 1
gmake[2]: Leaving directory '/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/redhat-linux-build'
gmake[1]: *** [CMakeFiles/Makefile2:141: CMakeFiles/pynn_extensions_lib.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....
gmake[2]: Leaving directory '/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/redhat-linux-build'
gmake[2]: *** [CMakeFiles/pynn_extensions_module.dir/build.make:79: CMakeFiles/pynn_extensions_module.dir/pynn_extensions.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:115: CMakeFiles/pynn_extensions_module.dir/all] Error 2
gmake[1]: Leaving directory '/builddir/build/BUILD/PyNN-0.11.0/build/lib/pyNN/nest/extensions/redhat-linux-build'
gmake: *** [Makefile:159: all] Error 2

Any clues? Am I missing a step? This is in rawhide, where Python 3.12 and Cython 3.0.0 have recently landed.

-------------------------------------------------------
pynn_extensions Configuration Summary
-------------------------------------------------------

C++ compiler         : /usr/bin/g++
Build static libs    : OFF
-- Configuring done (0.5s)
C++ compiler flags   : -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -m64  -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer
NEST compiler flags  : -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -m64  -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -std=c++11 -Wall -fopenmp -fdiagnostics-color=auto
NEST include dirs    :  -I/usr/include/nest -I/usr/include -I/usr/include -I/usr/include -I/usr/include -I/usr/include
NEST libraries flags : -L/usr/lib64/ -lnestutil -lnest -lsli -lnestkernel -fopenmp /lib64/libltdl.so /lib64/libreadline.so /lib64/libncurses.so /usr/lib64/libgsl.so /usr/lib64/libgslcblas.so /usr/lib64/libneurosim.so /usr/lib64/libpy3neurosim.so

-------------------------------------------------------

Tagging @sanjayankur31 since he is the primary maintainer in Fedora. Not sure if he tried already. But this looks more like something in the code.

sanjayankur31 commented 1 year ago

Thanks @penguinpee . We need to update NEST first. I've had this open for NEST 3.4 for a while, but then 3.5 came out. I'll test it out again today and see if everything works:

https://src.fedoraproject.org/rpms/nest/pull-request/5

penguinpee commented 1 year ago

Keep an eye on #779 then. :wink:

sanjayankur31 commented 1 year ago

Yeh, we'll update to 3.4 and update pynn for now, and when it supports 3.5, we'll update nest and it together.

apdavison commented 1 year ago

By the way, I've tested PyNN 0.11.0 with NEST 3.5, and all the tests pass: https://github.com/NeuralEnsemble/PyNN/actions/runs/5387542842

penguinpee commented 1 year ago

Yeh, we'll update to 3.4 and update pynn for now, and when it supports 3.5, we'll update nest and it together.

I was able to build PyNN 0.11.0 using NEST 3.4: https://copr.fedorainfracloud.org/coprs/gui1ty/neuro-sig/build/6203767/