Retro68 icon indicating copy to clipboard operation
Retro68 copied to clipboard

Incompatibility with boost 1.79: error: no member named 'ofstream' in namespace 'boost::filesystem'

Open ryandesign opened this issue 3 years ago • 0 comments

Retro68 fails to build with boost 1.79:

LaunchAPPL/Client/SharedFile.cc:51:21: error: expected ';' after expression
        fs::ofstream out(shared_directory / "in_channel_1", std::ios::binary);
                    ^
                    ;
LaunchAPPL/Client/SharedFile.cc:51:13: error: no member named 'ofstream' in namespace 'boost::filesystem'
        fs::ofstream out(shared_directory / "in_channel_1", std::ios::binary);
        ~~~~^
LaunchAPPL/Client/SharedFile.cc:51:22: error: use of undeclared identifier 'out'
        fs::ofstream out(shared_directory / "in_channel_1", std::ios::binary);
                     ^
LaunchAPPL/Client/SharedFile.cc:52:9: error: use of undeclared identifier 'out'
        out.write((const char*)p, n);
        ^
LaunchAPPL/Client/SharedFile.cc:69:25: error: expected ';' after expression
            fs::ifstream in(shared_directory / "out_channel");
                        ^
                        ;
LaunchAPPL/Client/SharedFile.cc:69:17: error: no member named 'ifstream' in namespace 'boost::filesystem'
            fs::ifstream in(shared_directory / "out_channel");
            ~~~~^
LaunchAPPL/Client/SharedFile.cc:69:26: error: use of undeclared identifier 'in'
            fs::ifstream in(shared_directory / "out_channel");
                         ^
LaunchAPPL/Client/SharedFile.cc:71:19: error: use of undeclared identifier 'in'
            while(in.read((char*)readBuffer, sizeof(readBuffer)), in.gcount() > 0)
                  ^
LaunchAPPL/Client/SharedFile.cc:71:67: error: use of undeclared identifier 'in'
            while(in.read((char*)readBuffer, sizeof(readBuffer)), in.gcount() > 0)
                                                                  ^
LaunchAPPL/Client/SharedFile.cc:72:43: error: use of undeclared identifier 'in'
                notifyReceive(readBuffer, in.gcount());
                                          ^
10 errors generated.

because:

https://www.boost.org/users/history/version_1_79_0.html

Deprecated: boost/filesystem/string_file.hpp header is deprecated and will be removed in a future release. The header is no longer included by boost/filesystem.hpp by default. Users are advised to implement the functionality themselves or migrate to other implementations.

It builds fine with boost 1.78.

ryandesign avatar Jul 30 '22 09:07 ryandesign