Coder Social home page Coder Social logo

stdexec version to use? about senders-io HOT 3 CLOSED

vsytch avatar vsytch commented on June 3, 2024
stdexec version to use?

from senders-io.

Comments (3)

maikel avatar maikel commented on June 3, 2024

Indeed. You need to use a specific branch of stdexec that is https://github.com/villevoutilainen/wg21_p2300_std_execution/tree/member-only-customization-points . This branch is an implementation of Villes paper https://wg21.link/p2855

I hoped that the pull request NVIDIA/stdexec#788 would have landed earlier. But it turned out to have a dependency on late customization that Eric currently works on https://wg21.link/p2999

I will try to reflect that in the Readme today

from senders-io.

vsytch avatar vsytch commented on June 3, 2024

Thank you, that worked. One more minor issue I hit is incompatibility with catch2 installed by vcpkg.

The catch.hpp header is installed directly to the include/ folder:

vscode ➜ /workspaces/cxx-init/senders-io (main) $ find ${VCPKG_ROOT} -name "catch.hpp"
/opt/vcpkg-2023.08.09/installed/x64-linux/include/catch.hpp

Just needed to fix the include:

diff --git a/tests/net/test_address.cpp b/tests/net/test_address.cpp
index e44ce0b..32349f3 100644
--- a/tests/net/test_address.cpp
+++ b/tests/net/test_address.cpp
@@ -21,7 +21,7 @@
 #include <vector>
 #include <array>
 
-#include <catch2/catch.hpp>
+#include <catch.hpp>
 
 #include "sio/ip/address.hpp"

And the tests failed to link:

[28/30] Linking CXX executable tests/test_sio
FAILED: tests/test_sio 
...
mold: error: undefined symbol: main
>>> referenced by /lib/x86_64-linux-gnu/Scrt1.o:(.text)
>>>               /lib/x86_64-linux-gnu/Scrt1.o:(_start)
c++: error: linker command failed with exit code 1 (use -v to see invocation)

This required changing the catch2 cmake target:

diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 01b70a2..73297b9 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -40,7 +40,7 @@ add_executable(test_sio
   net/test_socket_handle.cpp
 )
 target_include_directories(test_sio PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
-target_link_libraries(test_sio PRIVATE sio::sio Catch2::Catch2)
+target_link_libraries(test_sio PRIVATE sio::sio Catch2::Catch2WithMain)
 
 include(CTest)
 add_test(NAME test_sio COMMAND test_sio)

from senders-io.

maikel avatar maikel commented on June 3, 2024

I'm probably using a different version of catch2. Thank you for fixing this I will investigate that

from senders-io.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.