Package Details: e4rat 0.2.3-2

Git Clone URL: https://aur.archlinux.org/e4rat.git (read-only)
Package Base: e4rat
Description: Toolset to accelerate the boot process and application startups for systems with ext4 root partitions.
Upstream URL: http://e4rat.sourceforge.net/
Licenses: GPL
Submitter: swiftgeek
Maintainer: swiftgeek
Last Packager: swiftgeek
Votes: 41
Popularity: 0.864509
First Submitted: 2013-05-13 18:00
Last Updated: 2015-06-09 23:43

Dependencies (5)

Required by (0)

Sources (2)

Latest Comments

takeshibaconsuzu commented on 2016-07-01 09:21

I had to modify the source. What I did was replace that problem line in logger.hh:
#define debug(format,args...) dump_log(Debug, "%s:%d in %s(): "format, __FILE__, __LINE__, __FUNCTION__, ## args)
with:
#define debug(format, ...) logger.write(Debug, "%s:%d in %s(): " format, __FILE__, __LINE__, __FUNCTION__, ##__VA_ARGS__)
and then did a makepkg -esri.

On a side note, when I first ran this, the startup.log file was blank. The easy solution was to follow cubethethird's advice and replace every occurence of:
Config::get<std::string>(“startup_log_file”).c_str()
with:
"/var/lib/e4rat/startup.log"
More information at https://cubethethird.wordpress.com/2016/04/02/reducing-boot-time/.

kozaki commented on 2016-06-12 17:24

