Skip to content

Example doesn't compile (MacOS) #628

Open
@JC3

Description

@JC3

The example program here:

#include <string>
#include <zmq.hpp>
int main()
{
   zmq::context_t ctx;
   zmq::socket_t sock(ctx, zmq::socket_type::push);
   sock.bind("inproc://test");
   const std::string_view m = "Hello, world";
   sock.send(zmq::buffer(m), zmq::send_flags::dontwait);
}

Doesn't seem to compile, due to multiple errors:

g++ -I/opt/homebrew/Cellar/cppzmq/4.10.0/include -I/opt/homebrew/Cellar/zeromq/4.3.5_1/include testprogram.cpp -L/opt/homebrew/Cellar/zeromq/4.3.5_1/lib -lzmq
testprogram.cpp:6:33: error: no member named 'socket_type' in namespace 'zmq'; did you mean 'socket_t'?
   zmq::socket_t sock(ctx, zmq::socket_type::push);
                           ~~~~~^~~~~~~~~~~
                                socket_t
/opt/homebrew/Cellar/cppzmq/4.10.0/include/zmq.hpp:2181:7: note: 'socket_t' declared here
class socket_t : public detail::socket_base
      ^
testprogram.cpp:6:46: error: no member named 'push' in 'zmq::socket_t'
   zmq::socket_t sock(ctx, zmq::socket_type::push);
                           ~~~~~~~~~~~~~~~~~~^
testprogram.cpp:9:35: error: no member named 'send_flags' in namespace 'zmq'
   sock.send(zmq::buffer(m), zmq::send_flags::dontwait);
                             ~~~~~^
testprogram.cpp:9:19: error: no member named 'buffer' in namespace 'zmq'
   sock.send(zmq::buffer(m), zmq::send_flags::dontwait);
             ~~~~~^
4 errors generated.

Platform details:

Platform: MacOS Ventura
Installed via: homebrew
zmq version: 4.3.5 (latest available)
cppzmq version: 4.10.0 (latest available)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions