On 02-11-2020 21:05, Luca Boccassi wrote:
On Mon, 2 Nov 2020 at 19:23, Arnaud Loonstra <[email protected]> wrote:

Just a quick question. Would one need to define CZMQ_BUILD_DRAFT_API in
their own project in order to use the DRAFT methods?

For example using CMake I build the libs like this (paste from appveyor):
    - cmd: |
        cd "%LIBZMQ_BUILDDIR%"
        cmake .. -DBUILD_STATIC=OFF -DBUILD_SHARED=ON
-DZMQ_BUILD_TESTS=OFF -DCMAKE_INSTALL_PREFIX="%INSTALL_PREFIX%"
        cmake --build . --config %Configuration% --target install
    - cmd: |
        cd "%CZMQ_BUILDDIR%"
        cmake .. -DCZMQ_BUILD_STATIC=OFF -DCZMQ_BUILD_SHARED=ON
-DCMAKE_PREFIX_PATH="C:\tmp\ci_build" -DCMAKE_INSTALL_PRE
FIX="%INSTALL_PREFIX%"
        cmake --build . --config %Configuration% --target install

Draft methods are enabled by default. But when using a draft method I
get unresolved external symbols (Windows)

This goes away when doing #define CZMQ_BUILD_DRAFT_API before including
czmq.h.

However I'm questioning this as using make on Linux does not show this
and I never have needed to define this.

So feature or bug?

Rg,

Arnaud

Yes - this happens automatically on *nix via pkg-config


Perhaps I could draft a PR to document this better, especially when using cmake. It's nice this handled by pkg-config but this is not used on Windows so you'd then need to set it explicitly (-DCZMQ_BUILD_DRAFT_API)?

Or any better suggestions?

Rg,

Arnaud

_______________________________________________
zeromq-dev mailing list
[email protected]
https://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to