Andromeda
Andromeda copied to clipboard
Compile Error: use of deleted function
I am trying to get Andromeda built on Ubuntu 20.02.2 LTS. I used stack build to build it and had to install a few Qt dependencies: qtbase5-dev and qtdeclarative5-dev. My stack version is 2.3.3. gcc/g++ version is 9.3.0
However, at some point the compilation process runs into the following error:
hsqml > cbits/Class.cpp: In constructor ‘HsQMLClass::HsQMLClass(unsigned int*, unsigned int*, char*, HsStablePtr, void (**)(void*, void**), void (**)(void*, void**))’:
hsqml >
hsqml > /tmp/stack-d0156022c8cffaa8/hsqml-0.3.4.0/cbits/Class.cpp:46:73:
hsqml > error: use of deleted function ‘QArrayData::QArrayData(const QArrayData&)’
hsqml > 46 | new(&mMetaStrData[i*sizeof(QByteArrayData)]) QByteArrayData(data);
hsqml > | ^
hsqml > In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qbytearray.h:46,
hsqml > from /usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:47,
hsqml > from /usr/include/x86_64-linux-gnu/qt5/QtCore/QMetaType:1,
hsqml >
hsqml > /tmp/stack-d0156022c8cffaa8/hsqml-0.3.4.0/from cbits/Class.cpp:5:0:
hsqml >
hsqml > /usr/include/x86_64-linux-gnu/qt5/QtCore/qarraydata.h:48:22:
hsqml > note: ‘QArrayData::QArrayData(const QArrayData&)’ is implicitly deleted because the default definition would be ill-formed:
hsqml > 48 | struct Q_CORE_EXPORT QArrayData
hsqml > | ^~~~~~~~~~
hsqml >
hsqml > /usr/include/x86_64-linux-gnu/qt5/QtCore/qarraydata.h:48:22:
hsqml > error: use of deleted function ‘QtPrivate::RefCount::RefCount(const QtPrivate::RefCount&)’
hsqml > In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qbytearray.h:44,
hsqml > from /usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:47,
hsqml > from /usr/include/x86_64-linux-gnu/qt5/QtCore/QMetaType:1,
hsqml >
hsqml > /tmp/stack-d0156022c8cffaa8/hsqml-0.3.4.0/from cbits/Class.cpp:5:0:
hsqml >
hsqml > /usr/include/x86_64-linux-gnu/qt5/QtCore/qrefcount.h:51:7:
hsqml > note: ‘QtPrivate::RefCount::RefCount(const QtPrivate::RefCount&)’ is implicitly deleted because the default definition would be ill-formed:
hsqml > 51 | class RefCount
hsqml > | ^~~~~~~~
hsqml >
hsqml > /usr/include/x86_64-linux-gnu/qt5/QtCore/qrefcount.h:51:7:
hsqml > error: use of deleted function ‘QBasicAtomicInteger<T>::QBasicAtomicInteger(const QBasicAtomicInteger<T>&) [with T = int]’
hsqml > In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qatomic.h:46,
hsqml > from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:1210,
hsqml > from /usr/include/x86_64-linux-gnu/qt5/QtCore/qnamespace.h:43,
hsqml > from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs.h:48,
hsqml > from /usr/include/x86_64-linux-gnu/qt5/QtCore/QMetaObject:1,
hsqml >
hsqml > /tmp/stack-d0156022c8cffaa8/hsqml-0.3.4.0/from cbits/Class.cpp:4:0:
hsqml >
hsqml > /usr/include/x86_64-linux-gnu/qt5/QtCore/qbasicatomic.h:222:5:
hsqml > note: declared here
hsqml > 222 | QBasicAtomicInteger(const QBasicAtomicInteger &) = delete;
hsqml > | ^~~~~~~~~~~~~~~~~~~
-- While building package hsqml-0.3.4.0 using:
/tmp/stack-d0156022c8cffaa8/hsqml-0.3.4.0/.stack-work/dist/x86_64-linux-tinfo6/Cabal-1.22.5.0/setup/setup --builddir=.stack-work/dist/x86_64-linux-tinfo6/Cabal-1.22.5.0 build --ghc-options ""
Process exited with code: ExitFailure 1
@thalerjonathan Yeah, thank you for reporting. It's all known, because Haskell has changed a lot since 2016. I'm working on the second edition and want to restore the project and the samples.