I upgraded Makefile to use GH_DISTFILE. Also I found a commit from upstream to fix some implicit conversion warnings: https://github.com/meganz/sdk/commit/a0e222bf72640c85c89ff9d26c1c1a467565cc8f
What is the correct way to backport these changes to the sdk version that is used by megacmd? Backport all changes and generate file by file patches to the patches/ directory or use one patch with all changes, put the files/ directory and apply in Makefile at post-patch time? (sdk patch not work as PATCHFILES because the sdk path is ${WRKSRC}/sdk) I built megacmd with the shared lib, but I haven't got linking error. I see you have libstdc++fs, but I haven’t, in my configure output: checking for main in -lstdc++fs... no Stuart Henderson <s...@spacehopper.org> ezt írta (időpont: 2023. jún. 20., K, 21:48): > > On 2023/06/20 17:00, Stuart Henderson wrote: > > I don't have an account to test runtime, but this is looking much > > better to me now. > > oh, ermm, linking fails - did you actually get it built with the > shared lib? > > mv -f src/.deps/mega_cmd_server-comunicationsmanagerfilesockets.Tpo src/.deps/ > mega_cmd_server-comunicationsmanagerfilesockets.Po > /usr/bin/libtool --mode=link c++ -g -O2 -pthread -L/usr/local/lib -o me > ga-cmd-server src/mega_cmd_server-megacmd.o src/mega_cmd_server-comunications > manager.o src/mega_cmd_server-megacmdutils.o src/mega_cmd_server-megacmdcomm > onutils.o src/mega_cmd_server-configurationmanager.o src/mega_cmd_server-meg > acmdlogger.o src/mega_cmd_server-megacmdsandbox.o src/mega_cmd_server-listen > ers.o src/mega_cmd_server-megacmdexecuter.o src/mega_cmd_server-megacmdtrans > fermanager.o src/mega_cmd_server-comunicationsmanagerportsockets.o src/mega > _cmd_server-comunicationsmanagerfilesockets.o -lsqlite3 -lpcrecpp -lpcre ./s > dk/src/libmega.la > libtool: link: c++ -o .libs/mega-cmd-server -pthread -g -O2 src/mega_cmd_serve > r-megacmd.o src/mega_cmd_server-comunicationsmanager.o src/mega_cmd_server-meg > acmdutils.o src/mega_cmd_server-megacmdcommonutils.o src/mega_cmd_server-confi > gurationmanager.o src/mega_cmd_server-megacmdlogger.o src/mega_cmd_server-mega > cmdsandbox.o src/mega_cmd_server-listeners.o src/mega_cmd_server-megacmdexecut > er.o src/mega_cmd_server-megacmdtransfermanager.o src/mega_cmd_server-comunica > tionsmanagerportsockets.o src/mega_cmd_server-comunicationsmanagerfilesockets. > o -L.libs -lsqlite3 -lz -lm -lpthread -lpcrecpp -lpcre -lmega /usr/local/lib/l > ibstdc++fs.a -lcares -lcurl -lnghttp3 -lngtcp2_crypto_openssl -lngtcp2 -lssl - > lcrypto -lnghttp2 -luv -lcryptopp -lsodium -Wl,-rpath-link,/usr/local/lib > megacmd.cpp(src/mega_cmd_server-megacmd.o:(megacmd::executecommand(char*))): w > arning: sprintf() is often misused, please use snprintf() > megacmdutils.cpp(src/mega_cmd_server-megacmdutils.o:(megacmd::getTimeStampAfte > r(long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__ > 1::allocator<char> >))): warning: strcpy() is almost always misused, please us > e strlcpy() > ld: error: .libs/libmega.so.0.0: undefined reference to std::__throw_length_er > ror(char const*) [--no-allow-shlib-undefined] > ld: error: .libs/libmega.so.0.0: undefined reference to std::_V2::system_categ > ory() [--no-allow-shlib-undefined] > ld: error: .libs/libmega.so.0.0: undefined reference to std::_V2::generic_cate > gory() [--no-allow-shlib-undefined] > ld: error: .libs/libmega.so.0.0: undefined reference to std::__throw_logic_err > or(char const*) [--no-allow-shlib-undefined] > ld: error: .libs/libmega.so.0.0: undefined reference to std::runtime_error::ru > ntime_error(std::__cxx11::basic_string<char, std::char_traits<char>, std::allo > cator<char> > const&) [--no-allow-shlib-undefined] > ld: error: .libs/libmega.so.0.0: undefined reference to std::system_error::~sy > stem_error() [--no-allow-shlib-undefined] > ld: error: .libs/libmega.so.0.0: undefined reference to std::__codecvt_utf8_ba > se<wchar_t>::~__codecvt_utf8_base() [--no-allow-shlib-undefined] > ld: error: .libs/libmega.so.0.0: undefined reference to std::_Hash_bytes(void > const*, unsigned long, unsigned long) [--no-allow-shlib-undefined] > ld: error: .libs/libmega.so.0.0: undefined reference to std::__throw_out_of_ra > nge_fmt(char const*, ...) [--no-allow-shlib-undefined] > ld: error: .libs/libmega.so.0.0: undefined reference to std::codecvt<wchar_t, > char, __mbstate_t> const& std::use_facet<std::codecvt<wchar_t, char, __mbstate > _t> >(std::locale const&) [--no-allow-shlib-undefined] > ld: error: .libs/libmega.so.0.0: undefined reference to std::codecvt<wchar_t, > char, __mbstate_t>::codecvt(unsigned long) [--no-allow-shlib-undefined] > ld: error: .libs/libmega.so.0.0: undefined reference to std::__codecvt_utf8_ba > se<wchar_t>::do_max_length() const [--no-allow-shlib-undefined] > ld: error: .libs/libmega.so.0.0: undefined reference to std::__codecvt_utf8_ba > se<wchar_t>::do_out(__mbstate_t&, wchar_t const*, wchar_t const*, wchar_t cons > t*&, char*, char*, char*&) const [--no-allow-shlib-undefined] > ld: error: .libs/libmega.so.0.0: undefined reference to typeinfo for std::syst > em_error [--no-allow-shlib-undefined] > ld: error: .libs/libmega.so.0.0: undefined reference to typeinfo for std::__co > decvt_utf8_base<wchar_t> [--no-allow-shlib-undefined] -- kikadf