I tried compiling the project on Ubuntu 20.04, I manually downloaded and installed the dependencies from bionic
Now I'm getting this error:
In file included from unlock_keyrings.cc:3:
./lib/rlib/stream.hpp: In function ‘std::ostream& rlib::null_stream()’:
./lib/rlib/stream.hpp:21:60: error: no matching function for call to ‘std::basic_ostream<char>::basic_ostream(rlib::impl::NullStreamBuf&)’
21 | static std::ostream instance(impl::null_streambuf());
the full output:
$ make
mkdir -p ../bin/
g++ unlock_keyrings.cc -o ../bin/unlock_keyrings -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -lgnome-keyring -lglib-2.0 -I ./lib -I . -std=c++14
In file included from ./lib/rlib/log.hpp:10,
from unlock_keyrings.cc:1:
./lib/rlib/sys/time.hpp: In function ‘std::string rlib::get_current_time_str()’:
./lib/rlib/sys/time.hpp:15:84: warning: throw will always call terminate() [-Wterminate]
15 | throw std::overflow_error("on get_current_time: mbstr buffer is too small.");
| ^
In file included from unlock_keyrings.cc:3:
./lib/rlib/stream.hpp: In function ‘std::ostream& rlib::null_stream()’:
./lib/rlib/stream.hpp:21:60: error: no matching function for call to ‘std::basic_ostream<char>::basic_ostream(rlib::impl::NullStreamBuf&)’
21 | static std::ostream instance(impl::null_streambuf());
| ^
In file included from /usr/include/c++/9/istream:39,
from /usr/include/c++/9/fstream:38,
from ./lib/rlib/log.hpp:5,
from unlock_keyrings.cc:1:
/usr/include/c++/9/ostream:399:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::basic_ostream(std::basic_ostream<_CharT, _Traits>&&) [with _CharT = char; _Traits = std::char_traits<char>]’
399 | basic_ostream(basic_ostream&& __rhs)
| ^~~~~~~~~~~~~
/usr/include/c++/9/ostream:399:37: note: no known conversion for argument 1 from ‘rlib::impl::NullStreamBuf’ to ‘std::basic_ostream<char>&&’
399 | basic_ostream(basic_ostream&& __rhs)
| ~~~~~~~~~~~~~~~~^~~~~
/usr/include/c++/9/ostream:395:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::basic_ostream(std::basic_iostream<_CharT, _Traits>&) [with _CharT = char; _Traits = std::char_traits<char>]’
395 | basic_ostream(basic_iostream<_CharT, _Traits>&) { }
| ^~~~~~~~~~~~~
/usr/include/c++/9/ostream:395:21: note: no known conversion for argument 1 from ‘rlib::impl::NullStreamBuf’ to ‘std::basic_iostream<char>&’
395 | basic_ostream(basic_iostream<_CharT, _Traits>&) { }
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/9/ostream:390:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::basic_ostream() [with _CharT = char; _Traits = std::char_traits<char>]’
390 | basic_ostream()
| ^~~~~~~~~~~~~
/usr/include/c++/9/ostream:390:7: note: candidate expects 0 arguments, 1 provided
/usr/include/c++/9/ostream:84:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::basic_ostream(std::basic_ostream<_CharT, _Traits>::__streambuf_type*) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_ostream<_CharT, _Traits>::__streambuf_type = std::basic_streambuf<char>]’
84 | basic_ostream(__streambuf_type* __sb)
| ^~~~~~~~~~~~~
/usr/include/c++/9/ostream:84:39: note: no known conversion for argument 1 from ‘rlib::impl::NullStreamBuf’ to ‘std::basic_ostream<char>::__streambuf_type*’ {aka ‘std::basic_streambuf<char>*’}
84 | basic_ostream(__streambuf_type* __sb)
| ~~~~~~~~~~~~~~~~~~^~~~
In file included from unlock_keyrings.cc:4:
keyring_op.hpp: In function ‘GnomeKeyringResult do_unlock(std::string, std::string)’:
keyring_op.hpp:6:71: warning: ‘GnomeKeyringResult gnome_keyring_unlock_sync(const char*, const char*)’ is deprecated: Use 'secret_service_unlock_sync' instead [-Wdeprecated-declarations]
6 | return gnome_keyring_unlock_sync(keyring.c_str(), password.c_str());
| ^
In file included from keyring_op.hpp:1,
from unlock_keyrings.cc:4:
/usr/include/gnome-keyring-1/gnome-keyring.h:229:20: note: declared here
229 | GnomeKeyringResult gnome_keyring_unlock_sync (const char *keyring,
| ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from unlock_keyrings.cc:4:
keyring_op.hpp:6:71: warning: ‘GnomeKeyringResult gnome_keyring_unlock_sync(const char*, const char*)’ is deprecated: Use 'secret_service_unlock_sync' instead [-Wdeprecated-declarations]
6 | return gnome_keyring_unlock_sync(keyring.c_str(), password.c_str());
| ^
In file included from keyring_op.hpp:1,
from unlock_keyrings.cc:4:
/usr/include/gnome-keyring-1/gnome-keyring.h:229:20: note: declared here
229 | GnomeKeyringResult gnome_keyring_unlock_sync (const char *keyring,
| ^~~~~~~~~~~~~~~~~~~~~~~~~
make: *** [Makefile:9: secret] Fehler 1
I tried compiling the project on Ubuntu 20.04, I manually downloaded and installed the dependencies from bionic Now I'm getting this error:
the full output:
I have installed the libraries like so:
is there a library I'm missing?