You are not logged in.
Pages: 1
I want to install e4rat because my system boot slowly.Wiki says I need to rebuild audit from the ABS with staticlibs option explicitly enabled,so I run asp export audit,then change options=(debug emptydirs) to options=(debug emptydirs staticlibs).After that,I run makepkg.However,I can't compile.Here is output:
...
Making all in python
make[4]: Entering directory '/build/audit/src/audit-3.0.8/bindings/swig/python'
swig -o audit_wrap.c -python -I. -I../../.. -I../../../lib -I/usr/include/python3.10 ./../src/auditswig.i
/bin/sh ../../../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../.. -I. -I../../.. -I../../../lib -I/usr/include/python3.10 -shared -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -g -ffile-prefix-map=/build/audit/src=/usr/src/debug -flto=auto -MT _audit_la-audit_wrap.lo -MD -MP -MF .deps/_audit_la-audit_wrap.Tpo -c -o _audit_la-audit_wrap.lo `test -f 'audit_wrap.c' || echo './'`audit_wrap.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../../.. -I. -I../../.. -I../../../lib -I/usr/include/python3.10 -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -g -ffile-prefix-map=/build/audit/src=/usr/src/debug -flto=auto -MT _audit_la-audit_wrap.lo -MD -MP -MF .deps/_audit_la-audit_wrap.Tpo -c audit_wrap.c -fPIC -DPIC -o .libs/_audit_la-audit_wrap.o
audit_wrap.c: In function ‘_wrap_audit_rule_data_buf_set’:
audit_wrap.c:4701:17: error: cast specifies array type
4701 | arg1->buf = (char [])(char *)memcpy(malloc((size)*sizeof(char)), (const char *)(arg2), sizeof(char)*(size));
| ^
audit_wrap.c:4701:15: error: invalid use of flexible array member
4701 | arg1->buf = (char [])(char *)memcpy(malloc((size)*sizeof(char)), (const char *)(arg2), sizeof(char)*(size));
| ^
audit_wrap.c:4703:15: error: invalid use of flexible array member
4703 | arg1->buf = 0;
| ^
make[4]: *** [Makefile:513: _audit_la-audit_wrap.lo] Error 1
make[4]: Leaving directory '/build/audit/src/audit-3.0.8/bindings/swig/python'
make[3]: *** [Makefile:416: all-recursive] Error 1
make[3]: Leaving directory '/build/audit/src/audit-3.0.8/bindings/swig'
make[2]: *** [Makefile:413: all-recursive] Error 1
make[2]: Leaving directory '/build/audit/src/audit-3.0.8/bindings'
make[1]: *** [Makefile:468: all-recursive] Error 1
make[1]: Leaving directory '/build/audit/src/audit-3.0.8'
make: *** [Makefile:400: all] Error 2Please point out which step I did wrong.Thanks so much.
Last edited by 13905069 (2022-07-25 12:01:26)
Offline
Offline
Thanks!But although I have patched PKGBUILD and installed the patched audit, I still can't compile e4rat successfully.The following is the output:
[mycomputer@13905069 trunk]$ yay -S e4rat
:: Checking for conflicts...
:: Checking for inner conflicts...
[Aur:1] e4rat-0.2.3-4
1 e4rat (Build Files Exist)
==> Packages to cleanBuild?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==>
:: PKGBUILD up to date, Skipping (1/0): e4rat
1 e4rat (Build Files Exist)
==> Diffs to show?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==>
:: (1/1) Parsing SRCINFO: e4rat
==> Making package: e4rat 0.2.3-4 (Mon 25 Jul 2022 01:12:47 PM CST)
==> Retrieving sources...
-> Found e4rat_0.2.3_src.tar.gz
-> Found logging.patch
-> Found sysmacros_h.patch
-> Found boost-fs3-v2.patch
-> Found cmake_boost.patch
-> Found cmake.patch
==> Validating source files with sha256sums...
e4rat_0.2.3_src.tar.gz ... Passed
logging.patch ... Passed
sysmacros_h.patch ... Passed
boost-fs3-v2.patch ... Passed
cmake_boost.patch ... Passed
cmake.patch ... Passed
==> Making package: e4rat 0.2.3-4 (Mon 25 Jul 2022 01:12:49 PM CST)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
-> Found e4rat_0.2.3_src.tar.gz
-> Found logging.patch
-> Found sysmacros_h.patch
-> Found boost-fs3-v2.patch
-> Found cmake_boost.patch
-> Found cmake.patch
==> Validating source files with sha256sums...
e4rat_0.2.3_src.tar.gz ... Passed
logging.patch ... Passed
sysmacros_h.patch ... Passed
boost-fs3-v2.patch ... Passed
cmake_boost.patch ... Passed
cmake.patch ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
-> Extracting e4rat_0.2.3_src.tar.gz with bsdtar
==> Starting prepare()...
patching file CMakeLists.txt
patching file src/CMakeLists.txt
patching file src/common.cc
patching file src/config.cc
patching file src/device.cc
patching file src/e4rat-collect.cc
patching file src/logging.hh
patching file src/device.cc
patching file src/e4rat-collect.cc
patching file src/listener.cc
patching file src/cmake/Findaudit.cmake
patching file src/cmake/Findauparse.cmake
patching file CMakeLists.txt
Hunk #1 succeeded at 15 (offset -5 lines).
patching file CMakeLists.txt
patching file src/CMakeLists.txt
Hunk #1 succeeded at 1 with fuzz 2.
patching file doc/CMakeLists.txt
Hunk #1 succeeded at 1 with fuzz 2.
patching file src/config.cc
patching file src/defrag.cc
Hunk #1 succeeded at 56 with fuzz 2.
==> Sources are ready.
==> Making package: e4rat 0.2.3-4 (Mon 25 Jul 2022 01:12:53 PM CST)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Removing existing $pkgdir/ directory...
==> Starting build()...
-- The C compiler identification is GNU 12.1.0
-- The CXX compiler identification is GNU 12.1.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Boost: /usr/lib64/cmake/Boost-1.79.0/BoostConfig.cmake (found suitable version "1.79.0", minimum required is "1.41") found components: system filesystem regex
-- Found ext2fs: /usr/lib/libext2fs.so
-- Found audit: /usr/lib/libaudit.so
-- Found auparse: /usr/lib/libauparse.so
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
CMake Warning (dev) at doc/CMakeLists.txt:11 (ADD_CUSTOM_COMMAND):
Policy CMP0050 is not set: Disallow add_custom_command SOURCE signatures.
Run "cmake --help-policy CMP0050" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The SOURCE signatures of add_custom_command are no longer supported.
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at doc/CMakeLists.txt:11 (ADD_CUSTOM_COMMAND):
Policy CMP0050 is not set: Disallow add_custom_command SOURCE signatures.
Run "cmake --help-policy CMP0050" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The SOURCE signatures of add_custom_command are no longer supported.
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at doc/CMakeLists.txt:11 (ADD_CUSTOM_COMMAND):
Policy CMP0050 is not set: Disallow add_custom_command SOURCE signatures.
Run "cmake --help-policy CMP0050" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The SOURCE signatures of add_custom_command are no longer supported.
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at doc/CMakeLists.txt:23 (ADD_CUSTOM_COMMAND):
Policy CMP0050 is not set: Disallow add_custom_command SOURCE signatures.
Run "cmake --help-policy CMP0050" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The SOURCE signatures of add_custom_command are no longer supported.
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at doc/CMakeLists.txt:34 (ADD_CUSTOM_COMMAND):
Policy CMP0050 is not set: Disallow add_custom_command SOURCE signatures.
Run "cmake --help-policy CMP0050" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The SOURCE signatures of add_custom_command are no longer supported.
This warning is for project developers. Use -Wno-dev to suppress it.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3
[ 4%] Generating e4rat-collect.8
[ 9%] Building CXX object src/CMakeFiles/e4rat-core.dir/config.cc.o
[ 19%] Generating e4rat.conf.5
[ 19%] Generating e4rat-preload.8
[ 23%] Generating e4rat-realloc.8
[ 28%] Building CXX object src/CMakeFiles/e4rat-core.dir/logging.cc.o
[ 38%] Building CXX object src/CMakeFiles/e4rat-core.dir/device.cc.o
[ 38%] Building CXX object src/CMakeFiles/e4rat-core.dir/fiemap.cc.o
[ 42%] Building CXX object src/CMakeFiles/e4rat-core.dir/common.cc.o
[ 42%] Built target ManPages
In file included from /home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:20:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.hh:73:30: error: invalid use of incomplete type ‘class boost::shared_ptr<DevicePrivate>’
73 | class Device: private boost::shared_ptr<DevicePrivate>
| ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/boost/throw_exception.hpp:21,
from /usr/include/boost/regex/v5/regex_workaround.hpp:29,
from /usr/include/boost/regex/v5/regex.hpp:29,
from /usr/include/boost/regex.hpp:34,
from /home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/common.hh:25,
from /home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.hh:23:
/usr/include/boost/exception/exception.hpp:17:44: note: declaration of ‘class boost::shared_ptr<DevicePrivate>’
17 | namespace boost { template <class T> class shared_ptr; }
| ^~~~~~~~~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In constructor ‘Device::Device(boost::filesystem::path)’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:97:14: error: type ‘boost::shared_ptr<DevicePrivate>’ is not a direct base of ‘Device’
97 | : boost::shared_ptr<DevicePrivate>(new DevicePrivate)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:107:9: error: ‘get’ was not declared in this scope
107 | get()->devno = st.st_rdev;
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:107:9: note: suggested alternatives:
In file included from /usr/include/boost/lexical_cast/detail/converter_lexical.hpp:50,
from /usr/include/boost/lexical_cast/try_lexical_convert.hpp:44,
from /usr/include/boost/lexical_cast.hpp:32,
from /home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:33:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:109:9: error: ‘get’ was not declared in this scope
109 | get()->devno = st.st_dev;
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:109:9: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In constructor ‘Device::Device(dev_t)’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:113:14: error: type ‘boost::shared_ptr<DevicePrivate>’ is not a direct base of ‘Device’
113 | : boost::shared_ptr<DevicePrivate>(new DevicePrivate)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:115:5: error: ‘get’ was not declared in this scope
115 | get()->devno = dev;
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:115:5: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘void Device::parseMtabFile(const char*)’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:134:25: error: ‘get’ was not declared in this scope
134 | if(st.st_dev == get()->devno)
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:134:25: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘void Device::parseMtab()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:150:13: error: ‘get’ was not declared in this scope
150 | if( get()->fs_name == "ext2")
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:150:13: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘boost::filesystem::path Device::getMountPoint()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:162:8: error: ‘get’ was not declared in this scope
162 | if(get()->mount_point.empty())
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:162:8: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:165:12: error: ‘get’ was not declared in this scope
165 | return get()->mount_point;
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:165:12: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘bool Device::open()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:176:45: error: ‘get’ was not declared in this scope
176 | 0, 0, unix_io_manager, &get()->fs))
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:176:45: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘std::string Device::getFileSystem()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:183:8: error: ‘get’ was not declared in this scope
183 | if(get()->fs_name.empty())
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:183:8: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:185:12: error: ‘get’ was not declared in this scope
185 | return get()->fs_name;
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:185:12: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘int Device::getDevNameFromDevfs()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:205:26: error: ‘get’ was not declared in this scope
205 | if(st.st_rdev == get()->devno)
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:205:26: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
In file included from /home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:35:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘int Device::getDevNameFromMajorMinor()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:221:23: error: ‘get’ was not declared in this scope
221 | int major = major(get()->devno);
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:221:23: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘std::string Device::getDeviceName()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:284:12: error: ‘get’ was not declared in this scope
284 | return get()->deviceName;
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:284:12: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘std::string Device::getDevicePath()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:293:8: error: ‘get’ was not declared in this scope
293 | if(get()->devicePath.empty())
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:293:8: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:295:12: error: ‘get’ was not declared in this scope
295 | return get()->devicePath;
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:295:12: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
In file included from /usr/include/ext2fs/ext2fs.h:84,
from /home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.hh:25:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘bool Device::hasExtentFeature()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:339:38: error: ‘get’ was not declared in this scope
339 | return EXT2_HAS_INCOMPAT_FEATURE(get()->fs->super, EXT3_FEATURE_INCOMPAT_EXTENTS);
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:339:38: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘__u32 Device::getBlockSize()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:434:12: error: ‘get’ was not declared in this scope
434 | return get()->fs->blocksize;
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:434:12: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘__u32 Device::getGroupCount()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:439:12: error: ‘get’ was not declared in this scope
439 | return get()->fs->group_desc_count;
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:439:12: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘__u64 Device::freeBlocksPerFlex()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:444:33: error: ‘get’ was not declared in this scope
444 | return FREE_BLOCKS_PER_FLEX(get()->fs);
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:37:36: note: in definition of macro ‘BLOCKS_PER_GROUP’
37 | #define BLOCKS_PER_GROUP(fs) (fs->super->s_blocks_per_group)
| ^~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:44:36: note: in expansion of macro ‘FREE_BLOCKS_PER_GROUP’
44 | #define FREE_BLOCKS_PER_FLEX(fs) (FREE_BLOCKS_PER_GROUP(fs) << fs->super->s_log_groups_per_flex)
| ^~~~~~~~~~~~~~~~~~~~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:444:12: note: in expansion of macro ‘FREE_BLOCKS_PER_FLEX’
444 | return FREE_BLOCKS_PER_FLEX(get()->fs);
| ^~~~~~~~~~~~~~~~~~~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:444:33: note: suggested alternatives:
444 | return FREE_BLOCKS_PER_FLEX(get()->fs);
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:37:36: note: in definition of macro ‘BLOCKS_PER_GROUP’
37 | #define BLOCKS_PER_GROUP(fs) (fs->super->s_blocks_per_group)
| ^~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:44:36: note: in expansion of macro ‘FREE_BLOCKS_PER_GROUP’
44 | #define FREE_BLOCKS_PER_FLEX(fs) (FREE_BLOCKS_PER_GROUP(fs) << fs->super->s_log_groups_per_flex)
| ^~~~~~~~~~~~~~~~~~~~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:444:12: note: in expansion of macro ‘FREE_BLOCKS_PER_FLEX’
444 | return FREE_BLOCKS_PER_FLEX(get()->fs);
| ^~~~~~~~~~~~~~~~~~~~
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘__u64 Device::freeBlocksPerGroup()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:449:34: error: ‘get’ was not declared in this scope
449 | return FREE_BLOCKS_PER_GROUP(get()->fs);
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:37:36: note: in definition of macro ‘BLOCKS_PER_GROUP’
37 | #define BLOCKS_PER_GROUP(fs) (fs->super->s_blocks_per_group)
| ^~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:449:12: note: in expansion of macro ‘FREE_BLOCKS_PER_GROUP’
449 | return FREE_BLOCKS_PER_GROUP(get()->fs);
| ^~~~~~~~~~~~~~~~~~~~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:449:34: note: suggested alternatives:
449 | return FREE_BLOCKS_PER_GROUP(get()->fs);
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:37:36: note: in definition of macro ‘BLOCKS_PER_GROUP’
37 | #define BLOCKS_PER_GROUP(fs) (fs->super->s_blocks_per_group)
| ^~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:449:12: note: in expansion of macro ‘FREE_BLOCKS_PER_GROUP’
449 | return FREE_BLOCKS_PER_GROUP(get()->fs);
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘__u32 Device::getBlocksPerGroup()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:454:29: error: ‘get’ was not declared in this scope
454 | return BLOCKS_PER_GROUP(get()->fs);
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:37:36: note: in definition of macro ‘BLOCKS_PER_GROUP’
37 | #define BLOCKS_PER_GROUP(fs) (fs->super->s_blocks_per_group)
| ^~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:454:29: note: suggested alternatives:
454 | return BLOCKS_PER_GROUP(get()->fs);
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:37:36: note: in definition of macro ‘BLOCKS_PER_GROUP’
37 | #define BLOCKS_PER_GROUP(fs) (fs->super->s_blocks_per_group)
| ^~
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘__u32 Device::getLogGroupsPerFlex()’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:459:12: error: ‘get’ was not declared in this scope
459 | return get()->fs->super->s_log_groups_per_flex;
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:459:12: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc: In member function ‘bool Device::operator<(const Device&) const’:
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:464:12: error: ‘get’ was not declared in this scope
464 | return get()->devno < other.get()->devno;
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:464:12: note: suggested alternatives:
/usr/include/boost/array.hpp:445:13: note: ‘std::get’
445 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/usr/include/boost/array.hpp:428:13: note: ‘boost::get’
428 | const T &get(const boost::array<T,N> &arr) BOOST_NOEXCEPT {
| ^~~
/home/mycomputer/.cache/yay/e4rat/src/e4rat-0.2.3/src/device.cc:464:33: error: ‘const class Device’ has no member named ‘get’
464 | return get()->devno < other.get()->devno;
| ^~~
make[2]: *** [src/CMakeFiles/e4rat-core.dir/build.make:132: src/CMakeFiles/e4rat-core.dir/device.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:227: src/CMakeFiles/e4rat-core.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
==> ERROR: A failure occurred in build().
Aborting...
-> error making: e4ratAlmost all errors point to "get".I don't know what's wrong(I am c++ noob).
Offline
I would start a new issue for e4rat's build failure. I would also flag the e4rat package in AUR as out of date.
Offline
I would start a new issue for e4rat's build failure. I would also flag the e4rat package in AUR as out of date.
Thank you for your work!
Offline
Pages: 1