encryptogroup / ABY

ABY - A Framework for Efficient Mixed-protocol Secure Two-party Computation
GNU Lesser General Public License v3.0
463 stars 132 forks source link

Error when building ABY framework #80

Closed Cestlaviez closed 6 years ago

Cestlaviez commented 6 years ago

When I tried to build the ABY framework, these errors occurred.

ABY/src/abycore/sharing/boolsharing.cpp:20:22: fatal error: filesystem: No such file or directory
compilation terminated.
src/abycore/CMakeFiles/aby.dir/build.make:192: recipe for target 'src/abycore/CMakeFiles/aby.dir/sharing/boolsharing.cpp.o' failed
make[2]: *** [src/abycore/CMakeFiles/aby.dir/sharing/boolsharing.cpp.o] Error 1
CMakeFiles/Makefile2:260: recipe for target 'src/abycore/CMakeFiles/aby.dir/all' failed
make[1]: *** [src/abycore/CMakeFiles/aby.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

Then I tried to change filesystem into experimental/filesystem , but it didn't work.

lenerd commented 6 years ago

Hi, if you use the experimental/filesystem header, then you need to use the std::experimental::filesystem namespace as well (iirc). The C++17 filesystem library (non-experimental) should be available with libstd++ 8 or newer (shipped with GCC 8) or libc++ 7 or newer.

Cestlaviez commented 6 years ago

I have used the std::experimental::filesystem, it didn't work. But after I upgraded GCC to version 8, it succeeded. Thanks.

lenerd commented 6 years ago

Ok, I have updated the README that a recent GCC version is required.