atcollab / at

Accelerator Toolbox
Apache License 2.0
48 stars 31 forks source link

Compilation error when building from repository #800

Closed TeresiaOlsson closed 1 month ago

TeresiaOlsson commented 1 month ago

Hi,

I can no longer build pyAT from the git repository. I'm using a recipe to build it into a container which has worked fine before so something has changed, but the error message is vague so I'm not sure what it is. It looks like it can't compile atimplib.c anymore but unclear if the error really is there.

I'm using Ubuntu 22.04 and Python 3.12.4.

Anyone has a guess for what the problem might be?

This is what I get:

+ git clone https://github.com/atcollab/at.git
Cloning into 'at'...
remote: Enumerating objects: 33130, done.
remote: Counting objects: 100% (7168/7168), done.
remote: Compressing objects: 100% (1748/1748), done.
remote: Total 33130 (delta 6145), reused 5995 (delta 5395), pack-reused 25962
Receiving objects: 100% (33130/33130), 109.43 MiB | 6.08 MiB/s, done.
Resolving deltas: 100% (24204/24204), done.
+ cd at
+ pip3 install .
Processing /at
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: scipy>=1.4.0 in /usr/local/lib/python3.10/dist-packages (from accelerator-toolbox==0.6.2.dev6+gac016b7f) (1.14.0)
Requirement already satisfied: numpy>=1.23.5 in /usr/local/lib/python3.10/dist-packages (from accelerator-toolbox==0.6.2.dev6+gac016b7f) (2.0.1)
Building wheels for collected packages: accelerator-toolbox
  Building wheel for accelerator-toolbox (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for accelerator-toolbox (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [196 lines of output]
      /tmp/pip-build-env-9g_l99ak/overlay/local/lib/python3.10/dist-packages/setuptools/config/expand.py:130: SetuptoolsWarning: File '/at/LICENSE.txt' cannot be found
        return '\n'.join(
      ** Entering set_environ. Config settings: None
      ** MPI: 0
      ** OPENMP: 0
      ** Entering setup.py: ['/usr/local/lib/python3.10/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py', 'bdist_wheel', '--dist-dir', '/tmp/pip-wheel-92kp9e7g/.tmp-294a2uzc']
      ** MPI: 0
      ** OPENMP: 0
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-cpython-310
      creating build/lib.linux-x86_64-cpython-310/at
      copying pyat/at/future.py -> build/lib.linux-x86_64-cpython-310/at
      copying pyat/at/constants.py -> build/lib.linux-x86_64-cpython-310/at
      copying pyat/at/_version.py -> build/lib.linux-x86_64-cpython-310/at
      copying pyat/at/__init__.py -> build/lib.linux-x86_64-cpython-310/at
      creating build/lib.linux-x86_64-cpython-310/machine_data
      copying pyat/machine_data/__init__.py -> build/lib.linux-x86_64-cpython-310/machine_data
      creating build/lib.linux-x86_64-cpython-310/at/matching
      copying pyat/at/matching/matching.py -> build/lib.linux-x86_64-cpython-310/at/matching
      copying pyat/at/matching/globalfit.py -> build/lib.linux-x86_64-cpython-310/at/matching
      copying pyat/at/matching/__init__.py -> build/lib.linux-x86_64-cpython-310/at/matching
      creating build/lib.linux-x86_64-cpython-310/at/plot
      copying pyat/at/plot/specific.py -> build/lib.linux-x86_64-cpython-310/at/plot
      copying pyat/at/plot/synopt.py -> build/lib.linux-x86_64-cpython-310/at/plot
      copying pyat/at/plot/standalone.py -> build/lib.linux-x86_64-cpython-310/at/plot
      copying pyat/at/plot/__init__.py -> build/lib.linux-x86_64-cpython-310/at/plot
      copying pyat/at/plot/generic.py -> build/lib.linux-x86_64-cpython-310/at/plot
      creating build/lib.linux-x86_64-cpython-310/at/physics
      copying pyat/at/physics/ring_parameters.py -> build/lib.linux-x86_64-cpython-310/at/physics
      copying pyat/at/physics/energy_loss.py -> build/lib.linux-x86_64-cpython-310/at/physics
      copying pyat/at/physics/matrix.py -> build/lib.linux-x86_64-cpython-310/at/physics
      copying pyat/at/physics/fastring.py -> build/lib.linux-x86_64-cpython-310/at/physics
      copying pyat/at/physics/nonlinear.py -> build/lib.linux-x86_64-cpython-310/at/physics
      copying pyat/at/physics/harmonic_analysis.py -> build/lib.linux-x86_64-cpython-310/at/physics
      copying pyat/at/physics/radiation.py -> build/lib.linux-x86_64-cpython-310/at/physics
      copying pyat/at/physics/amat.py -> build/lib.linux-x86_64-cpython-310/at/physics
      copying pyat/at/physics/frequency_maps.py -> build/lib.linux-x86_64-cpython-310/at/physics
      copying pyat/at/physics/revolution.py -> build/lib.linux-x86_64-cpython-310/at/physics
      copying pyat/at/physics/__init__.py -> build/lib.linux-x86_64-cpython-310/at/physics
      copying pyat/at/physics/orbit.py -> build/lib.linux-x86_64-cpython-310/at/physics
      copying pyat/at/physics/linear.py -> build/lib.linux-x86_64-cpython-310/at/physics
      creating build/lib.linux-x86_64-cpython-310/at/integrators
      copying pyat/at/integrators/pyDriftPass.py -> build/lib.linux-x86_64-cpython-310/at/integrators
      copying pyat/at/integrators/pyIdentityPass.py -> build/lib.linux-x86_64-cpython-310/at/integrators
      copying pyat/at/integrators/__init__.py -> build/lib.linux-x86_64-cpython-310/at/integrators
      copying pyat/at/integrators/pyChangeRefPass.py -> build/lib.linux-x86_64-cpython-310/at/integrators
      creating build/lib.linux-x86_64-cpython-310/at/lattice
      copying pyat/at/lattice/elements.py -> build/lib.linux-x86_64-cpython-310/at/lattice
      copying pyat/at/lattice/variable_elements.py -> build/lib.linux-x86_64-cpython-310/at/lattice
      copying pyat/at/lattice/deprecated.py -> build/lib.linux-x86_64-cpython-310/at/lattice
      copying pyat/at/lattice/lattice_object.py -> build/lib.linux-x86_64-cpython-310/at/lattice
      copying pyat/at/lattice/particle_object.py -> build/lib.linux-x86_64-cpython-310/at/lattice
      copying pyat/at/lattice/options.py -> build/lib.linux-x86_64-cpython-310/at/lattice
      copying pyat/at/lattice/cavity_access.py -> build/lib.linux-x86_64-cpython-310/at/lattice
      copying pyat/at/lattice/rectangular_bend.py -> build/lib.linux-x86_64-cpython-310/at/lattice
      copying pyat/at/lattice/utils.py -> build/lib.linux-x86_64-cpython-310/at/lattice
      copying pyat/at/lattice/axisdef.py -> build/lib.linux-x86_64-cpython-310/at/lattice
      copying pyat/at/lattice/idtable_element.py -> build/lib.linux-x86_64-cpython-310/at/lattice
      copying pyat/at/lattice/variables.py -> build/lib.linux-x86_64-cpython-310/at/lattice
      copying pyat/at/lattice/lattice_variables.py -> build/lib.linux-x86_64-cpython-310/at/lattice
      copying pyat/at/lattice/__init__.py -> build/lib.linux-x86_64-cpython-310/at/lattice
      creating build/lib.linux-x86_64-cpython-310/at/collective
      copying pyat/at/collective/wake_object.py -> build/lib.linux-x86_64-cpython-310/at/collective
      copying pyat/at/collective/wake_elements.py -> build/lib.linux-x86_64-cpython-310/at/collective
      copying pyat/at/collective/haissinski.py -> build/lib.linux-x86_64-cpython-310/at/collective
      copying pyat/at/collective/wake_functions.py -> build/lib.linux-x86_64-cpython-310/at/collective
      copying pyat/at/collective/beam_loading.py -> build/lib.linux-x86_64-cpython-310/at/collective
      copying pyat/at/collective/__init__.py -> build/lib.linux-x86_64-cpython-310/at/collective
      creating build/lib.linux-x86_64-cpython-310/at/latticetools
      copying pyat/at/latticetools/observablelist.py -> build/lib.linux-x86_64-cpython-310/at/latticetools
      copying pyat/at/latticetools/observables.py -> build/lib.linux-x86_64-cpython-310/at/latticetools
      copying pyat/at/latticetools/__init__.py -> build/lib.linux-x86_64-cpython-310/at/latticetools
      creating build/lib.linux-x86_64-cpython-310/at/tracking
      copying pyat/at/tracking/track.py -> build/lib.linux-x86_64-cpython-310/at/tracking
      copying pyat/at/tracking/deprecated.py -> build/lib.linux-x86_64-cpython-310/at/tracking
      copying pyat/at/tracking/utils.py -> build/lib.linux-x86_64-cpython-310/at/tracking
      copying pyat/at/tracking/__init__.py -> build/lib.linux-x86_64-cpython-310/at/tracking
      copying pyat/at/tracking/particles.py -> build/lib.linux-x86_64-cpython-310/at/tracking
      creating build/lib.linux-x86_64-cpython-310/at/load
      copying pyat/at/load/madx.py -> build/lib.linux-x86_64-cpython-310/at/load
      copying pyat/at/load/json.py -> build/lib.linux-x86_64-cpython-310/at/load
      copying pyat/at/load/mad8.py -> build/lib.linux-x86_64-cpython-310/at/load
      copying pyat/at/load/file_input.py -> build/lib.linux-x86_64-cpython-310/at/load
      copying pyat/at/load/allfiles.py -> build/lib.linux-x86_64-cpython-310/at/load
      copying pyat/at/load/reprfile.py -> build/lib.linux-x86_64-cpython-310/at/load
      copying pyat/at/load/matfile.py -> build/lib.linux-x86_64-cpython-310/at/load
      copying pyat/at/load/utils.py -> build/lib.linux-x86_64-cpython-310/at/load
      copying pyat/at/load/elegant.py -> build/lib.linux-x86_64-cpython-310/at/load
      copying pyat/at/load/__init__.py -> build/lib.linux-x86_64-cpython-310/at/load
      copying pyat/at/load/tracy.py -> build/lib.linux-x86_64-cpython-310/at/load
      creating build/lib.linux-x86_64-cpython-310/at/acceptance
      copying pyat/at/acceptance/boundary.py -> build/lib.linux-x86_64-cpython-310/at/acceptance
      copying pyat/at/acceptance/momap_alternative.py -> build/lib.linux-x86_64-cpython-310/at/acceptance
      copying pyat/at/acceptance/touschek.py -> build/lib.linux-x86_64-cpython-310/at/acceptance
      copying pyat/at/acceptance/acceptance.py -> build/lib.linux-x86_64-cpython-310/at/acceptance
      copying pyat/at/acceptance/__init__.py -> build/lib.linux-x86_64-cpython-310/at/acceptance
      copying pyat/at/cconfig.pyi -> build/lib.linux-x86_64-cpython-310/at
      copying pyat/machine_data/esrf.m -> build/lib.linux-x86_64-cpython-310/machine_data
      copying pyat/machine_data/australian_synchrotron.m -> build/lib.linux-x86_64-cpython-310/machine_data
      copying pyat/machine_data/soleil.m -> build/lib.linux-x86_64-cpython-310/machine_data
      copying pyat/machine_data/thomx.m -> build/lib.linux-x86_64-cpython-310/machine_data
      copying pyat/machine_data/err.mat -> build/lib.linux-x86_64-cpython-310/machine_data
      copying pyat/machine_data/hmba.mat -> build/lib.linux-x86_64-cpython-310/machine_data
      copying pyat/machine_data/errnoclass.mat -> build/lib.linux-x86_64-cpython-310/machine_data
      copying pyat/machine_data/dba.mat -> build/lib.linux-x86_64-cpython-310/machine_data
      copying pyat/at/physics/diffmatrix.pyi -> build/lib.linux-x86_64-cpython-310/at/physics
      copying pyat/at/tracking/atpass.pyi -> build/lib.linux-x86_64-cpython-310/at/tracking
      running build_ext
      building 'at.tracking.atpass' extension
      creating build/temp.linux-x86_64-cpython-310
      creating build/temp.linux-x86_64-cpython-310/pyat
      x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DPYAT -I/tmp/pip-build-env-9g_l99ak/overlay/local/lib/python3.10/dist-packages/numpy/_core/include -Iatintegrators -I/usr/include/python3.10 -c pyat/at.c -o build/temp.linux-x86_64-cpython-310/pyat/at.o -std=c99 -Wno-unused-function
      In file included from pyat/at.c:19:
      atintegrators/atrandom.c: In function ‘pcg32_random_r’:
      atintegrators/atrandom.c:56: warning: ignoring ‘#pragma omp atomic’ [-Wunknown-pragmas]
         56 |     #pragma omp atomic read
            |
      atintegrators/atrandom.c:58: warning: ignoring ‘#pragma omp atomic’ [-Wunknown-pragmas]
         58 |     #pragma omp atomic write
            |
      x86_64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -g -fwrapv -O2 build/temp.linux-x86_64-cpython-310/pyat/at.o -L/usr/lib/x86_64-linux-gnu -o build/lib.linux-x86_64-cpython-310/at/tracking/atpass.cpython-310-x86_64-linux-gnu.so
      building 'at.cconfig' extension
      creating build/temp.linux-x86_64-cpython-310/pyat/at
      x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DPYAT -I/usr/include/python3.10 -c pyat/at/cconfig.c -o build/temp.linux-x86_64-cpython-310/pyat/at/cconfig.o -std=c99 -Wno-unused-function
      x86_64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -g -fwrapv -O2 build/temp.linux-x86_64-cpython-310/pyat/at/cconfig.o -L/usr/lib/x86_64-linux-gnu -o build/lib.linux-x86_64-cpython-310/at/cconfig.cpython-310-x86_64-linux-gnu.so
      building 'at.physics.diffmatrix' extension
      creating build/temp.linux-x86_64-cpython-310/atmat
      creating build/temp.linux-x86_64-cpython-310/atmat/atphysics
      creating build/temp.linux-x86_64-cpython-310/atmat/atphysics/Radiation
      x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DPYAT -I/tmp/pip-build-env-9g_l99ak/overlay/local/lib/python3.10/dist-packages/numpy/_core/include -Iatintegrators -I/usr/include/python3.10 -c atmat/atphysics/Radiation/findmpoleraddiffmatrix.c -o build/temp.linux-x86_64-cpython-310/atmat/atphysics/Radiation/findmpoleraddiffmatrix.o -std=c99 -Wno-unused-function
      x86_64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -g -fwrapv -O2 build/temp.linux-x86_64-cpython-310/atmat/atphysics/Radiation/findmpoleraddiffmatrix.o -L/usr/lib/x86_64-linux-gnu -o build/lib.linux-x86_64-cpython-310/at/physics/diffmatrix.cpython-310-x86_64-linux-gnu.so
      building 'at.integrators.IdTablePass' extension
      creating build/temp.linux-x86_64-cpython-310/atintegrators
      x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DPYAT -I/tmp/pip-build-env-9g_l99ak/overlay/local/lib/python3.10/dist-packages/numpy/_core/include -I[] -Iatintegrators -I/usr/include/python3.10 -c atintegrators/IdTablePass.c -o build/temp.linux-x86_64-cpython-310/atintegrators/IdTablePass.o -std=c99 -Wno-unused-function
      x86_64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -g -fwrapv -O2 build/temp.linux-x86_64-cpython-310/atintegrators/IdTablePass.o -L/usr/lib/x86_64-linux-gnu -o build/lib.linux-x86_64-cpython-310/at/integrators/IdTablePass.cpython-310-x86_64-linux-gnu.so
      building 'at.integrators.Matrix66Pass' extension
      x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DPYAT -I/tmp/pip-build-env-9g_l99ak/overlay/local/lib/python3.10/dist-packages/numpy/_core/include -I[] -Iatintegrators -I/usr/include/python3.10 -c atintegrators/Matrix66Pass.c -o build/temp.linux-x86_64-cpython-310/atintegrators/Matrix66Pass.o -std=c99 -Wno-unused-function
      x86_64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -g -fwrapv -O2 build/temp.linux-x86_64-cpython-310/atintegrators/Matrix66Pass.o -L/usr/lib/x86_64-linux-gnu -o build/lib.linux-x86_64-cpython-310/at/integrators/Matrix66Pass.cpython-310-x86_64-linux-gnu.so
      building 'at.integrators.RFCavityPass' extension
      x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DPYAT -I/tmp/pip-build-env-9g_l99ak/overlay/local/lib/python3.10/dist-packages/numpy/_core/include -I[] -Iatintegrators -I/usr/include/python3.10 -c atintegrators/RFCavityPass.c -o build/temp.linux-x86_64-cpython-310/atintegrators/RFCavityPass.o -std=c99 -Wno-unused-function
      In file included from /usr/include/python3.10/Python.h:118,
                       from atintegrators/atcommon.h:6,
                       from atintegrators/atelem.c:8,
                       from atintegrators/attrackfunc.c:2,
                       from atintegrators/RFCavityPass.c:9:
      /usr/include/python3.10/cpython/pytime.h:150:60: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
        150 | PyAPI_FUNC(int) _PyTime_FromTimespec(_PyTime_t *tp, struct timespec *ts);
            |                                                            ^~~~~~~~
      /usr/include/python3.10/cpython/pytime.h:155:56: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
        155 | PyAPI_FUNC(int) _PyTime_AsTimespec(_PyTime_t t, struct timespec *ts);
            |                                                        ^~~~~~~~
      x86_64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -g -fwrapv -O2 build/temp.linux-x86_64-cpython-310/atintegrators/RFCavityPass.o -L/usr/lib/x86_64-linux-gnu -o build/lib.linux-x86_64-cpython-310/at/integrators/RFCavityPass.cpython-310-x86_64-linux-gnu.so
      building 'at.integrators.StrMPoleSymplectic4QuantPass' extension
      x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DPYAT -I/tmp/pip-build-env-9g_l99ak/overlay/local/lib/python3.10/dist-packages/numpy/_core/include -I[] -Iatintegrators -I/usr/include/python3.10 -c atintegrators/StrMPoleSymplectic4QuantPass.c -o build/temp.linux-x86_64-cpython-310/atintegrators/StrMPoleSymplectic4QuantPass.o -std=c99 -Wno-unused-function
      In file included from /usr/include/python3.10/Python.h:118,
                       from atintegrators/atcommon.h:6,
                       from atintegrators/atelem.c:8,
                       from atintegrators/StrMPoleSymplectic4QuantPass.c:2:
      /usr/include/python3.10/cpython/pytime.h:150:60: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
        150 | PyAPI_FUNC(int) _PyTime_FromTimespec(_PyTime_t *tp, struct timespec *ts);
            |                                                            ^~~~~~~~
      /usr/include/python3.10/cpython/pytime.h:155:56: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
        155 | PyAPI_FUNC(int) _PyTime_AsTimespec(_PyTime_t t, struct timespec *ts);
            |                                                        ^~~~~~~~
      In file included from atintegrators/atquantlib.c:2,
                       from atintegrators/StrMPoleSymplectic4QuantPass.c:4:
      atintegrators/atrandom.c: In function ‘pcg32_random_r’:
      atintegrators/atrandom.c:56: warning: ignoring ‘#pragma omp atomic’ [-Wunknown-pragmas]
         56 |     #pragma omp atomic read
            |
      atintegrators/atrandom.c:58: warning: ignoring ‘#pragma omp atomic’ [-Wunknown-pragmas]
         58 |     #pragma omp atomic write
            |
      x86_64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -g -fwrapv -O2 build/temp.linux-x86_64-cpython-310/atintegrators/StrMPoleSymplectic4QuantPass.o -L/usr/lib/x86_64-linux-gnu -o build/lib.linux-x86_64-cpython-310/at/integrators/StrMPoleSymplectic4QuantPass.cpython-310-x86_64-linux-gnu.so
      building 'at.integrators.WakeFieldPass' extension
      x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -DPYAT -I/tmp/pip-build-env-9g_l99ak/overlay/local/lib/python3.10/dist-packages/numpy/_core/include -I[] -Iatintegrators -I/usr/include/python3.10 -c atintegrators/WakeFieldPass.c -o build/temp.linux-x86_64-cpython-310/atintegrators/WakeFieldPass.o -std=c99 -Wno-unused-function
      In file included from atintegrators/WakeFieldPass.c:2:
      atintegrators/atimplib.c: In function ‘compute_kicks_longres’:
      atintegrators/atimplib.c:300:27: warning: unused variable ‘loopend’ [-Wunused-variable]
        300 |     int i,ii,ib,loopstart,loopend;
            |                           ^~~~~~~
      atintegrators/atimplib.c:300:17: warning: unused variable ‘loopstart’ [-Wunused-variable]
        300 |     int i,ii,ib,loopstart,loopend;
            |                 ^~~~~~~~~
      atintegrators/atimplib.c: In function ‘compute_kicks_phasor’:
      atintegrators/atimplib.c:388:43: error: ‘I’ undeclared (first use in this function)
        388 |     double complex vbeamc = vbeam[0]*cexp(I*vbeam[1]);
            |                                           ^
      atintegrators/atimplib.c:388:43: note: each undeclared identifier is reported only once for each function it appears in
      atintegrators/atimplib.c:380:14: warning: unused variable ‘is’ [-Wunused-variable]
        380 |     int i,ib,is;
            |              ^~
      error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for accelerator-toolbox
Failed to build accelerator-toolbox
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (accelerator-toolbox)
TeresiaOlsson commented 1 month ago

Looks like it's commit 5028aafee80175c8f207a902b271779c53ee255a where I no longer can compile. Did this fix also require new dependencies to be able to compile?

In my recipe I only do the following and get whatever the default version happen to be.

    apt-get update

    # Install Python 3 and pip    
    apt-get install -y --no-install-recommends \
       python3 \
       python3-pip \

    # Update pip to newer version
    pip3 install --upgrade pip        

    # Install general tools Python packages
    pip3 install --progress-bar off wheel
    pip3 install --progress-bar off \
        h5py \
        matplotlib \
        numpy \
        pandas \
        scipy \
        scikit-optimize \
        ipyparallel \
    tables \
    mpl-axes-aligner

    # Install ipykernel
    pip3 install --progress-bar off ipykernel

    # Install necessary packages to build from git
    apt-get install -y --no-install-recommends \
        build-essential \
        python3-dev \
        git   

    # Install pyAT from the repository
    git clone https://github.com/atcollab/at.git
    cd at
    pip3 install .  
swhite2401 commented 1 month ago

This is strange 'I' should be defined if complex.h is included... @lfarv any idea? Is this a side effect from the numpy 2.0 fix?

swhite2401 commented 1 month ago

by the way it seems you are using python 3.10 and not 3.12

TeresiaOlsson commented 1 month ago

Ah sorry @swhite2401, I'm actually using both. The recipe builds the container starting from a docker container which apparently has python 3.10 but I also tested it on my computer and there I have 3.12. But same error message for both.

lfarv commented 1 month ago

@TeresiaOlsson : This looks strange: the exact same conditions (ubuntu 22.04, python 3.12) are tested and succeed on GitHub.

In you 1st post, the job seems to stop abruptly, after a compiler warning but without error. I'd like to see a full log. Can you just retry

pip3 install -v -e .
lfarv commented 1 month ago

@TeresiaOlsson, @swhite2401 : Sorry, I missed the "I"

TeresiaOlsson commented 1 month ago

I'm also surprised since it worked on Github. I tried to understand what could be different in my setup but I didn't manage. This is what the full log give me:

pip3 install -v -e .
Using pip 24.0 from /home/a3744/anaconda3/envs/test-pyat/lib/python3.12/site-packages/pip (python 3.12)
Obtaining file:///home/a3744/Documents/tests/pyat-test/installation/at
  Running command pip subprocess to install build dependencies
  Ignoring oldest-supported-numpy: markers 'python_version <= "3.8"' don't match your environment
  Collecting setuptools>=64
    Using cached setuptools-71.1.0-py3-none-any.whl.metadata (6.6 kB)
  Collecting setuptools_scm>=7
    Using cached setuptools_scm-8.1.0-py3-none-any.whl.metadata (6.6 kB)
  Collecting numpy>=2.0
    Using cached numpy-2.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (60 kB)
  Collecting wheel
    Using cached wheel-0.43.0-py3-none-any.whl.metadata (2.2 kB)
  Collecting packaging>=20 (from setuptools_scm>=7)
    Using cached packaging-24.1-py3-none-any.whl.metadata (3.2 kB)
  Using cached setuptools-71.1.0-py3-none-any.whl (2.3 MB)
  Using cached setuptools_scm-8.1.0-py3-none-any.whl (43 kB)
  Using cached numpy-2.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (19.2 MB)
  Using cached wheel-0.43.0-py3-none-any.whl (65 kB)
  Using cached packaging-24.1-py3-none-any.whl (53 kB)
  Installing collected packages: wheel, setuptools, packaging, numpy, setuptools_scm
  Successfully installed numpy-2.0.1 packaging-24.1 setuptools-71.1.0 setuptools_scm-8.1.0 wheel-0.43.0
  Installing build dependencies ... done
  Running command Checking if build backend supports build_editable
  Checking if build backend supports build_editable ... done
  Running command Getting requirements to build editable
  /tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/config/expand.py:130: SetuptoolsWarning: File '/home/a3744/Documents/tests/pyat-test/installation/at/LICENSE.txt' cannot be found
    return '\n'.join(
  ** Entering get_requires. Config settings: None
  ** MPI: 0
  ** Additional modules: []
  ** Entering setup.py: ['/home/a3744/anaconda3/envs/test-pyat/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py', 'egg_info']
  ** MPI: None
  ** OPENMP: None
  running egg_info
  creating pyat/accelerator_toolbox.egg-info
  writing pyat/accelerator_toolbox.egg-info/PKG-INFO
  writing dependency_links to pyat/accelerator_toolbox.egg-info/dependency_links.txt
  writing requirements to pyat/accelerator_toolbox.egg-info/requires.txt
  writing top-level names to pyat/accelerator_toolbox.egg-info/top_level.txt
  writing manifest file 'pyat/accelerator_toolbox.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  adding license file 'LICENSE'
  writing manifest file 'pyat/accelerator_toolbox.egg-info/SOURCES.txt'
  ** Leaving setup.py
  ** Leaving get_requires
  Getting requirements to build editable ... done
  Running command Preparing editable metadata (pyproject.toml)
  /tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/config/expand.py:130: SetuptoolsWarning: File '/home/a3744/Documents/tests/pyat-test/installation/at/LICENSE.txt' cannot be found
    return '\n'.join(
  ** Entering setup.py: ['/home/a3744/anaconda3/envs/test-pyat/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py', 'dist_info', '--output-dir', '/tmp/pip-modern-metadata-0wvqg36n', '--keep-egg-info']
  ** MPI: None
  ** OPENMP: None
  running dist_info
  creating /tmp/pip-modern-metadata-0wvqg36n/accelerator_toolbox.egg-info
  writing /tmp/pip-modern-metadata-0wvqg36n/accelerator_toolbox.egg-info/PKG-INFO
  writing dependency_links to /tmp/pip-modern-metadata-0wvqg36n/accelerator_toolbox.egg-info/dependency_links.txt
  writing requirements to /tmp/pip-modern-metadata-0wvqg36n/accelerator_toolbox.egg-info/requires.txt
  writing top-level names to /tmp/pip-modern-metadata-0wvqg36n/accelerator_toolbox.egg-info/top_level.txt
  writing manifest file '/tmp/pip-modern-metadata-0wvqg36n/accelerator_toolbox.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  adding license file 'LICENSE'
  writing manifest file '/tmp/pip-modern-metadata-0wvqg36n/accelerator_toolbox.egg-info/SOURCES.txt'
  creating '/tmp/pip-modern-metadata-0wvqg36n/accelerator_toolbox-0.6.2.dev6+gac016b7f.dist-info'
  ** Leaving setup.py
  Preparing editable metadata (pyproject.toml) ... done
Requirement already satisfied: scipy>=1.4.0 in /home/a3744/anaconda3/envs/test-pyat/lib/python3.12/site-packages (from accelerator-toolbox==0.6.2.dev6+gac016b7f) (1.14.0)
Requirement already satisfied: numpy>=1.23.5 in /home/a3744/anaconda3/envs/test-pyat/lib/python3.12/site-packages (from accelerator-toolbox==0.6.2.dev6+gac016b7f) (1.26.4)
Building wheels for collected packages: accelerator-toolbox
  Running command Building editable for accelerator-toolbox (pyproject.toml)
  /tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/config/expand.py:130: SetuptoolsWarning: File '/home/a3744/Documents/tests/pyat-test/installation/at/LICENSE.txt' cannot be found
    return '\n'.join(
  ** Entering set_environ. Config settings: None
  ** MPI: 0
  ** OPENMP: 0
  ** Entering setup.py: ['/home/a3744/anaconda3/envs/test-pyat/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py', 'editable_wheel', '--dist-dir', '/tmp/pip-wheel-ggocm2z0/.tmp-x467xzu4']
  ** MPI: 0
  ** OPENMP: 0
  running editable_wheel
  creating /tmp/pip-wheel-ggocm2z0/.tmp-x467xzu4/accelerator_toolbox.egg-info
  writing /tmp/pip-wheel-ggocm2z0/.tmp-x467xzu4/accelerator_toolbox.egg-info/PKG-INFO
  writing dependency_links to /tmp/pip-wheel-ggocm2z0/.tmp-x467xzu4/accelerator_toolbox.egg-info/dependency_links.txt
  writing requirements to /tmp/pip-wheel-ggocm2z0/.tmp-x467xzu4/accelerator_toolbox.egg-info/requires.txt
  writing top-level names to /tmp/pip-wheel-ggocm2z0/.tmp-x467xzu4/accelerator_toolbox.egg-info/top_level.txt
  writing manifest file '/tmp/pip-wheel-ggocm2z0/.tmp-x467xzu4/accelerator_toolbox.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  adding license file 'LICENSE'
  writing manifest file '/tmp/pip-wheel-ggocm2z0/.tmp-x467xzu4/accelerator_toolbox.egg-info/SOURCES.txt'
  creating '/tmp/pip-wheel-ggocm2z0/.tmp-x467xzu4/accelerator_toolbox-0.6.2.dev6+gac016b7f.dist-info'
  creating /tmp/pip-wheel-ggocm2z0/.tmp-x467xzu4/accelerator_toolbox-0.6.2.dev6+gac016b7f.dist-info/WHEEL
  running build_py
  running build_ext
  building 'at.tracking.atpass' extension
  creating /tmp/tmp5vumpp42.build-temp/pyat
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c pyat/at.c -o /tmp/tmp5vumpp42.build-temp/pyat/at.o -std=c99 -Wno-unused-function
  In file included from pyat/at.c:19:
  atintegrators/atrandom.c: In function ‘pcg32_random_r’:
  atintegrators/atrandom.c:56: warning: ignoring ‘#pragma omp atomic’ [-Wunknown-pragmas]
     56 |     #pragma omp atomic read
        |
  atintegrators/atrandom.c:58: warning: ignoring ‘#pragma omp atomic’ [-Wunknown-pragmas]
     58 |     #pragma omp atomic write
        |
  creating /tmp/tmp4wf5ke5x.build-lib/at
  creating /tmp/tmp4wf5ke5x.build-lib/at/tracking
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/pyat/at.o -o /tmp/tmp4wf5ke5x.build-lib/at/tracking/atpass.cpython-312-x86_64-linux-gnu.so
  building 'at.cconfig' extension
  creating /tmp/tmp5vumpp42.build-temp/pyat/at
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c pyat/at/cconfig.c -o /tmp/tmp5vumpp42.build-temp/pyat/at/cconfig.o -std=c99 -Wno-unused-function
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/pyat/at/cconfig.o -o /tmp/tmp4wf5ke5x.build-lib/at/cconfig.cpython-312-x86_64-linux-gnu.so
  building 'at.physics.diffmatrix' extension
  creating /tmp/tmp5vumpp42.build-temp/atmat
  creating /tmp/tmp5vumpp42.build-temp/atmat/atphysics
  creating /tmp/tmp5vumpp42.build-temp/atmat/atphysics/Radiation
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atmat/atphysics/Radiation/findmpoleraddiffmatrix.c -o /tmp/tmp5vumpp42.build-temp/atmat/atphysics/Radiation/findmpoleraddiffmatrix.o -std=c99 -Wno-unused-function
  creating /tmp/tmp4wf5ke5x.build-lib/at/physics
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atmat/atphysics/Radiation/findmpoleraddiffmatrix.o -o /tmp/tmp4wf5ke5x.build-lib/at/physics/diffmatrix.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.StrMPoleSymplectic4Pass' extension
  creating /tmp/tmp5vumpp42.build-temp/atintegrators
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/StrMPoleSymplectic4Pass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/StrMPoleSymplectic4Pass.o -std=c99 -Wno-unused-function
  In file included from /home/a3744/anaconda3/envs/test-pyat/include/python3.12/Python.h:12,
                   from atintegrators/atcommon.h:6,
                   from atintegrators/atelem.c:8,
                   from atintegrators/StrMPoleSymplectic4Pass.c:2:
  /home/a3744/anaconda3/envs/test-pyat/include/python3.12/pyconfig.h:1875: warning: "_POSIX_C_SOURCE" redefined
   1875 | #define _POSIX_C_SOURCE 200809L
        |
  In file included from /usr/include/x86_64-linux-gnu/bits/libc-header-start.h:33,
                   from /usr/include/math.h:27,
                   from atintegrators/atconstants.h:4,
                   from atintegrators/StrMPoleSymplectic4Pass.c:1:
  /usr/include/features.h:319: note: this is the location of the previous definition
    319 | # define _POSIX_C_SOURCE 199506L
        |
  atintegrators/StrMPoleSymplectic4Pass.c: In function ‘StrMPoleSymplectic4Pass’:
  atintegrators/StrMPoleSymplectic4Pass.c:53: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
     53 |     #pragma omp parallel for if (num_particles > OMP_PARTICLE_THRESHOLD) default(none) \
        |
  creating /tmp/tmp4wf5ke5x.build-lib/at/integrators
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/StrMPoleSymplectic4Pass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/StrMPoleSymplectic4Pass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.WiggLinearPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/WiggLinearPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/WiggLinearPass.o -std=c99 -Wno-unused-function
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/WiggLinearPass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/WiggLinearPass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.ExactRectangularBendPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/ExactRectangularBendPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/ExactRectangularBendPass.o -std=c99 -Wno-unused-function
  In file included from /home/a3744/anaconda3/envs/test-pyat/include/python3.12/Python.h:12,
                   from atintegrators/atcommon.h:6,
                   from atintegrators/atelem.c:8,
                   from atintegrators/ExactRectangularBendPass.c:2:
  /home/a3744/anaconda3/envs/test-pyat/include/python3.12/pyconfig.h:1875: warning: "_POSIX_C_SOURCE" redefined
   1875 | #define _POSIX_C_SOURCE 200809L
        |
  In file included from /usr/include/x86_64-linux-gnu/bits/libc-header-start.h:33,
                   from /usr/include/math.h:27,
                   from atintegrators/atconstants.h:4,
                   from atintegrators/ExactRectangularBendPass.c:1:
  /usr/include/features.h:319: note: this is the location of the previous definition
    319 | # define _POSIX_C_SOURCE 199506L
        |
  atintegrators/ExactRectangularBendPass.c: In function ‘ExactRectangularBend’:
  atintegrators/ExactRectangularBendPass.c:66: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
     66 |     #pragma omp parallel for if (num_particles > OMP_PARTICLE_THRESHOLD) default(none) \
        |
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/ExactRectangularBendPass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/ExactRectangularBendPass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.SolenoidLinearPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/SolenoidLinearPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/SolenoidLinearPass.o -std=c99 -Wno-unused-function
  atintegrators/SolenoidLinearPass.c: In function ‘SolenoidLinearPass’:
  atintegrators/SolenoidLinearPass.c:36:17: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
     36 |                 if (T1) ATaddvv(r6,T1);
        |                 ^~
  atintegrators/SolenoidLinearPass.c:37:25: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
     37 |                         if (R1) ATmultmv(r6,R1);
        |                         ^~
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/SolenoidLinearPass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/SolenoidLinearPass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.Matrix66Pass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/Matrix66Pass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/Matrix66Pass.o -std=c99 -Wno-unused-function
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/Matrix66Pass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/Matrix66Pass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.QuadLinearPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/QuadLinearPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/QuadLinearPass.o -std=c99 -Wno-unused-function
  atintegrators/QuadLinearPass.c: In function ‘QuadLinearPass’:
  atintegrators/QuadLinearPass.c:87: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
     87 |     #pragma omp parallel for if (num_particles > OMP_PARTICLE_THRESHOLD) default(shared) shared(r,num_particles) private(c,r6)
        |
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/QuadLinearPass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/QuadLinearPass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.DriftPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/DriftPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/DriftPass.o -std=c99 -Wno-unused-function
  atintegrators/DriftPass.c: In function ‘DriftPass’:
  atintegrators/DriftPass.c:29: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
     29 |   #pragma omp parallel for if (num_particles > OMP_PARTICLE_THRESHOLD*10) default(shared) shared(r_in,num_particles) private(c,r6)
        |
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/DriftPass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/DriftPass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.EnergyLossRadPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/EnergyLossRadPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/EnergyLossRadPass.o -std=c99 -Wno-unused-function
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/EnergyLossRadPass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/EnergyLossRadPass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.IdTablePass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/IdTablePass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/IdTablePass.o -std=c99 -Wno-unused-function
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/IdTablePass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/IdTablePass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.SimpleQuantDiffPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/SimpleQuantDiffPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/SimpleQuantDiffPass.o -std=c99 -Wno-unused-function
  In file included from atintegrators/SimpleQuantDiffPass.c:3:
  atintegrators/atrandom.c: In function ‘pcg32_random_r’:
  atintegrators/atrandom.c:56: warning: ignoring ‘#pragma omp atomic’ [-Wunknown-pragmas]
     56 |     #pragma omp atomic read
        |
  atintegrators/atrandom.c:58: warning: ignoring ‘#pragma omp atomic’ [-Wunknown-pragmas]
     58 |     #pragma omp atomic write
        |
  atintegrators/SimpleQuantDiffPass.c: In function ‘SimpleQuantDiffPass’:
  atintegrators/SimpleQuantDiffPass.c:28: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
     28 |   #pragma omp parallel for if (num_particles > OMP_PARTICLE_THRESHOLD*10) default(shared) shared(r_in,num_particles) private(c,r6)
        |
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/SimpleQuantDiffPass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/SimpleQuantDiffPass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.TestRandomPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/TestRandomPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/TestRandomPass.o -std=c99 -Wno-unused-function
  In file included from atintegrators/TestRandomPass.c:9:
  atintegrators/atrandom.c: In function ‘pcg32_random_r’:
  atintegrators/atrandom.c:56: warning: ignoring ‘#pragma omp atomic’ [-Wunknown-pragmas]
     56 |     #pragma omp atomic read
        |
  atintegrators/atrandom.c:58: warning: ignoring ‘#pragma omp atomic’ [-Wunknown-pragmas]
     58 |     #pragma omp atomic write
        |
  atintegrators/TestRandomPass.c: In function ‘RandomPass’:
  atintegrators/TestRandomPass.c:40: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
     40 |     #pragma omp parallel for if (num_particles > OMP_PARTICLE_THRESHOLD) default(none)                      \
        |
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/TestRandomPass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/TestRandomPass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.BndMPoleSymplectic4E2Pass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/BndMPoleSymplectic4E2Pass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/BndMPoleSymplectic4E2Pass.o -std=c99 -Wno-unused-function
  In file included from /home/a3744/anaconda3/envs/test-pyat/include/python3.12/Python.h:12,
                   from atintegrators/atcommon.h:6,
                   from atintegrators/atelem.c:8,
                   from atintegrators/BndMPoleSymplectic4E2Pass.c:2:
  /home/a3744/anaconda3/envs/test-pyat/include/python3.12/pyconfig.h:1875: warning: "_POSIX_C_SOURCE" redefined
   1875 | #define _POSIX_C_SOURCE 200809L
        |
  In file included from /usr/include/x86_64-linux-gnu/bits/libc-header-start.h:33,
                   from /usr/include/math.h:27,
                   from atintegrators/atconstants.h:4,
                   from atintegrators/BndMPoleSymplectic4E2Pass.c:1:
  /usr/include/features.h:319: note: this is the location of the previous definition
    319 | # define _POSIX_C_SOURCE 199506L
        |
  atintegrators/BndMPoleSymplectic4E2Pass.c: In function ‘BndMPoleSymplectic4E2Pass’:
  atintegrators/BndMPoleSymplectic4E2Pass.c:108: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
    108 |     #pragma omp parallel for if (num_particles > OMP_PARTICLE_THRESHOLD) default(none) \
        |
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/BndMPoleSymplectic4E2Pass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/BndMPoleSymplectic4E2Pass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.GWigSymplecticPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/GWigSymplecticPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/GWigSymplecticPass.o -std=c99 -Wno-unused-function
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/GWigSymplecticPass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/GWigSymplecticPass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.BendLinearPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/BendLinearPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/BendLinearPass.o -std=c99 -Wno-unused-function
  atintegrators/BendLinearPass.c: In function ‘BendLinearPass’:
  atintegrators/BendLinearPass.c:148: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
    148 |     #pragma omp parallel for if (num_particles > OMP_PARTICLE_THRESHOLD) default(shared) shared(r,num_particles) private(c,r6)
        |
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/BendLinearPass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/BendLinearPass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.StrMPoleSymplectic4QuantPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/StrMPoleSymplectic4QuantPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/StrMPoleSymplectic4QuantPass.o -std=c99 -Wno-unused-function
  In file included from /home/a3744/anaconda3/envs/test-pyat/include/python3.12/Python.h:12,
                   from atintegrators/atcommon.h:6,
                   from atintegrators/atelem.c:8,
                   from atintegrators/StrMPoleSymplectic4QuantPass.c:2:
  /home/a3744/anaconda3/envs/test-pyat/include/python3.12/pyconfig.h:1875: warning: "_POSIX_C_SOURCE" redefined
   1875 | #define _POSIX_C_SOURCE 200809L
        |
  In file included from /usr/include/x86_64-linux-gnu/bits/libc-header-start.h:33,
                   from /usr/include/math.h:27,
                   from atintegrators/atconstants.h:4,
                   from atintegrators/StrMPoleSymplectic4QuantPass.c:1:
  /usr/include/features.h:319: note: this is the location of the previous definition
    319 | # define _POSIX_C_SOURCE 199506L
        |
  In file included from atintegrators/atquantlib.c:2,
                   from atintegrators/StrMPoleSymplectic4QuantPass.c:4:
  atintegrators/atrandom.c: In function ‘pcg32_random_r’:
  atintegrators/atrandom.c:56: warning: ignoring ‘#pragma omp atomic’ [-Wunknown-pragmas]
     56 |     #pragma omp atomic read
        |
  atintegrators/atrandom.c:58: warning: ignoring ‘#pragma omp atomic’ [-Wunknown-pragmas]
     58 |     #pragma omp atomic write
        |
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/StrMPoleSymplectic4QuantPass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/StrMPoleSymplectic4QuantPass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.DeltaQPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/DeltaQPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/DeltaQPass.o -std=c99 -Wno-unused-function
  In file included from /home/a3744/anaconda3/envs/test-pyat/include/python3.12/Python.h:12,
                   from atintegrators/atcommon.h:6,
                   from atintegrators/atelem.c:8,
                   from atintegrators/DeltaQPass.c:2:
  /home/a3744/anaconda3/envs/test-pyat/include/python3.12/pyconfig.h:1875: warning: "_POSIX_C_SOURCE" redefined
   1875 | #define _POSIX_C_SOURCE 200809L
        |
  In file included from /usr/include/x86_64-linux-gnu/bits/libc-header-start.h:33,
                   from /usr/include/math.h:27,
                   from atintegrators/atconstants.h:4,
                   from atintegrators/DeltaQPass.c:1:
  /usr/include/features.h:319: note: this is the location of the previous definition
    319 | # define _POSIX_C_SOURCE 199506L
        |
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/DeltaQPass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/DeltaQPass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.BndMPoleSymplectic4Pass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/BndMPoleSymplectic4Pass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/BndMPoleSymplectic4Pass.o -std=c99 -Wno-unused-function
  In file included from /home/a3744/anaconda3/envs/test-pyat/include/python3.12/Python.h:12,
                   from atintegrators/atcommon.h:6,
                   from atintegrators/atelem.c:8,
                   from atintegrators/BndMPoleSymplectic4Pass.c:2:
  /home/a3744/anaconda3/envs/test-pyat/include/python3.12/pyconfig.h:1875: warning: "_POSIX_C_SOURCE" redefined
   1875 | #define _POSIX_C_SOURCE 200809L
        |
  In file included from /usr/include/x86_64-linux-gnu/bits/libc-header-start.h:33,
                   from /usr/include/math.h:27,
                   from atintegrators/atconstants.h:4,
                   from atintegrators/BndMPoleSymplectic4Pass.c:1:
  /usr/include/features.h:319: note: this is the location of the previous definition
    319 | # define _POSIX_C_SOURCE 199506L
        |
  atintegrators/BndMPoleSymplectic4Pass.c: In function ‘BndMPoleSymplectic4Pass’:
  atintegrators/BndMPoleSymplectic4Pass.c:66: warning: ignoring ‘#pragma omp parallel’ [-Wunknown-pragmas]
     66 |     #pragma omp parallel for if (num_particles > OMP_PARTICLE_THRESHOLD) default(none) \
        |
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/BndMPoleSymplectic4Pass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/BndMPoleSymplectic4Pass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.CavityPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/CavityPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/CavityPass.o -std=c99 -Wno-unused-function
  In file included from /home/a3744/anaconda3/envs/test-pyat/include/python3.12/Python.h:12,
                   from atintegrators/atcommon.h:6,
                   from atintegrators/atelem.c:8,
                   from atintegrators/CavityPass.c:8:
  /home/a3744/anaconda3/envs/test-pyat/include/python3.12/pyconfig.h:1875: warning: "_POSIX_C_SOURCE" redefined
   1875 | #define _POSIX_C_SOURCE 200809L
        |
  In file included from /usr/include/x86_64-linux-gnu/bits/libc-header-start.h:33,
                   from /usr/include/math.h:27,
                   from atintegrators/atconstants.h:4,
                   from atintegrators/CavityPass.c:7:
  /usr/include/features.h:319: note: this is the location of the previous definition
    319 | # define _POSIX_C_SOURCE 199506L
        |
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/CavityPass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/CavityPass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.IdentityPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/IdentityPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/IdentityPass.o -std=c99 -Wno-unused-function
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/a3744/anaconda3/envs/test-pyat/lib -Wl,-rpath-link,/home/a3744/anaconda3/envs/test-pyat/lib -L/home/a3744/anaconda3/envs/test-pyat/lib /tmp/tmp5vumpp42.build-temp/atintegrators/IdentityPass.o -o /tmp/tmp4wf5ke5x.build-lib/at/integrators/IdentityPass.cpython-312-x86_64-linux-gnu.so
  building 'at.integrators.SliceMomentsPass' extension
  gcc -pthread -B /home/a3744/anaconda3/envs/test-pyat/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -O2 -isystem /home/a3744/anaconda3/envs/test-pyat/include -fPIC -DPYAT -I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include -I[] -Iatintegrators -I/home/a3744/anaconda3/envs/test-pyat/include/python3.12 -c atintegrators/SliceMomentsPass.c -o /tmp/tmp5vumpp42.build-temp/atintegrators/SliceMomentsPass.o -std=c99 -Wno-unused-function
  In file included from atintegrators/SliceMomentsPass.c:2:
  atintegrators/atimplib.c: In function ‘compute_kicks_longres’:
  atintegrators/atimplib.c:300:27: warning: unused variable ‘loopend’ [-Wunused-variable]
    300 |     int i,ii,ib,loopstart,loopend;
        |                           ^~~~~~~
  atintegrators/atimplib.c:300:17: warning: unused variable ‘loopstart’ [-Wunused-variable]
    300 |     int i,ii,ib,loopstart,loopend;
        |                 ^~~~~~~~~
  atintegrators/atimplib.c: In function ‘compute_kicks_phasor’:
  atintegrators/atimplib.c:388:43: error: ‘I’ undeclared (first use in this function)
    388 |     double complex vbeamc = vbeam[0]*cexp(I*vbeam[1]);
        |                                           ^
  atintegrators/atimplib.c:388:43: note: each undeclared identifier is reported only once for each function it appears in
  atintegrators/atimplib.c:380:14: warning: unused variable ‘is’ [-Wunused-variable]
    380 |     int i,ib,is;
        |              ^~
  Traceback (most recent call last):
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/_distutils/spawn.py", line 71, in spawn
      subprocess.check_call(cmd, env=_inject_macos_ver(env))
    File "/home/a3744/anaconda3/envs/test-pyat/lib/python3.12/subprocess.py", line 413, in check_call
      raise CalledProcessError(retcode, cmd)
  subprocess.CalledProcessError: Command '['/usr/bin/gcc', '-pthread', '-B', '/home/a3744/anaconda3/envs/test-pyat/compiler_compat', '-fno-strict-overflow', '-DNDEBUG', '-O2', '-Wall', '-fPIC', '-O2', '-isystem', '/home/a3744/anaconda3/envs/test-pyat/include', '-fPIC', '-O2', '-isystem', '/home/a3744/anaconda3/envs/test-pyat/include', '-fPIC', '-DPYAT', '-I/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/numpy/_core/include', '-I[]', '-Iatintegrators', '-I/home/a3744/anaconda3/envs/test-pyat/include/python3.12', '-c', 'atintegrators/SliceMomentsPass.c', '-o', '/tmp/tmp5vumpp42.build-temp/atintegrators/SliceMomentsPass.o', '-std=c99', '-Wno-unused-function']' returned non-zero exit status 1.

  The above exception was the direct cause of the following exception:

  Traceback (most recent call last):
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/_distutils/unixccompiler.py", line 191, in _compile
      self.spawn(compiler_so + cc_args + [src, '-o', obj] + extra_postargs)
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/_distutils/ccompiler.py", line 1044, in spawn
      spawn(cmd, dry_run=self.dry_run, **kwargs)
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/_distutils/spawn.py", line 77, in spawn
      raise DistutilsExecError(
  distutils.errors.DistutilsExecError: command '/usr/bin/gcc' failed with exit code 1

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/command/editable_wheel.py", line 153, in run
      self._create_wheel_file(bdist_wheel)
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/command/editable_wheel.py", line 355, in _create_wheel_file
      files, mapping = self._run_build_commands(dist_name, unpacked, lib, tmp)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/command/editable_wheel.py", line 278, in _run_build_commands
      self._run_build_subcommands()
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/command/editable_wheel.py", line 305, in _run_build_subcommands
      self.run_command(name)
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/_distutils/cmd.py", line 316, in run_command
      self.distribution.run_command(command)
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/dist.py", line 956, in run_command
      super().run_command(command)
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 989, in run_command
      cmd_obj.run()
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/command/build_ext.py", line 93, in run
      _build_ext.run(self)
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py", line 359, in run
      self.build_extensions()
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py", line 479, in build_extensions
      self._build_extensions_serial()
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py", line 505, in _build_extensions_serial
      self.build_extension(ext)
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/command/build_ext.py", line 254, in build_extension
      _build_ext.build_extension(self, ext)
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py", line 560, in build_extension
      objects = self.compiler.compile(
                ^^^^^^^^^^^^^^^^^^^^^^
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/_distutils/ccompiler.py", line 605, in compile
      self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts)
    File "/tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/_distutils/unixccompiler.py", line 193, in _compile
      raise CompileError(msg)
  distutils.errors.CompileError: command '/usr/bin/gcc' failed with exit code 1
  /tmp/pip-build-env-dtjeakgy/overlay/lib/python3.12/site-packages/setuptools/_distutils/dist.py:989: _DebuggingTips: Problem in editable installation.
  !!

          ********************************************************************************
          An error happened while installing `accelerator-toolbox` in editable mode.

          The following steps are recommended to help debug this problem:

          - Try to install the project normally, without using the editable mode.
            Does the error still persist?
            (If it does, try fixing the problem before attempting the editable mode).
          - If you are using binary extensions, make sure you have all OS-level
            dependencies installed (e.g. compilers, toolchains, binary libraries, ...).
          - Try the latest version of setuptools (maybe the error was already fixed).
          - If you (or your project dependencies) are using any setuptools extension
            or customization, make sure they support the editable mode.

          After following the steps above, if the problem still persists and
          you think this is related to how setuptools handles editable installations,
          please submit a reproducible example
          (see https://stackoverflow.com/help/minimal-reproducible-example) to:

              https://github.com/pypa/setuptools/issues

          See https://setuptools.pypa.io/en/latest/userguide/development_mode.html for details.
          ********************************************************************************

  !!
    cmd_obj.run()
  error: command '/usr/bin/gcc' failed with exit code 1
  error: subprocess-exited-with-error

  × Building editable for accelerator-toolbox (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> See above for output.

  note: This error originates from a subprocess, and is likely not a problem with pip.
  full command: /home/a3744/anaconda3/envs/test-pyat/bin/python3.12 /home/a3744/anaconda3/envs/test-pyat/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py build_editable /tmp/tmpw6qziftk
  cwd: /home/a3744/Documents/tests/pyat-test/installation/at
  Building editable for accelerator-toolbox (pyproject.toml) ... error
  ERROR: Failed building editable for accelerator-toolbox
Failed to build accelerator-toolbox
ERROR: Could not build wheels for accelerator-toolbox, which is required to install pyproject.toml-based projects
swhite2401 commented 1 month ago

Hi both, I get the same error on the GitHub actions now, see PR #801 Something bad has happened....

lfarv commented 1 month ago

Change in compiler ?

lfarv commented 1 month ago

My last successful compilation was yesterday 14:00

swhite2401 commented 1 month ago

I can build at master without any problems on my machine

lfarv commented 1 month ago

I simply restarted yesterday's job, and today it fails ! So indeed something changed in the compilers on GitHub. And also on you machine, @TeresiaOlsson: very strange indeed.

swhite2401 commented 1 month ago

On grappa with ubuntu 20.04.1 and python 3.11, pip install -e . fails

swhite2401 commented 1 month ago

Same machine with python 3.8 is ok

TeresiaOlsson commented 1 month ago

I discovered the issue when I tried to make a pipeline on gitlab for building a container with pyAT. In my pipeline I start with the image ubuntu:22.04 from DockerHub and then everything else needed is installed inside the recipe using apt-get. The only two packages in the recipe I think could potentially affect this is build-essential and python3-dev.

I have updated my computer recently so if something has changed in these packages it could explain why it failed for me both on gitlab and on my computer.

lfarv commented 1 month ago

@swhite2401 : do you understand how the python version may affect ?

swhite2401 commented 1 month ago

Sorry, misleading information. What fails is when running pip install -e . to install at in a conda environment. Running pip in a python venv seems to be working fine, however I could only test up to python 3.9.

lfarv commented 1 month ago

However what happens on GitHub (same job working yesterday an no more today) is not related to conda in any way…

swhite2401 commented 1 month ago

Using _Complex_I instead of I seems to fix it...

swhite2401 commented 1 month ago

I have applied the change of macro name to PR #801 , all tests seem to be running...

TeresiaOlsson commented 1 month ago

It looks promising. I could also build the get_lifetime_help branch without errors.

lfarv commented 1 month ago

"I" is indeed in the C99 norm. Using "_Complex_I" looks like a temporary workaround… What should we do for the master branch?

TeresiaOlsson commented 1 month ago

If I did the same changes as @swhite2401 on the master branch I could also compile. So it seems to be the fix. But very strange why the behaviour suddenly has changed.

swhite2401 commented 1 month ago

Well until we understand what is going on I would suggest to implement at least the temporary fix, what do you think?

lfarv commented 1 month ago

@TeresiaOlsson : for me, it's not a fix, but a workaround a recent bug in gcc (no problem with other compilers, clang or VC). Unless the bug comes from another header (python?) which would undefine "I". But given their order of includes ( comes late) apparently it's not the case.

@swhite2401 : I agree, let's do that. I'll be away until Friday, so see with @TeresiaOlsson for reciprocal approvals! On my side, I postpone my two PRs for a few days, we'll see then.

swhite2401 commented 1 month ago

Ok I make a separate PR

lfarv commented 1 month ago

Fixed in #802