I have some difficulties to compile the last version of mame (mame0227).
Here are the errors i get :
Quote
Compiling src/emu/emumem_mud.cpp... Compiling src/emu/emumem_mview.cpp... Compiling src/emu/emuopts.cpp... Compiling src/emu/emupal.cpp... Compiling src/emu/fileio.cpp... Compiling src/emu/hashfile.cpp... Compiling src/emu/http.cpp... In file included from ../../../../../src/emu/http.cpp:19:0: ../../../../../src/lib/util/server_http_impl.hpp: In instantiation of ‘webpp::ServerBase<socket_type>::read_request_and_content(const std::shared_ptr<_Tp>&)::<lambda(const std::error_code&, size_t)> [with socket_type = asio::basic_stream_socket<asio::ip::tcp>; size_t = long unsigned int]’: ../../../../../src/lib/util/server_http_impl.hpp:268:30: required from ‘struct webpp::ServerBase<socket_type>::read_request_and_content(const std::shared_ptr<_Tp>&) [with socket_type = asio::basic_stream_socket<asio::ip::tcp>]::<lambda(const struct std::error_code&, size_t)>’ ../../../../../src/lib/util/server_http_impl.hpp:267:26: required from ‘void webpp::ServerBase<socket_type>::read_request_and_content(const std::shared_ptr<_Tp>&) [with socket_type = asio::basic_stream_socket<asio::ip::tcp>]’ ../../../../../src/lib/util/server_http_impl.hpp:470:37: required from here ../../../../../src/lib/util/server_http_impl.hpp:284:26: error: uninitialized variable ‘content_length’ in ‘constexpr’ function unsigned long long content_length; ^~~~~~~~~~~~~~ In file included from ../../../../../3rdparty/asio/include/asio/read.hpp:945:0, from ../../../../../3rdparty/asio/include/asio.hpp:109, from ../../../../../src/osd/asio.h:34, from ../../../../../src/lib/util/server_ws_impl.hpp:9, from ../../../../../src/emu/http.cpp:18: ../../../../../3rdparty/asio/include/asio/impl/read.hpp:700:1: error: ‘typename asio::async_result<typename std::decay<WriteHandler>::type, void(std::error_code, long unsigned int)>::return_type asio::async_read(AsyncReadStream&, asio::basic_streambuf<Allocator>&, CompletionCondition, ReadHandler&&) [with AsyncReadStream = asio::basic_stream_socket<asio::ip::tcp>; Allocator = std::allocator<char>; CompletionCondition = asio::detail::transfer_exactly_t; ReadHandler = webpp::ServerBase<socket_type>::read_request_and_content(const std::shared_ptr<_Tp>&)::<lambda(const std::error_code&, size_t)> [with socket_type = asio::basic_stream_socket<asio::ip::tcp>; size_t = long unsigned int]::<lambda(const std::error_code&, size_t)>; typename asio::async_result<typename std::decay<WriteHandler>::type, void(std::error_code, long unsigned int)>::return_type = void]’, declared using local type ‘webpp::ServerBase<socket_type>::read_request_and_content(const std::shared_ptr<_Tp>&)::<lambda(const std::error_code&, size_t)> [with socket_type = asio::basic_stream_socket<asio::ip::tcp>; size_t = long unsigned int]::<lambda(const std::error_code&, size_t)>’, is used but never defined [-fpermissive] async_read(AsyncReadStream& s, basic_streambuf<Allocator>& b, ^~~~~~~~~~ In file included from ../../../../../3rdparty/asio/include/asio/read_until.hpp:1822:0, from ../../../../../3rdparty/asio/include/asio.hpp:111, from ../../../../../src/osd/asio.h:34, from ../../../../../src/lib/util/server_ws_impl.hpp:9, from ../../../../../src/emu/http.cpp:18: ../../../../../3rdparty/asio/include/asio/impl/read_until.hpp:1456:1: error: ‘typename asio::async_result<typename std::decay<WriteHandler>::type, void(std::error_code, long unsigned int)>::return_type asio::async_read_until(AsyncReadStream&, asio::basic_streambuf<Allocator>&, std::experimental::fundamentals_v1::string_view, ReadHandler&&) [with AsyncReadStream = asio::basic_stream_socket<asio::ip::tcp>; Allocator = std::allocator<char>; ReadHandler = webpp::ServerBase<socket_type>::read_request_and_content(const std::shared_ptr<_Tp>&) [with socket_type = asio::basic_stream_socket<asio::ip::tcp>]::<lambda(const std::error_code&, size_t)>; typename asio::async_result<typename std::decay<WriteHandler>::type, void(std::error_code, long unsigned int)>::return_type = void; std::experimental::fundamentals_v1::string_view = std::experimental::fundamentals_v1::basic_string_view<char>]’, declared using local type ‘webpp::ServerBase<socket_type>::read_request_and_content(const std::shared_ptr<_Tp>&) [with socket_type = asio::basic_stream_socket<asio::ip::tcp>]::<lambda(const std::error_code&, size_t)>’, is used but never defined [-fpermissive] async_read_until(AsyncReadStream& s, ^~~~~~~~~~~~~~~~ make[2]: *** [emu.make:1280: ../../../../linux_gcc/obj/x64/Release/src/emu/http.o] Error 1 make[1]: *** [Makefile:91: emu] Error 2 make: *** [makefile:1379: linux_x64] Error 2
just for information, the machine on which I am compiling has gcc 7.2.0. I did not have any problem to compile the previous releases of mame (by the way, I've been compiling each version of mame on this machine for several years with the same compiler without error).
According to the documentation, mame is still supposed to support gcc 7.2.0 (I did not have this problem to install mame on another machine with gcc 9.3.0).
If anyone has an idea to solve this problem (without upgrading gcc), thanks !