ratt-ru / CubiCal

A fast radio interferometric calibration suite.
GNU General Public License v2.0
18 stars 13 forks source link

Unable to install CubiCal in singularity container #482

Closed a-benati closed 4 months ago

a-benati commented 4 months ago

Hello,

I am trying to build a singularity image file with CubiCal installed. I managed to successfully install python-casacore and all the CubiCal dependencies, but the installation of CubiCal itself using pip3 install git+https://github.com/ratt-ru/CubiCal.git@1.4.0 fails. This is the output:

+ pip3 install git+https://github.com/ratt-ru/CubiCal.git@1.4.0
Collecting git+https://github.com/ratt-ru/CubiCal.git@1.4.0
  Cloning https://github.com/ratt-ru/CubiCal.git (to revision 1.4.0) to /tmp/pip-req-build-k5w9b9_z
  Running command git clone --filter=blob:none --quiet https://github.com/ratt-ru/CubiCal.git /tmp/pip-req-build-k5w9b9_z
  Running command git checkout -q 5f964be1ce2211417768435e98c93c801be2067e
  Resolved https://github.com/ratt-ru/CubiCal.git to commit 5f964be1ce2211417768435e98c93c801be2067e
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting sharedarray@ git+https://gitlab.com/bennahugo/shared-array.git@master
  Cloning https://gitlab.com/bennahugo/shared-array.git (to revision master) to /tmp/pip-install-epm65qiz/sharedarray_1a526064f753400999aeab3bf80
a3146
  Running command git clone --filter=blob:none --quiet https://gitlab.com/bennahugo/shared-array.git /tmp/pip-install-epm65qiz/sharedarray_1a5260
