Breep icon indicating copy to clipboard operation
Breep copied to clipboard

Unknown endianness (if endianness is known, please manually define BOOST_LITTLE_ENDIAN or BOOST_BIG_ENDIAN).

Open raphael10-collab opened this issue 1 year ago • 0 comments

raphy@raohy:~$ git clone https://github.com/Organic-Code/Breep.git Cloning into 'Breep'... remote: Enumerating objects: 1511, done. remote: Total 1511 (delta 0), reused 0 (delta 0), pack-reused 1511 (from 1) Receiving objects: 100% (1511/1511), 297.38 KiB | 3.38 MiB/s, done. Resolving deltas: 100% (848/848), done.

raphy@raohy:~$ cd Breep/

raphy@raohy:~/Breep$ cmake -B builddir CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): Compatibility with CMake < 3.5 will be removed from a future version of CMake.

Update the VERSION argument value or use a ... suffix to tell CMake that the project does not need compatibility with older versions.

-- The C compiler identification is GNU 12.3.0 -- The CXX compiler identification is GNU 14.2.0 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/cc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Found Boost: /lib/x86_64-linux-gnu/cmake/Boost-1.83.0/BoostConfig.cmake (found suitable version "1.83.0", minimum required is "1.55") found components: system -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Configuring done (0.3s) -- Generating done (0.0s) -- Build files have been written to: /home/raphy/Breep/builddir raphy@raohy:~/Breep$ raphy@raohy:~/Breep$ cmake --build builddir/ [ 25%] Building CXX object CMakeFiles/chat.dir/examples/chat/main.cpp.o In file included from /home/raphy/Breep/include/breep/network/detail/utils.hpp:159, from /home/raphy/Breep/include/breep/network/basic_network.hpp:28, from /home/raphy/Breep/include/breep/network/tcp.hpp:24, from /home/raphy/Breep/examples/chat/main.cpp:23: /home/raphy/Breep/include/breep/network/detail/impl/utils.tcc:13:10: fatal error: boost/detail/endian.hpp: No such file or directory 13 | #include <boost/detail/endian.hpp> | ^~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/chat.dir/build.make:76: CMakeFiles/chat.dir/examples/chat/main.cpp.o] Error 1 gmake[1]: *** [CMakeFiles/Makefile2:85: CMakeFiles/chat.dir/all] Error 2 gmake: *** [Makefile:91: all] Error 2 raphy@raohy:~/Breep$

Searching I've found this info : https://github.com/boostorg/endian/issues/45#issuecomment-664760174 :

The use of BOOST_ENDIAN and BOOST_BYTE_ORDER is deprecated. Please include <boost/predef/other/endian.h> and use BOOST_ENDIAN_BYTE instead

I've then substituted in ./include/breep/network/detail/impl/utils.tcc this line

#include <boost/detail/endian.hpp>

with :

//#include <boost/detail/endian.hpp>
#include <boost/predef/other/endian.h>


raphy@raohy:~/Breep/include$ grep --recursive "BOOST_*_ENDIAN" *
raphy@raohy:~/Breep/include$ grep --recursive "BOOST_BYTE_ORDER" *

But I get this error:

raphy@raohy:~/Breep$ cmake --build builddir/
[ 25%] Building CXX object CMakeFiles/chat.dir/examples/chat/main.cpp.o
In file included from /home/raphy/Breep/include/breep/network/detail/utils.hpp:159,
                 from /home/raphy/Breep/include/breep/network/basic_network.hpp:28,
                 from /home/raphy/Breep/include/breep/network/tcp.hpp:24,
                 from /home/raphy/Breep/examples/chat/main.cpp:23:
/home/raphy/Breep/include/breep/network/detail/impl/utils.tcc:56:2: error: #error "Unknown endianness (if endianness is known, please manually define BOOST_LITTLE_ENDIAN or BOOST_BIG_ENDIAN)."
   56 | #error "Unknown endianness (if endianness is known, please manually define BOOST_LITTLE_ENDIAN or BOOST_BIG_ENDIAN)."
      |  ^~~~~
/home/raphy/Breep/include/breep/network/detail/impl/utils.tcc:57:2: error: #error "Middle endian is not supported."
   57 | #error "Middle endian is not supported."
      |  ^~~~~
In file included from /usr/include/boost/system/detail/requires_cxx11.hpp:9,
                 from /usr/include/boost/system/detail/config.hpp:11,
                 from /usr/include/boost/system/detail/error_category.hpp:13,
                 from /usr/include/boost/system/detail/error_code.hpp:14,
                 from /usr/include/boost/system/error_code.hpp:13,
                 from /usr/include/boost/asio/detail/throw_error.hpp:20,
                 from /usr/include/boost/asio/detail/impl/posix_event.ipp:23,
                 from /usr/include/boost/asio/detail/posix_event.hpp:172,
                 from /usr/include/boost/asio/detail/event.hpp:25,
                 from /usr/include/boost/asio/execution/blocking_adaptation.hpp:19,
                 from /usr/include/boost/asio/execution.hpp:22,
                 from /usr/include/boost/asio/any_completion_executor.hpp:22,
                 from /usr/include/boost/asio.hpp:20,
                 from /home/raphy/Breep/include/breep/network/basic_peer.hpp:21,
                 from /home/raphy/Breep/include/breep/network/tcp.hpp:23:
/usr/include/boost/bind.hpp:36:1: note: ‘#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.’
   36 | BOOST_PRAGMA_MESSAGE(
      | ^~~~~~~~~~~~~~~~~~~~
gmake[2]: *** [CMakeFiles/chat.dir/build.make:76: CMakeFiles/chat.dir/examples/chat/main.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:85: CMakeFiles/chat.dir/all] Error 2
gmake: *** [Makefile:91: all] Error 2
raphy@raohy:~/Breep$ 

OS: Ubuntu 24.04 gcc --version : gcc (Ubuntu 14.2.0-4ubuntu2~24.04) 14.2.0

raphael10-collab avatar Dec 12 '24 19:12 raphael10-collab