Rebuilt audit with 'staticlibs' added in the 'options' array of the PKGBUILD, but e4rat still won't build. (context: I'd like to use it to further get close to a chromebook abilities out of my six year old netbook with good ol' spinning hdd :-} )
---
[ 28%] Built target e4rat-core
Scanning dependencies of target e4rat-collect
[ 33%] Building CXX object src/CMakeFiles/e4rat-collect.dir/e4rat-collect.cc.o
In file included from /data/system/build/x86/e4rat/src/e4rat-0.2.3/src/e4rat-collect.cc:24:0:
/data/system/build/x86/e4rat/src/e4rat-0.2.3/src/e4rat-collect.cc: In function ‘void scanOpenFiles(std::vector<FilePtr>&)’:
/data/system/build/x86/e4rat/src/e4rat-0.2.3/src/logging.hh:96:51: error: unable to find string literal operator ‘operator""format’ with ‘const char [16]’, ‘unsigned int’ arguments
#define debug(format,args...) dump_log(Debug, "%s:%d in %s(): "format, __FILE__, __LINE__, __FUNCTION__, ## args)
^
/data/system/build/x86/e4rat/src/e4rat-0.2.3/src/logging.hh:93:36: note: in definition of macro ‘dump_log’
#define dump_log(...) logger.write(__VA_ARGS__)
^~~~~~~~~~~
/data/system/build/x86/e4rat/src/e4rat-0.2.3/src/e4rat-collect.cc:107:5: note: in expansion of macro ‘debug’
debug("Scan open files by calling lsof");
^
src/CMakeFiles/e4rat-collect.dir/build.make:62: recipe for target 'src/CMakeFiles/e4rat-collect.dir/e4rat-collect.cc.o' failed
make[2]: *** [src/CMakeFiles/e4rat-collect.dir/e4rat-collect.cc.o] Error 1
CMakeFiles/Makefile2:123: recipe for target 'src/CMakeFiles/e4rat-collect.dir/all' failed
make[1]: *** [src/CMakeFiles/e4rat-collect.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2
==> ERROR: A failure occurred in build().
Aborting...
==> ERROR: Makepkg was unable to build e4rat.
==> Restart building e4rat ? [y/N]
==> ------------------------------

beardedlinuxgeek commented on 2016-03-30 18:14

Look at this comment: https://bbs.archlinux.org/viewtopic.php?pid=1603933#p1603933

They say you should not edit /etc/makepkg.conf like dokie80 said. Instead just edit the PKGBUILD for audit.

dokie80 commented on 2015-11-29 04:32

sorry nvm.. this post is very helpfull : https://bbs.archlinux.org/viewtopic.php?pid=1358066

- change "!staticlibs" to "staticlibs" in /etc/makepkg.conf
- install abs = sudo pacman -S abs
- run abs to generate file tree
- navigate to /var/abs/community/audit, copy the folder "audit" to other place ie. home folder
- navigate to ~/audit
- run "makepkg", will generate a file with .tar.xz extension.
- run "sudo pacman -U ~/audit/audit-2.4.4-1-i686.pkg.tar.xz" (file name maybe different if there's update)
- try install e4rat again

hope this help other noob like me.

dokie80 commented on 2015-11-29 03:41

can you please describe how to rebuild audit (read it from wiki) for e4rat to work?

swiftgeek commented on 2014-09-08 09:10

Read ArchWiki about abs and PKGBUILDs -.-

kale-ru commented on 2014-09-08 07:37

ref http://www.opendevs.org/kmvkk/staticlibs-in-pkgbuild.html is broken..
please, how recompile audit package with staticlibs option

parchd commented on 2014-02-21 14:08

Sorry, forget it. No idea what happened but I reinstalled the deps and tried again, now everything worked fine. Third times a charm ;)

parchd commented on 2014-02-21 14:00

My build fails, can anyone help me figure out why?

Scanning dependencies of target ManPages
[ 82%] Generating e4rat-collect.8
doc/CMakeFiles/ManPages.dir/build.make:52: recipe for target 'doc/e4rat-collect.8' failed
CMakeFiles/Makefile2:270: recipe for target 'doc/CMakeFiles/ManPages.dir/all' failed
Makefile:116: recipe for target 'all' failed

swiftgeek commented on 2013-11-30 12:29

http://www.opendevs.org/kmvkk/staticlibs-in-pkgbuild.html
You need to recompile audit package with staticlibs option, thanks to new policies :<

At least It's only needed once since e4rat isn't developed anymore and it's static ;)

(This package has far to low amount of votes to go back into community or extra)

Nordlicht commented on 2013-11-30 11:50

Does not compile:

"CMake Error at src/cmake/Findaudit.cmake:17 (MESSAGE):
Could not find audit
Call Stack (most recent call first):
src/CMakeLists.txt:83 (find_package)


-- Configuring incomplete, errors occurred!
"

swiftgeek commented on 2013-11-06 20:46

I don't get it at all… why just not give people the choice -.-

markoer commented on 2013-11-06 19:23

it's not possible to compile it anymore, needs option staticlibs which are generaly removed from almost all packages according to mailing list. So patch would be required

vicp74 commented on 2013-07-17 00:27

After upgrading boost-libs (1.53.0.2 -> 1.54.0-2), e4rat stop working. I recieve a kernel panic when booting because e4rat looks for /usr/lib/libboost_system.so.1.53.0 but
there's no such file. e4rat should try /usr/lib/libboost_system.so.1.54.0 or /usr/lib/libboost_system.so. The same happens with the other libboost_* like libboost_filesystem.so.1.54.0.

Is there a way to solve this problem in the PKGBUILD or using a patch? Or what should I do?

solstice commented on 2013-06-03 14:35

mkdir -p $pkgdir/usr/bin
mv $pkgdir/sbin/* $pkgdir/usr/bin
rmdir $pkgdir/sbin

cippaciong commented on 2013-06-03 14:15

binary files need to be moved to /usr/bin according to arch latest changes.
See: https://www.archlinux.org/news/binaries-move-to-usrbin-requiring-update-intervention/

swiftgeek commented on 2013-06-03 14:11

TODO: /sbin → /usr/bin fix

swiftgeek commented on 2013-05-25 16:25

K. compiled&&packaged without errors - not tested (looking for volunteer with some knowledge of ext4 fs)

swiftgeek commented on 2013-05-25 15:54

K. compiled without errors - not tested (looking for volunteer with some knowledge of ext4 fs)

Now i will proceed to create patches from:
config.cc commmon.cc device.cc e4rat-collect.cc

swiftgeek commented on 2013-05-25 15:35

It comes directly from your inability to read comments && output.
[Please delete your comments and this message will be also deleted. Then just wait till package is fully patched]

Distag commented on 2013-05-24 12:47

Compilation errors:
"
In file included from /usr/include/boost/filesystem.hpp:15:0,
from /tmp/yaourt-tmp-distag/aur-e4rat/src/e4rat-0.2.3/src/common.hh:24,
from /tmp/yaourt-tmp-distag/aur-e4rat/src/e4rat-0.2.3/src/config.cc:22:
/usr/include/boost/filesystem/config.hpp:16:5: erreur: #error Compiling Filesystem version 3 file with BOOST_FILESYSTEM_VERSION defined != 3
# error Compiling Filesystem version 3 file with BOOST_FILESYSTEM_VERSION defined != 3
^
/tmp/yaourt-tmp-distag/aur-e4rat/src/e4rat-0.2.3/src/config.cc: In constructor ‘Config::Config()’:
/tmp/yaourt-tmp-distag/aur-e4rat/src/e4rat-0.2.3/src/config.cc:74:15: erreur: no match for ‘operator=’ (operand types are ‘std::string {aka std::basic_string<char>}’ and ‘boost::filesystem::path’)
tool_name = fs::path(argv[0]).filename();
^
/tmp/yaourt-tmp-distag/aur-e4rat/src/e4rat-0.2.3/src/config.cc:74:15: note: candidates are:
In file included from /usr/include/c++/4.8.0/string:52:0,
from /usr/include/boost/property_tree/ptree_fwd.hpp:19,
from /usr/include/boost/property_tree/ptree.hpp:15,
from /tmp/yaourt-tmp-distag/aur-e4rat/src/e4rat-0.2.3/src/config.hh:24,
from /tmp/yaourt-tmp-distag/aur-e4rat/src/e4rat-0.2.3/src/config.cc:20:
/usr/include/c++/4.8.0/bits/basic_string.h:546:7: note: std::basic_string<_CharT, _Traits, _Alloc>& std::basic_string<_CharT, _Traits, _Alloc>::operator=(const std::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]
operator=(const basic_string& __str)
^
/usr/include/c++/4.8.0/bits/basic_string.h:546:7: note: no known conversion for argument 1 from ‘boost::filesystem::path’ to ‘const std::basic_string<char>&’
/usr/include/c++/4.8.0/bits/basic_string.h:554:7: note: std::basic_string<_CharT, _Traits, _Alloc>& std::basic_string<_CharT, _Traits, _Alloc>::operator=(const _CharT*) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]
operator=(const _CharT* __s)
^
/usr/include/c++/4.8.0/bits/basic_string.h:554:7: note: no known conversion for argument 1 from ‘boost::filesystem::path’ to ‘const char*’
/usr/include/c++/4.8.0/bits/basic_string.h:565:7: note: std::basic_string<_CharT, _Traits, _Alloc>& std::basic_string<_CharT, _Traits, _Alloc>::operator=(_CharT) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]
operator=(_CharT __c)
^
/usr/include/c++/4.8.0/bits/basic_string.h:565:7: note: no known conversion for argument 1 from ‘boost::filesystem::path’ to ‘char’
make[2]: *** [src/CMakeFiles/e4rat-core.dir/config.cc.o] Erreur 1
make[1]: *** [src/CMakeFiles/e4rat-core.dir/all] Erreur 2
make: *** [all] Erreur 2
"
Where does the problem come from?

Distag commented on 2013-05-24 12:45

Compilation errors:
"
In file included from /usr/include/boost/filesystem.hpp:15:0,
from /tmp/yaourt-tmp-distag/aur-e4rat/src/e4rat-0.2.3/src/common.hh:24,
from /tmp/yaourt-tmp-distag/aur-e4rat/src/e4rat-0.2.3/src/config.cc:22:
/usr/include/boost/filesystem/config.hpp:16:5: erreur: #error Compiling Filesystem version 3 file with BOOST_FILESYSTEM_VERSION defined != 3
# error Compiling Filesystem version 3 file with BOOST_FILESYSTEM_VERSION defined != 3
^
/tmp/yaourt-tmp-distag/aur-e4rat/src/e4rat-0.2.3/src/config.cc: In constructor ‘Config::Config()’:
/tmp/yaourt-tmp-distag/aur-e4rat/src/e4rat-0.2.3/src/config.cc:74:15: erreur: no match for ‘operator=’ (operand types are ‘std::string {aka std::basic_string<char>}’ and ‘boost::filesystem::path’)
tool_name = fs::path(argv[0]).filename();
^
/tmp/yaourt-tmp-distag/aur-e4rat/src/e4rat-0.2.3/src/config.cc:74:15: note: candidates are:
In file included from /usr/include/c++/4.8.0/string:52:0,
from /usr/include/boost/property_tree/ptree_fwd.hpp:19,
from /usr/include/boost/property_tree/ptree.hpp:15,
from /tmp/yaourt-tmp-distag/aur-e4rat/src/e4rat-0.2.3/src/config.hh:24,
from /tmp/yaourt-tmp-distag/aur-e4rat/src/e4rat-0.2.3/src/config.cc:20:
/usr/include/c++/4.8.0/bits/basic_string.h:546:7: note: std::basic_string<_CharT, _Traits, _Alloc>& std::basic_string<_CharT, _Traits, _Alloc>::operator=(const std::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]
operator=(const basic_string& __str)
^
/usr/include/c++/4.8.0/bits/basic_string.h:546:7: note: no known conversion for argument 1 from ‘boost::filesystem::path’ to ‘const std::basic_string<char>&’
/usr/include/c++/4.8.0/bits/basic_string.h:554:7: note: std::basic_string<_CharT, _Traits, _Alloc>& std::basic_string<_CharT, _Traits, _Alloc>::operator=(const _CharT*) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]
operator=(const _CharT* __s)
^
/usr/include/c++/4.8.0/bits/basic_string.h:554:7: note: no known conversion for argument 1 from ‘boost::filesystem::path’ to ‘const char*’
/usr/include/c++/4.8.0/bits/basic_string.h:565:7: note: std::basic_string<_CharT, _Traits, _Alloc>& std::basic_string<_CharT, _Traits, _Alloc>::operator=(_CharT) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]
operator=(_CharT __c)
^
/usr/include/c++/4.8.0/bits/basic_string.h:565:7: note: no known conversion for argument 1 from ‘boost::filesystem::path’ to ‘char’
make[2]: *** [src/CMakeFiles/e4rat-core.dir/config.cc.o] Erreur 1
make[1]: *** [src/CMakeFiles/e4rat-core.dir/all] Erreur 2
make: *** [all] Erreur 2
"
Where does the problem come from?

swiftgeek commented on 2013-05-24 10:50

Oh so this that project that i have forgot about xD (this will be deleted too)

swiftgeek commented on 2013-05-14 17:46

I don't have any time till monday
(This comment will be deleted on monday ;) )

Sunday commented on 2013-05-14 17:43

Yes please put this patch into the PGKBUILD. An additional change is still necessary to make it build:

src/config.cc line 74:
tool_name = fs::path(argv[0].filename().string();

(again the .string() part added)

swiftgeek commented on 2013-05-13 18:38

TODO: create patch from this: https://github.com/LaraCraft304/e4rat-lite/commit/30780517a0edad3e22d51134f020d5feab12567f

swiftgeek commented on 2013-05-13 18:01

Doesn't compile yet