64f753400999aeab3bf80a3146
  Resolved https://gitlab.com/bennahugo/shared-array.git to commit dc90bd2855ddcb7c1bbc473d24a1f42c60436be0
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting python-casacore<=3.0.0
  Downloading python-casacore-3.0.0.tar.gz (98 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 98.7/98.7 KB 3.5 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... done
Requirement already satisfied: scipy in /usr/lib/python3/dist-packages (from cubical==1.3.0) (1.8.0)
Requirement already satisfied: astropy>=3.0 in /usr/lib/python3/dist-packages (from cubical==1.3.0) (5.0.2)
Requirement already satisfied: future in /usr/local/lib/python3.10/dist-packages (from cubical==1.3.0) (0.18.3)
Collecting matplotlib<3.0
  Downloading matplotlib-2.2.5.tar.gz (36.7 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 36.7/36.7 MB 34.6 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... done
Collecting astro-tigger-lsm
  Downloading astro_tigger_lsm-1.7.3-py3-none-any.whl (102 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 102.1/102.1 KB 29.0 MB/s eta 0:00:00
Requirement already satisfied: numba in /usr/lib/python3/dist-packages (from cubical==1.3.0) (0.55.1)
Requirement already satisfied: numpy in /usr/lib/python3/dist-packages (from cubical==1.3.0) (1.21.5)
Requirement already satisfied: six in /usr/lib/python3/dist-packages (from cubical==1.3.0) (1.16.0)
Requirement already satisfied: cycler>=0.10 in /usr/lib/python3/dist-packages (from matplotlib<3.0->cubical==1.3.0) (0.11.0)
Requirement already satisfied: kiwisolver>=1.0.1 in /usr/lib/python3/dist-packages (from matplotlib<3.0->cubical==1.3.0) (1.3.2)
Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /usr/lib/python3/dist-packages (from matplotlib<3.0->cubical==1.3.0) (
2.4.7)
Requirement already satisfied: python-dateutil>=2.1 in /usr/lib/python3/dist-packages (from matplotlib<3.0->cubical==1.3.0) (2.8.1)
Requirement already satisfied: pytz in /usr/lib/python3/dist-packages (from matplotlib<3.0->cubical==1.3.0) (2022.1)
Collecting argparse
  Downloading argparse-1.4.0-py2.py3-none-any.whl (23 kB)
Requirement already satisfied: astlib<=0.11.10 in /usr/local/lib/python3.10/dist-packages (from astro-tigger-lsm->cubical==1.3.0) (0.11.10)
Requirement already satisfied: astro-kittens in /usr/local/lib/python3.10/dist-packages (from astro-tigger-lsm->cubical==1.3.0) (1.4.6)
Collecting astlib<=0.11.10
  Downloading astLib-0.11.9.tar.gz (9.9 MB) 
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 9.9/9.9 MB 40.4 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done  
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: configparser in /usr/local/lib/python3.10/dist-packages (from astro-kittens->astro-tigger-lsm->cubical==1.3.0) (6.
0.0)
Building wheels for collected packages: cubical, matplotlib, python-casacore, sharedarray, astlib
  Building wheel for cubical (pyproject.toml) ... done
  Created wheel for cubical: filename=cubical-1.3.0-py3-none-any.whl size=257505 sha256=d4b2694fc69f708d03daae0a0299c4ca4beb395d9cea15424a7f72c74
5114e9f
  Stored in directory: /tmp/pip-ephem-wheel-cache-lic2l6a7/wheels/41/14/bd/dc1b1e21e892bcc85d3a6ef8ad365d5693398cee2ee2571bed
  Building wheel for matplotlib (setup.py) ... done
  Created wheel for matplotlib: filename=matplotlib-2.2.5-cp310-cp310-linux_x86_64.whl size=11375545 sha256=b51fee5f8fc4662a8bf984e61c4753fc8f18d
35a1adb4c25947a8e4202ae4e03
  Stored in directory: /root/.cache/pip/wheels/43/ae/d3/011e20f5ef4f6c540a053c90b4ffd56ed0d4ccbb14b9fb5b83
  Building wheel for python-casacore (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [240 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-3.10  
      creating build/lib.linux-x86_64-3.10/pyrap
      copying pyrap/tables.py -> build/lib.linux-x86_64-3.10/pyrap
      copying pyrap/fitting.py -> build/lib.linux-x86_64-3.10/pyrap
      copying pyrap/measures.py -> build/lib.linux-x86_64-3.10/pyrap
      copying pyrap/util.py -> build/lib.linux-x86_64-3.10/pyrap
      copying pyrap/images.py -> build/lib.linux-x86_64-3.10/pyrap
      copying pyrap/functionals.py -> build/lib.linux-x86_64-3.10/pyrap
      copying pyrap/__init__.py -> build/lib.linux-x86_64-3.10/pyrap
      copying pyrap/quanta.py -> build/lib.linux-x86_64-3.10/pyrap
      creating build/lib.linux-x86_64-3.10/casacore
      copying casacore/__init__.py -> build/lib.linux-x86_64-3.10/casacore
      copying casacore/six.py -> build/lib.linux-x86_64-3.10/casacore
      creating build/lib.linux-x86_64-3.10/pyrap/images
      copying pyrap/images/image.py -> build/lib.linux-x86_64-3.10/pyrap/images
      copying pyrap/images/coordinates.py -> build/lib.linux-x86_64-3.10/pyrap/images
      copying pyrap/images/__init__.py -> build/lib.linux-x86_64-3.10/pyrap/images
      creating build/lib.linux-x86_64-3.10/casacore/images
      copying casacore/images/image.py -> build/lib.linux-x86_64-3.10/casacore/images
      copying casacore/images/coordinates.py -> build/lib.linux-x86_64-3.10/casacore/images
      copying casacore/images/__init__.py -> build/lib.linux-x86_64-3.10/casacore/images
      creating build/lib.linux-x86_64-3.10/casacore/fitting
      copying casacore/fitting/fitting.py -> build/lib.linux-x86_64-3.10/casacore/fitting
      copying casacore/fitting/__init__.py -> build/lib.linux-x86_64-3.10/casacore/fitting
      creating build/lib.linux-x86_64-3.10/casacore/functionals
      copying casacore/functionals/functional.py -> build/lib.linux-x86_64-3.10/casacore/functionals
      copying casacore/functionals/__init__.py -> build/lib.linux-x86_64-3.10/casacore/functionals
      creating build/lib.linux-x86_64-3.10/casacore/measures
      copying casacore/measures/__init__.py -> build/lib.linux-x86_64-3.10/casacore/measures
      creating build/lib.linux-x86_64-3.10/casacore/tables
      copying casacore/tables/tablerow.py -> build/lib.linux-x86_64-3.10/casacore/tables
      copying casacore/tables/tablecolumn.py -> build/lib.linux-x86_64-3.10/casacore/tables
      copying casacore/tables/tableutil.py -> build/lib.linux-x86_64-3.10/casacore/tables
      copying casacore/tables/wxtablebrowser.py -> build/lib.linux-x86_64-3.10/casacore/tables
      copying casacore/tables/tableindex.py -> build/lib.linux-x86_64-3.10/casacore/tables
      copying casacore/tables/table.py -> build/lib.linux-x86_64-3.10/casacore/tables
      copying casacore/tables/msutil.py -> build/lib.linux-x86_64-3.10/casacore/tables
      copying casacore/tables/__init__.py -> build/lib.linux-x86_64-3.10/casacore/tables
      copying casacore/tables/tablehelper.py -> build/lib.linux-x86_64-3.10/casacore/tables
      copying casacore/tables/tableiter.py -> build/lib.linux-x86_64-3.10/casacore/tables
      creating build/lib.linux-x86_64-3.10/casacore/quanta
      copying casacore/quanta/quantity.py -> build/lib.linux-x86_64-3.10/casacore/quanta
      copying casacore/quanta/__init__.py -> build/lib.linux-x86_64-3.10/casacore/quanta
      creating build/lib.linux-x86_64-3.10/casacore/util
      copying casacore/util/__init__.py -> build/lib.linux-x86_64-3.10/casacore/util
      copying casacore/util/substitute.py -> build/lib.linux-x86_64-3.10/casacore/util
      running build_ext
      building 'casacore.fitting._fitting' extension
      creating build/temp.linux-x86_64-3.10 
      creating build/temp.linux-x86_64-3.10/src
      x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-se
curity -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.1
0 -c src/fit.cc -o build/temp.linux-x86_64-3.10/src/fit.o
      In file included from /usr/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
                       from /usr/include/boost/smart_ptr/detail/yield_k.hpp:23,
                       from /usr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
                       from /usr/include/boost/smart_ptr/detail/spinlock.hpp:42,
                       from /usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:25,
                       from /usr/include/boost/smart_ptr/shared_ptr.hpp:29,
                       from /usr/include/boost/shared_ptr.hpp:17,
                       from /usr/include/boost/python/converter/shared_ptr_to_python.hpp:12,
                       from /usr/include/boost/python/converter/arg_to_python.hpp:15,
                       from /usr/include/boost/python/call.hpp:15,
                       from /usr/include/boost/python/object_core.hpp:14,
                       from /usr/include/boost/python/args.hpp:22,
                       from /usr/include/boost/python.hpp:11,
                       from src/fit.cc:28:  
      /usr/include/boost/bind.hpp:36:1: note: ‘#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global names
pace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain th
e current behavior.’
         36 | BOOST_PRAGMA_MESSAGE(
            | ^~~~~~~~~~~~~~~~~~~~
      /usr/include/boost/detail/iterator.hpp:13:1: note: ‘#pragma message: This header is deprecated. Use <iterator> instead.’
         13 | BOOST_HEADER_DEPRECATED("<iterator>")
            | ^~~~~~~~~~~~~~~~~~~~~~~
      x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-se
curity -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.1
0 -c src/fitting.cc -o build/temp.linux-x86_64-3.10/src/fitting.o
      In file included from /usr/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
                       from /usr/include/boost/smart_ptr/detail/yield_k.hpp:23,
                       from /usr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
                       from /usr/include/boost/smart_ptr/detail/spinlock.hpp:42,
                       from /usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:25,
                       from /usr/include/boost/smart_ptr/shared_ptr.hpp:29,
                       from /usr/include/boost/shared_ptr.hpp:17,
                       from /usr/include/boost/python/converter/shared_ptr_to_python.hpp:12,
                       from /usr/include/boost/python/converter/arg_to_python.hpp:15,
                       from /usr/include/boost/python/call.hpp:15,
                       from /usr/include/boost/python/object_core.hpp:14,
                       from /usr/include/boost/python/args.hpp:22,
                       from /usr/include/boost/python.hpp:11,
                       from src/fitting.cc:29:
      /usr/include/boost/bind.hpp:36:1: note: ‘#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global names
pace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain th
e current behavior.’
         36 | BOOST_PRAGMA_MESSAGE(
            | ^~~~~~~~~~~~~~~~~~~~
      /usr/include/boost/detail/iterator.hpp:13:1: note: ‘#pragma message: This header is deprecated. Use <iterator> instead.’
         13 | BOOST_HEADER_DEPRECATED("<iterator>")
            | ^~~~~~~~~~~~~~~~~~~~~~~
      x86_64-linux-gnu-g++ -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -g -fwrapv -O2 -Wl,-Bsymbolic-functions -g -fwrapv -
O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-x86_64-3.10/src/fit.o build/temp
.linux-x86_64-3.10/src/fitting.o -lcasa_scimath -lcasa_scimath_f -lboost_python310 -lcasa_python3 -o build/lib.linux-x86_64-3.10/casacore/fitting
/_fitting.cpython-310-x86_64-linux-gnu.so   
      building 'casacore.functionals._functionals' extension
      x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-se
curity -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.1
0 -c src/functional.cc -o build/temp.linux-x86_64-3.10/src/functional.o
      In file included from /usr/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
                       from /usr/include/boost/smart_ptr/detail/yield_k.hpp:23,
                       from /usr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
                       from /usr/include/boost/smart_ptr/detail/spinlock.hpp:42,
                       from /usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:25,
                       from /usr/include/boost/smart_ptr/shared_ptr.hpp:29,
                       from /usr/include/boost/shared_ptr.hpp:17,
                       from /usr/include/boost/python/converter/shared_ptr_to_python.hpp:12,
                       from /usr/include/boost/python/converter/arg_to_python.hpp:15,
                       from /usr/include/boost/python/call.hpp:15,
                       from /usr/include/boost/python/object_core.hpp:14,
                       from /usr/include/boost/python/args.hpp:22,
                       from /usr/include/boost/python.hpp:11,
                       from src/functional.cc:28:
      /usr/include/boost/bind.hpp:36:1: note: ‘#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global names
pace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain th
e current behavior.’
         36 | BOOST_PRAGMA_MESSAGE(
            | ^~~~~~~~~~~~~~~~~~~~
      /usr/include/boost/detail/iterator.hpp:13:1: note: ‘#pragma message: This header is deprecated. Use <iterator> instead.’
         13 | BOOST_HEADER_DEPRECATED("<iterator>")
            | ^~~~~~~~~~~~~~~~~~~~~~~
      x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-se
curity -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.1
0 -c src/functionals.cc -o build/temp.linux-x86_64-3.10/src/functionals.o
      In file included from /usr/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
                       from /usr/include/boost/smart_ptr/detail/yield_k.hpp:23,
                       from /usr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
                       from /usr/include/boost/smart_ptr/detail/spinlock.hpp:42,
                       from /usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:25,
                       from /usr/include/boost/smart_ptr/shared_ptr.hpp:29,
                       from /usr/include/boost/shared_ptr.hpp:17,
                       from /usr/include/boost/python/converter/shared_ptr_to_python.hpp:12,
                       from /usr/include/boost/python/converter/arg_to_python.hpp:15,
                       from /usr/include/boost/python/call.hpp:15,
                       from /usr/include/boost/python/object_core.hpp:14,
                       from /usr/include/boost/python/args.hpp:22,
                       from /usr/include/boost/python.hpp:11,
                       from src/functionals.cc:30:
      /usr/include/boost/bind.hpp:36:1: note: ‘#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global names
pace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain th
e current behavior.’
         36 | BOOST_PRAGMA_MESSAGE(
            | ^~~~~~~~~~~~~~~~~~~~
      /usr/include/boost/detail/iterator.hpp:13:1: note: ‘#pragma message: This header is deprecated. Use <iterator> instead.’
         13 | BOOST_HEADER_DEPRECATED("<iterator>")
            | ^~~~~~~~~~~~~~~~~~~~~~~
      x86_64-linux-gnu-g++ -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -g -fwrapv -O2 -Wl,-Bsymbolic-functions -g -fwrapv -
O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-x86_64-3.10/src/functional.o bui
ld/temp.linux-x86_64-3.10/src/functionals.o -lcasa_scimath -lcasa_scimath_f -lboost_python310 -lcasa_python3 -o build/lib.linux-x86_64-3.10/casac
ore/functionals/_functionals.cpython-310-x86_64-linux-gnu.so
      building 'casacore.images._images' extension
      x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-se
curity -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.1
0 -c src/images.cc -o build/temp.linux-x86_64-3.10/src/images.o
      In file included from /usr/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
                       from /usr/include/boost/smart_ptr/detail/yield_k.hpp:23,
                       from /usr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
                       from /usr/include/boost/smart_ptr/detail/spinlock.hpp:42,
                       from /usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:25,
                       from /usr/include/boost/smart_ptr/shared_ptr.hpp:29,
                       from /usr/include/boost/shared_ptr.hpp:17,
                       from /usr/include/boost/python/converter/shared_ptr_to_python.hpp:12,
                       from /usr/include/boost/python/converter/arg_to_python.hpp:15,
                       from /usr/include/boost/python/call.hpp:15,
                       from /usr/include/boost/python/object_core.hpp:14,
                       from /usr/include/boost/python/args.hpp:22,
                       from /usr/include/boost/python.hpp:11,
                       from /usr/local/include/casacore/python/Converters/PycBasicData.h:32,
                       from src/images.cc:31:
      /usr/include/boost/bind.hpp:36:1: note: ‘#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global names
pace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain th
e current behavior.’
         36 | BOOST_PRAGMA_MESSAGE(
            | ^~~~~~~~~~~~~~~~~~~~
      /usr/include/boost/detail/iterator.hpp:13:1: note: ‘#pragma message: This header is deprecated. Use <iterator> instead.’
         13 | BOOST_HEADER_DEPRECATED("<iterator>")
            | ^~~~~~~~~~~~~~~~~~~~~~~
      x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-se
curity -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.1
0 -c src/pyimages.cc -o build/temp.linux-x86_64-3.10/src/pyimages.o
      In file included from /usr/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
                       from /usr/include/boost/smart_ptr/detail/yield_k.hpp:23,
                       from /usr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
                       from /usr/include/boost/smart_ptr/detail/spinlock.hpp:42,
                       from /usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:25,
                       from /usr/include/boost/smart_ptr/shared_ptr.hpp:29,
                       from /usr/include/boost/shared_ptr.hpp:17,
                       from /usr/include/boost/python/converter/shared_ptr_to_python.hpp:12,
                       from /usr/include/boost/python/converter/arg_to_python.hpp:15,
                       from /usr/include/boost/python/call.hpp:15,
                       from /usr/include/boost/python/object_core.hpp:14,
                       from /usr/include/boost/python/args.hpp:22,
                       from /usr/include/boost/python.hpp:11,
                       from /usr/local/include/casacore/python/Converters/PycBasicData.h:32,
                       from src/pyimages.cc:29:
      /usr/include/boost/bind.hpp:36:1: note: ‘#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global names
pace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain th
e current behavior.’
         36 | BOOST_PRAGMA_MESSAGE(
            | ^~~~~~~~~~~~~~~~~~~~
      /usr/include/boost/detail/iterator.hpp:13:1: note: ‘#pragma message: This header is deprecated. Use <iterator> instead.’
         13 | BOOST_HEADER_DEPRECATED("<iterator>")
            | ^~~~~~~~~~~~~~~~~~~~~~~
      src/pyimages.cc: In function ‘void casacore::python::pyimages()’:
      src/pyimages.cc:48:34: error: ‘vector’ was not declared in this scope
         48 |       .def (init<String, String, vector<ImageProxy> >())
            |                                  ^~~~~~
      src/pyimages.cc:48:34: note: suggested alternatives:
      In file included from /usr/include/c++/11/vector:67,
                       from /usr/local/include/casacore/casa/Arrays/IPosition.h:34,
                       from /usr/local/include/casacore/lattices/Lattices/LatticeBase.h:35,
                       from /usr/local/include/casacore/images/Images/ImageProxy.h:35,
                       from src/pyimages.cc:28:
      /usr/include/c++/11/bits/stl_vector.h:389:11: note:   ‘std::vector’
        389 |     class vector : protected _Vector_base<_Tp, _Alloc>
            |           ^~~~~~
      In file included from /usr/local/include/casacore/casa/Arrays/IPosition.h:34,
                       from /usr/local/include/casacore/lattices/Lattices/LatticeBase.h:35,
                       from /usr/local/include/casacore/images/Images/ImageProxy.h:35,
                       from src/pyimages.cc:28:
      /usr/include/c++/11/vector:86:13: note:   ‘std::pmr::vector’
         86 |       using vector = std::vector<_Tp, polymorphic_allocator<_Tp>>;
            |             ^~~~~~
      In file included from /usr/include/boost/mpl/aux_/include_preprocessed.hpp:37,
                       from /usr/include/boost/mpl/vector.hpp:46,
                       from /usr/include/boost/math/policies/policy.hpp:14,
                       from /usr/include/boost/math/special_functions/math_fwd.hpp:29,
                       from /usr/include/boost/math/special_functions/sign.hpp:17,
                       from /usr/include/boost/lexical_cast/detail/inf_nan.hpp:34,
                       from /usr/include/boost/lexical_cast/detail/converter_lexical_streams.hpp:63,
                       from /usr/include/boost/lexical_cast/detail/converter_lexical.hpp:54,
                       from /usr/include/boost/lexical_cast/try_lexical_convert.hpp:44,
                       from /usr/include/boost/lexical_cast.hpp:32,
                       from /usr/include/boost/python/operators.hpp:19,
                       from /usr/include/boost/python.hpp:49,
                       from /usr/local/include/casacore/python/Converters/PycBasicData.h:32,
                       from src/pyimages.cc:29:
      /usr/include/boost/mpl/aux_/preprocessed/gcc/vector.hpp:22:8: note:   ‘boost::mpl::vector’
         22 | struct vector;
            |        ^~~~~~
      In file included from /usr/include/boost/lexical_cast/detail/converter_lexical.hpp:52,
                       from /usr/include/boost/lexical_cast/try_lexical_convert.hpp:44,
                       from /usr/include/boost/lexical_cast.hpp:32,
                       from /usr/include/boost/python/operators.hpp:19,
                       from /usr/include/boost/python.hpp:49,
                       from /usr/local/include/casacore/python/Converters/PycBasicData.h:32,
                       from src/pyimages.cc:29:
      /usr/include/boost/container/container_fwd.hpp:103:7: note:   ‘boost::container::vector’
        103 | class vector;
            |       ^~~~~~
      src/pyimages.cc:48:51: error: template argument 3 is invalid
         48 |       .def (init<String, String, vector<ImageProxy> >())
            |                                                   ^
      src/pyimages.cc:48:55: error: expected primary-expression before ‘)’ token
         48 |       .def (init<String, String, vector<ImageProxy> >())
            |                                                       ^
      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 python-casacore
  Running setup.py clean for python-casacore
  Building wheel for sharedarray (pyproject.toml) ... done
  Created wheel for sharedarray: filename=SharedArray-b_3.1.0_2_gdc90bd2_n_-cp310-cp310-linux_x86_64.whl size=52753 sha256=e2f0319a25d14eb5090966dbaef5570cd6cc6eca032e867510ac88b6ab2f1be3
  Stored in directory: /tmp/pip-ephem-wheel-cache-lic2l6a7/wheels/4a/52/3a/fe1eed6854d21692f941dd87e30335456aaf282b4d0563a825
  WARNING: Built wheel for sharedarray is invalid: Metadata 1.2 mandates PEP 440 version, but 'b-3.1.0-2-gdc90bd2-n-' is not
  Building wheel for astlib (pyproject.toml) ... done
  Created wheel for astlib: filename=astLib-0.11.9-cp310-cp310-linux_x86_64.whl size=1460989 sha256=2ff972fe58782efd1b9ef15d5e31945b0f3c49156e830d698b5f322b749fe8f1
  Stored in directory: /root/.cache/pip/wheels/40/b5/fe/4ad90ca2a1e003a554d33b8bf072a04a22108cb637335ffd5b
Successfully built cubical matplotlib astlib
Failed to build python-casacore sharedarray
ERROR: Could not build wheels for sharedarray, which is required to install pyproject.toml-based projects
FATAL:   While performing build: while running engine: exit status 1
JSKenyon commented 4 months ago

It looks like you don't have a compiler installed inside your container. Try apt install build-essential.

a-benati commented 4 months ago

Thanks @JSKenyon, but I have already installed build-essential. Here is my definition file for the container for completeness:

Bootstrap: localimage
From: pill:20240201.simg

%runscript
    exec /bin/bash "$@"

%post
export DEBIAN_FRONTEND=noninteractive
# Select the timezone
TZ=Europe/Rome
ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

apt-get update

# Install software-properties-common
apt-get install -y software-properties-common

# Add KERN-9 repository
add-apt-repository -s ppa:kernsuite/kern-9
apt-add-repository multiverse
apt-add-repository restricted

# Install python3-casacore
apt-get install -y python3-casacore

# Install CubiCal dependencies
apt-get install -y \
    casacore-dev \
    casacore-data \
    build-essential \
    python3-pip \
    libboost-all-dev \
    wcslib-dev \
    git \
    libcfitsio-dev \
    libfreetype-dev \
    libagg-dev

# Install CubiCal
pip3 install git+https://github.com/ratt-ru/CubiCal.git@1.4.0
Athanaseus commented 4 months ago

Hi @a-benati,

In kern-9 (ubuntu22.04 support), the latest release of cubical can be installed with apt-get install cubical. If it's the specific version of cubical you are looking for, note that kern-9 is Python3.10 and above (and python-cascore==3.5.2), The setup.py of the version 1.4.0 currently being installed says python-casacore<=3.0.0. This version of python-casacore was last packaged in kern-5.

Best regards

a-benati commented 4 months ago

@Athanaseus thank you very much, apt-get install cubical worked!

JSKenyon commented 4 months ago

Incidentally @a-benati - are you aware of https://github.com/ratt-ru/QuartiCal? It may be a more streamlined experience at this point as CubiCal is effectively on life support. If it lacks features you need, please just let me know via the issue tracker.

a-benati commented 4 months ago

@JSKenyon yes I am aware of that, but I need CubiCal since I am working with the CARACal pipeline, which implements CubiCal instead of Quartical. However, in the future, outside of CARACal, I will definitely use QuartiCal. Thank you.