Instal zeromq di windows 10

Bangun dan tautkan statis ZeroMQ di Windows

Oleh Joshua Burkholder 25 Mei 2018 C++, Vcpkg, ZeroMQ

ZeroMQ ( http. //zeromq. org dan https. //github. com/zeromq/libzmq ) adalah pustaka yang memungkinkan kode untuk berkomunikasi antara utas, proses, atau komputer hanya dalam beberapa baris dan menggunakan pola sederhana yang dapat disusun (seperti terbitkan-berlangganan dan siarkan)

Dalam posting ini, kami akan membangun ZeroMQ di Windows sebagai pustaka statis (untuk memanfaatkan "pengecualian penautan statis" dalam lisensinya. http. //zeromq. org/daerah. license ) dan kemudian memanggang pustaka statis itu menjadi Windows yang dapat dieksekusi sederhana. Ada banyak postingan di web yang menunjukkan cara melakukan ini… ini satu lagi

Langkah

  1. https. //github. com/Microsoft/vcpkg

Langkah 1. Bangun Vcpkg ( https. //github. com/Microsoft/vcpkg )

Catatan

  • Vcpkg tidak mengelola binari bawaan (seperti NuGet atau Homebrew)
  • Vcpkg mengelola kode sumber dan membuat kode sumber itu di Windows, Linux, dan MacOS
  • Pada saat posting ini, dokumentasi untuk Vcpkg ada di sini
    https. //dokumen. microsoft. com/en-us/cpp/vcpkg

Di prompt perintah pengembang Visual Studio 2017 (dengan Git diinstal), jalankan perintah berikut

cd /d C:\
mkdir Repos
cd /d C:\Repos\
git clone https://github.com/Microsoft/vcpkg
cd /d C:\Repos\vcpkg\
bootstrap-vcpkg.bat

… sekarang, C. \Repos\vcpkg\vcpkg. exe harus ada

Langkah 2. Gunakan vcpkg untuk membangun ZeroMQ ( vcpkg integrate install8 )

Catatan

  • Dengan sengaja … untuk membuat segalanya lebih eksplisit dan lebih sulit, kami tidak menjalankan perintah berikut
vcpkg integrate install
_

Sekarang C. \Repos\vcpkg\vcpkg. exe ada, jalankan perintah berikut

cd /d C:\Repos\vcpkg\
vcpkg install zeromq:x64-windows-static

… sekarang, kita harus memiliki yang berikut ini

  • Folder kode sumber ZeroMQ. C. \Repos\vcpkg\buildtrees\zeromq\src
  • Folder build debug ZeroMQ. C. \Repos\vcpkg\buildtrees\zeromq\x64-windows-static-dbg
  • Folder build rilis ZeroMQ. C. \Repos\vcpkg\buildtrees\zeromq\x64-windows-static-rel
  • folder target ZeroMQ. C. \Repos\vcpkg\packages\zeromq_x64-windows-statis
  • Target ZeroMQ menyertakan folder. C. \Repos\vcpkg\packages\zeromq_x64-windows-static\include
  • Folder target debug lib ZeroMQ. C. \Repos\vcpkg\packages\zeromq_x64-windows-static\debug\lib
    • Pada saat posting ini, perpustakaan statis dibangun. libzmq-mt-sgd-4_3_1. lib
    • Catatan. mt dan d di libzmq-mt-sgd-4_3_1. lib berarti multi-threaded debug (membutuhkan debug yang dapat dieksekusi pada langkah selanjutnya untuk dikompilasi menggunakan /MTd)
  • Folder lib rilis target ZeroMQ. C. \Repos\vcpkg\packages\zeromq_x64-windows-static\lib
    • Pada saat posting ini, perpustakaan statis dibangun. libzmq-mt-s-4_3_1. lib
    • Catatan. Mt di libzmq-mt-s-4_3_1. lib berarti multi-utas (membutuhkan rilis yang dapat dieksekusi pada langkah selanjutnya untuk dikompilasi menggunakan /MT)

Langkah 3. Membangun executable yang secara statis menghubungkan ZeroMQ

Di Visual Studio 2017, lakukan hal berikut

  • File / Baru / Proyek…
    Instal zeromq di windows 10

     
    Instal zeromq di windows 10

     
  • Tambah / Barang Baru…
    Instal zeromq di windows 10

     
  • Rekatkan kode berikut ke Sumber. cpp.
    #include <zmq.h>
    #include <iostream>
     
    int main()
    {
    	int major = 0;
    	int minor = 0;
    	int patch = 0;
    	zmq_version( &major, &minor, &patch );
    	std::wcout << "Current 0MQ version is " << major << '.' << minor << '.' << patch << '\n';
    }
    _
  • Ubah Platform Solusi ke x64
    Instal zeromq di windows 10

     
  • Pilih proyek "Versi ZeroMQ", pilih Proyek / Properti, ubah Konfigurasi menjadi "Semua Konfigurasi", pilih Properti Konfigurasi / C/C++ / Umum, lalu tambahkan folder sertakan berikut ke "Direktori Sertakan Tambahan"
    C. \Repos\vcpkg\packages\zeromq_x64-windows-static\include
    Instal zeromq di windows 10

     
    Instal zeromq di windows 10

     
  • Selanjutnya, untuk “All Configurations“, pilih Configuration Properties / C/C++ / Preprocessor, lalu tambahkan definisi preprocessor berikut ke “Preprocessor Definitions“
    ZMQ_STATIC
    Instal zeromq di windows 10

     
  • Selanjutnya, ubah Konfigurasi menjadi "Debug", pilih Properti Konfigurasi / C/C++ / Pembuatan Kode, lalu ubah "Runtime Library" menjadi "Multi-threaded Debug (/MTd)"
    Instal zeromq di windows 10

     
    Instal zeromq di windows 10

     
  • Selanjutnya, ubah Konfigurasi menjadi “Release“, pilih Configuration Properties / C/C++ / Code Generation, lalu ubah “Runtime Library” menjadi “Multi-threaded (/MT)“
    Instal zeromq di windows 10

     
    Instal zeromq di windows 10

     
  • Selanjutnya, kami akan menambahkan perpustakaan statis .. dan sementara kami dapat memecahnya menjadi folder lib terpisah dan entri file lib, saya hanya akan menggunakan jalur file lengkap setiap lib di sini
  • Pertama, alihkan Konfigurasi kembali ke "Debug", pilih Properti Konfigurasi / Penghubung / Input, lalu tambahkan entri berikut ke "Ketergantungan Tambahan"
    C. \Repos\vcpkg\packages\zeromq_x64-windows-static\debug\lib\libzmq-mt-sgd-4_3_1. lib
    Ws2_32. lib
    Iphlpapi. lib
    Instal zeromq di windows 10

     
    Instal zeromq di windows 10

     
  • Kedua, alihkan Konfigurasi kembali ke "Rilis", pilih Properti Konfigurasi / Tautan / Input, lalu tambahkan entri berikut ke "Ketergantungan Tambahan"
    C. \Repos\vcpkg\packages\zeromq_x64-windows-static\lib\libzmq-mt-s-4_3_1. lib
    Ws2_32. lib
    Iphlpapi. lib
    Instal zeromq di windows 10

     
    Instal zeromq di windows 10

     
  • Membangun / Membangun Kembali Solusi
    Instal zeromq di windows 10

     
  • Debug / Mulai Tanpa Debugging
    Instal zeromq di windows 10

     

    Instal zeromq di windows 10

     

Catatan

  • Saat membangun untuk Debug, jendela Output saya berbunyi.
    1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Debug x64 ------
    1>Source.cpp
    1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Debug\ZeroMQ-Version.exe
    ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
  • Saat membangun untuk Rilis, jendela Keluaran saya berbunyi.
    1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Release x64 ------
    1>Source.cpp
    1>Generating code
    1>All 3752 functions were compiled because no usable IPDB/IOBJ from previous compilation was found.
    1>Finished generating code
    1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Release\ZeroMQ-Version.exe
    ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
    _

Semoga ini membantu

Ditandai. C++, Vcpkg, ZeroMQ

  • Awal yang Baru.
  • Pola Antarmuka Template C++ (TIP)

17 pemikiran tentang “ Bangun dan tautkan statis ZeroMQ di Windows ”

  1. Joshua Burkholder

    ZeroMQ memiliki tata letak file MSBuild terbaik dari proyek apa pun yang pernah saya lihat hingga saat ini. Saat Anda mengkloning ZeroMQ, file MSBuild ini terletak di jalur

    cd /d C:\Repos\vcpkg\
    vcpkg install zeromq:x64-windows-static
    0. Untuk Visual Studio 2017, kombinasi file
    cd /d C:\Repos\vcpkg\
    vcpkg install zeromq:x64-windows-static
    1 di bawah jalur
    cd /d C:\Repos\vcpkg\
    vcpkg install zeromq:x64-windows-static
    2 dan file di bawah jalur
    cd /d C:\Repos\vcpkg\
    vcpkg install zeromq:x64-windows-static
    3 berisi keajaiban. Sayangnya, seperti yang ditunjukkan jalur, file MSBuild ini saat ini tidak digunakan lagi. Inilah salah satu alasan mengapa instruksi saya di atas menggunakan Vcpkg alih-alih file MSBuild milik ZeroMQ. Alasan lain adalah bahwa Vcpkg saat ini merupakan teknologi penting untuk pengembangan aplikasi cepat di C++ … khususnya. untuk proyek berbasis MSBuild. Pastikan Anda melihat kemampuan Vcpkg untuk mengekspor
    cd /d C:\Repos\vcpkg\
    vcpkg install zeromq:x64-windows-static
    4/
    cd /d C:\Repos\vcpkg\
    vcpkg install zeromq:x64-windows-static
    5,
    cd /d C:\Repos\vcpkg\
    vcpkg install zeromq:x64-windows-static
    6,
    cd /d C:\Repos\vcpkg\
    vcpkg install zeromq:x64-windows-static
    7, dan
    cd /d C:\Repos\vcpkg\
    vcpkg install zeromq:x64-windows-static
    8 ke paket NuGet yang kemudian dapat Anda impor ke proyek C++ MSBuild dan sistem build berbasis MSBuild Anda (seperti Azure DevOps/VSTS/VSO)

    vcpkg export package1:x64-windows .. packageN:x64-windows --nuget

    … atau, dalam kasus posting ini

    vcpkg export zeromq:x64-windows-static --nuget

    … dan menambahkan yang berikut ke file

    cd /d C:\Repos\vcpkg\
    vcpkg install zeromq:x64-windows-static
    _9 tempat Anda menginstal paket NuGet ini (karena Anda telah mengekspor paket
    #include <zmq.h>
    #include <iostream>
     
    int main()
    {
    	int major = 0;
    	int minor = 0;
    	int patch = 0;
    	zmq_version( &major, &minor, &patch );
    	std::wcout << "Current 0MQ version is " << major << '.' << minor << '.' << patch << '\n';
    }
    0)

    <PropertyGroup Label="Globals">
      <!-- Keep the stuff that was already in your "Globals" PropertyGroup here and then add the following: -->
      <VcpkgTriplet Condition="'$(Platform)'=='Win32'">x86-windows-static</VcpkgTriplet>
      <VcpkgTriplet Condition="'$(Platform)'=='x64'">x64-windows-static</VcpkgTriplet>
    </PropertyGroup>

    … Catatan. Anda masih perlu menambahkan definisi

    #include <zmq.h>
    #include <iostream>
     
    int main()
    {
    	int major = 0;
    	int minor = 0;
    	int patch = 0;
    	zmq_version( &major, &minor, &patch );
    	std::wcout << "Current 0MQ version is " << major << '.' << minor << '.' << patch << '\n';
    }
    _1, menautkan statis runtime C++, dan menambahkan pustaka
    #include <zmq.h>
    #include <iostream>
     
    int main()
    {
    	int major = 0;
    	int minor = 0;
    	int patch = 0;
    	zmq_version( &major, &minor, &patch );
    	std::wcout << "Current 0MQ version is " << major << '.' << minor << '.' << patch << '\n';
    }
    2 dan
    #include <zmq.h>
    #include <iostream>
     
    int main()
    {
    	int major = 0;
    	int minor = 0;
    	int patch = 0;
    	zmq_version( &major, &minor, &patch );
    	std::wcout << "Current 0MQ version is " << major << '.' << minor << '.' << patch << '\n';
    }
    3 ke proyek C++ Anda, tetapi Anda tidak perlu menambahkan jalur penyertaan ZeroMQ atau pustaka ZeroMQ (sebagai file
    #include <zmq.h>
    #include <iostream>
     
    int main()
    {
    	int major = 0;
    	int minor = 0;
    	int patch = 0;
    	zmq_version( &major, &minor, &patch );
    	std::wcout << "Current 0MQ version is " << major << '.' << minor << '.' << patch << '\n';
    }
    4
    Anda dapat membaca lebih lanjut tentang
    #include <zmq.h>
    #include <iostream>
     
    int main()
    {
    	int major = 0;
    	int minor = 0;
    	int patch = 0;
    	zmq_version( &major, &minor, &patch );
    	std::wcout << "Current 0MQ version is " << major << '.' << minor << '.' << patch << '\n';
    }
    _5 di sini

    https://blogs.msdn.microsoft.com/vcblog/2017/05/03/vcpkg-introducing-export-command/

    … dan di sini

    vcpkg integrate install
    _0

  2. Cosma Cristian-Sebastian

    Hai, yang di sana,
    contoh ini yang Anda tunjukkan kepada kami adalah untuk bahasa c…
    apa yang harus saya lakukan untuk mendapatkan pustaka c++ yang benar?
    Terima kasih sebelumnya

    Salam Terbaik Cris

    1. Joshua Burkholder Penulis postingan

      Untuk alasan portabilitas, antarmuka utama untuk ZeroMQ adalah antarmuka C-nya. Berdasarkan antarmuka C tersebut, ada binding untuk berbagai bahasa… termasuk C++. Perhatikan bahwa pengikatan dapat mengikat versi antarmuka C sebelumnya, belum tentu versi antarmuka C saat ini. Karena sebagian besar C adalah subset dari C++, pengikatan C++ sangat sepele … jadi beberapa orang hanya membuat pembungkus RAII mereka sendiri di sekitar antarmuka C tersebut;

      • cppzmq (https. //github. com/zeromq/cppzmq )
      • Tingkatkan ASIO + ZeroMQ. azmq (https. //github. com/zeromq/azmq )
      • Pembungkus ZeroMQ Facebook. fbzmq (https. //github. com/facebook/fbzmq )
      • czmqpp (https. //github. com/zeromq/czmqpp )
      • CpperoMQ (https. //github. com/jship/CpperoMQ )

      Selain port ZeroMQ, Vcpkg berisi port untuk dua binding C++ pertama yang disebutkan di atas

      • cppzmq.
        #include <zmq.h>
        #include <iostream>
         
        int main()
        {
        	int major = 0;
        	int minor = 0;
        	int patch = 0;
        	zmq_version( &major, &minor, &patch );
        	std::wcout << "Current 0MQ version is " << major << '.' << minor << '.' << patch << '\n';
        }
        _6
      • azmq.
        #include <zmq.h>
        #include <iostream>
         
        int main()
        {
        	int major = 0;
        	int minor = 0;
        	int patch = 0;
        	zmq_version( &major, &minor, &patch );
        	std::wcout << "Current 0MQ version is " << major << '.' << minor << '.' << patch << '\n';
        }
        _7

  3. Surya Karmakar

    Apakah saya perlu melakukan langkah lain untuk digunakan dalam file sumber saya dari proyek yang berbeda? . Juga dapatkah saya menggunakan ini pada kompiler C++ lain, seperti devC++ atau codeBlocks?

    1. Joshua Burkholder Penulis postingan

      Output dari Langkah 2 di atas adalah file Header (zmq. h) dan beberapa Perpustakaan Statis (libzmq-mt-sgd-4_3_1. lib untuk Debug dan libzmq-mt-s-4_3_1. lib untuk Rilis). Perpustakaan Statis ZeroMQ ini bergantung pada beberapa Perpustakaan Impor Windows yang ditemukan di Windows SDK (seperti Ws2_32. lib, Iphlpapi. lib, dan beberapa Perpustakaan Impor umum lainnya). Header, Perpustakaan Statis, dan Perpustakaan Impor adalah semua yang Anda perlukan untuk menggunakan ZeroMQ di proyek lain di Windows. Langkah 3 di atas adalah contoh sederhananya. Karena kita menggunakan Static Library, kita harus menggunakan versi yang sama dari compiler/linker toolchain untuk Langkah 2 dan 3

      Terkadang hal-hal menjadi lebih jelas jika kita memiliki contoh lain untuk dibandingkan dan dikontraskan. Dalam nada itu, inilah salah satu dari beberapa cara berbeda untuk membuat dan menautkan statis ZeroMQ di Windows menggunakan MinGW-w64 (rangkaian alat kompiler/penghubung GCC di Windows) dan CMake

      1. Unduh dan instal MinGW-w64. Catatan. Saya menggunakan versi x86_64-8. 1. 0-posix-seh-rt_v6-rev0
      2. Unduh dan instal CMake. Catatan. Saya menggunakan versi 3. 13. 2 melalui cmake-3. 13. 2-win64-x64. msi
      3. Unduh rilis terbaru libzmq. Catatan. Saya menggunakan libzmq 4. 3. 0
      4. Dari menu Mulai, pilih proyek MinGW-W64 / Terminal Jalankan untuk meluncurkan prompt perintah dengan semua set variabel lingkungan MinGW-w64
      5. Dari MinGW-w64 Run terminal command prompt, jalankan
        #include <zmq.h>
        #include <iostream>
         
        int main()
        {
        	int major = 0;
        	int minor = 0;
        	int patch = 0;
        	zmq_version( &major, &minor, &patch );
        	std::wcout << "Current 0MQ version is " << major << '.' << minor << '.' << patch << '\n';
        }
        8 untuk meluncurkan CMake GUI dengan akses ke variabel lingkungan MinGW-w64 yang sama
      6. Buka zip kode sumber libzmq dan buat folder build. Catatan. Saya membuka zip kode sumber libzmq saya ke
        #include <zmq.h>
        #include <iostream>
         
        int main()
        {
        	int major = 0;
        	int minor = 0;
        	int patch = 0;
        	zmq_version( &major, &minor, &patch );
        	std::wcout << "Current 0MQ version is " << major << '.' << minor << '.' << patch << '\n';
        }
        9 dan membuat folder build
        1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Debug x64 ------
        1>Source.cpp
        1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Debug\ZeroMQ-Version.exe
        ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
        0
      7. Di GUI CMake, masukkan folder kode sumber, masukkan folder build, tekan Configure, dan tentukan generator berikut untuk proyek ini.
        1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Debug x64 ------
        1>Source.cpp
        1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Debug\ZeroMQ-Version.exe
        ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
        1 … memastikan bahwa tombol radio Use default native compilers dipilih … lalu tekan Finish
      8. Setelah konfigurasi awal selesai dan sorotan-merah-menunjukkan-perubahan-baru yang biasa ditampilkan, tekan Configure lagi untuk menyimpan entri default dan kemudian tekan Generate
      9. Kembali ke prompt perintah terminal MinGW-w64 Run, jalankan perintah berikut.
        vcpkg integrate install
        _1

        … untuk memulai build ZeroMQ

      10. Setelah build selesai, cari file berikut yang menarik
        • Tajuk.
          1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Debug x64 ------
          1>Source.cpp
          1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Debug\ZeroMQ-Version.exe
          ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
          2
        • Perpustakaan Statis.
          1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Debug x64 ------
          1>Source.cpp
          1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Debug\ZeroMQ-Version.exe
          ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
          _3
      11. Buat folder untuk proyek baru menggunakan bit ZeroMQ yang baru saja kita buat dan salin file
        1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Debug x64 ------
        1>Source.cpp
        1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Debug\ZeroMQ-Version.exe
        ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
        4 dari Langkah 3 di atas ke folder itu. Catatan. Saya membuat folder berikut.
        1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Debug x64 ------
        1>Source.cpp
        1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Debug\ZeroMQ-Version.exe
        ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
        5 mengandung
        1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Debug x64 ------
        1>Source.cpp
        1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Debug\ZeroMQ-Version.exe
        ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
        6
      12. Di prompt perintah terminal MinGW-w64 Run, jalankan yang berikut ini.
        vcpkg integrate install
        _2

        … untuk membangun dan menjalankan

        1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Debug x64 ------
        1>Source.cpp
        1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Debug\ZeroMQ-Version.exe
        ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
        _7 yang dapat dieksekusi

      Catatan. Berdasarkan pilihan yang saya sebutkan di atas, output saya adalah

      vcpkg integrate install
      _3

      Dev-C++ dan Kode. Blok keduanya adalah IDE, bukan toolchain compiler/linker. IDE apa pun yang membungkus rantai alat kompiler/tautan dengan akses ke Perpustakaan Impor dari Windows SDK akan baik untuk digunakan. Jika memori berfungsi, baik Dev-C++ dan Code. Blok membungkus rantai alat MinGW .. jadi jika itu masih terjadi, Anda harus dapat menerjemahkan langkah-langkah MinGW-w64 di atas ke masing-masing GUI-isme dari IDE tersebut

      Semoga ini membantu

      1. andrew

        Terima kasih atas panduan langkah demi langkah yang luar biasa. Tip. menghindari 4. 3. 2 rilis karena https. //github. com/zeromq/libzmq/issues/3586

  4. Alfred Handke

    Hai, yang di sana,
    Joshua, terima kasih atas panduan langkah demi langkah yang bagus. Saya punya tiga pertanyaan lagi
    1) Apakah ZeroMQ berjalan stabil di Windows 10?
    2) Apakah akan didukung di masa mendatang?
    3) Apakah ada panduan langkah demi langkah untuk membangun dan menginstal ZeroMQ sebagai pustaka dinamis (dengan visual studio 2017)?
    Terima kasih sebelumnya

    salam Hormat
    Alfred

    1. Joshua Burkholder Penulis postingan

      Untuk 1) ZeroMQ berjalan dengan baik di Windows 10 dan Windows Server 2016 ketika saya menulis instruksi di atas. Saya akan memeriksa masalah terbaru ( https. //github. com/zeromq/libzmq/issues ) dan Komunitas ZeroMQ ( https. //zeromq. org/our-community/ ) untuk memastikan bahwa build saat ini tetap bagus untuk Windows 10, Windows Server 2016, dan Windows Server 2019. Menurut Platform yang Didukung ( ), ZeroMQ hanya dibuat dan diuji di Windows Server 2016 untuk x86… jadi Anda harus membuat dan menjalankan pengujian di lingkungan Integrasi Berkelanjutan yang terpisah di Windows 10 untuk x64

      Untuk 2) ZeroMQ telah ada selama sekitar satu dekade … dan telah digunakan oleh ribuan proyek dalam berbagai bahasa pemrograman … jadi tidak akan hilang dalam waktu dekat; . //zeromq. org/komunitas-kita/ )

      Untuk 3) Anda hanya perlu menghapus bagian "-statis" dari "triplet" Vcpkg untuk membangun ZeroMQ sebagai pustaka tautan dinamis .. lalu membuat proyek C++ biasa yang menggunakan pustaka tautan dinamis tersebut

      1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Debug x64 ------
      1>Source.cpp
      1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Debug\ZeroMQ-Version.exe
      ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
      _8
      … lalu Rilis pustaka tautan dinamis, basis data program, dan pustaka impor ada di sini
      1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Debug x64 ------
      1>Source.cpp
      1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Debug\ZeroMQ-Version.exe
      ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
      _9
      .. pustaka tautan dinamis Debug, basis data program, dan pustaka impor ada di sini
      1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Release x64 ------
      1>Source.cpp
      1>Generating code
      1>All 3752 functions were compiled because no usable IPDB/IOBJ from previous compilation was found.
      1>Finished generating code
      1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Release\ZeroMQ-Version.exe
      ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
      _0
      … dan tajuknya ada di sini
      1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Release x64 ------
      1>Source.cpp
      1>Generating code
      1>All 3752 functions were compiled because no usable IPDB/IOBJ from previous compilation was found.
      1>Finished generating code
      1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Release\ZeroMQ-Version.exe
      ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
      _1
      … seperti
      1>------ Rebuild All started: Project: ZeroMQ-Version, Configuration: Release x64 ------
      1>Source.cpp
      1>Generating code
      1>All 3752 functions were compiled because no usable IPDB/IOBJ from previous compilation was found.
      1>Finished generating code
      1>ZeroMQ-Version.vcxproj -> C:\Repos\ZeroMQ-Version\x64\Release\ZeroMQ-Version.exe
      ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
      _2

      Catatan. Saya lebih suka menggunakan “E. \Temp\vcpkg\packages\zeromq_x64-windows” di folder “E. \Temp\vcpkg\installed\x64-windows” … tetapi keduanya akan berfungsi

      Untuk tujuan informasi, berikut tautan ke port ZeroMQ untuk Vcpkg
      https. //github. com/microsoft/vcpkg/blob/master/ports/zeromq/CONTROL

      Semoga ini membantu,
      Joshua

  5. EVERETT C WILLIAMS

    Ini cukup banyak memberi saya jalan ke depan setelah beberapa hari mencoba membuat zeroMQ berfungsi. Saya menggunakan Visual Studio 2019, Windows 10 (sayangnya) dan zeroMQ 4. 3. 3. dan dapat menggunakan panduan ini untuk mengatur soket secara lokal. Sekali lagi, terima kasih banyak telah berbagi

  6. Zip Zit

    Saya setuju dengan Everett Williams. Saya benar-benar bisa mendapatkan VisualStudio 2019, Win10 dan zeroMQ / cppzmq untuk bekerja sepenuhnya dengan pekerjaan yang dibagikan di sini. Untuk orang lain yang menggunakan cppzmq, Anda cukup menggabungkan keduanya (zmq dan cppzmq) dan menggunakan perpustakaan zmq. Saya benar-benar ingin memverifikasi bahwa build VCPkg sudah utuh

    Sayangnya bagi saya, saya berharap untuk mendorong ke mesin Unreal Game (UE4), dan di sana, alat konfigurasi halaman properti proyek pada dasarnya dikunci. Saya dapat menambahkan penyertaan dan pustaka secara manual melalui plugin pihak ketiga, tetapi tidak (sejauh ini) mengubah pengaturan C++/Pembuatan Kode/Perpustakaan Runtime. Saya masih mencoba memahami cara kerja sistem itu

    Joshua, saya akan mengatakan bahwa posting ini sangat berharga untuk membantu saya memahami seperti apa proses yang sukses di Windows. Dan ini menegaskan bahwa proses build VCPKG sudah benar. Sekali lagi, terima kasih banyak atas postingannya…

  7. Jaehyung Choi

    Saya menggunakan Windows 10 dan Visual Studio 2019. Saya mengikuti panduan langkah demi langkah Anda, tetapi pada akhirnya, build dan debug gagal. Saya mendapatkan pesan kesalahan yang mengatakan Tidak dapat membuka file sumber “zmq. h"
    Ada ide tentang cara memperbaikinya?

    1. Joshua Burkholder Penulis postingan

      Untuk mengatasi ini, saya akan meletakkan yang berikut dalam skrip batch dan mengeksekusi (lihat info tambahan di bawah)

      vcpkg integrate install
      _4

      Jika skrip batch ini berhasil dijalankan, Anda mungkin baru saja membuat kesalahan ketik di Visual Studio saat mengerjakan postingan

      Catatan. Skrip batch ini pada dasarnya melakukan hal yang sama seperti yang dilakukan oleh posting ini … kecuali menggunakan versi ZeroMQ saat ini dari Vcpkg. Saat saya menulis balasan ini, versi ZeroMQ dari Vcpkg saat ini adalah versi 4. 3. 4. Karena pustaka statis ZeroMQ yang dibangun oleh Vcpkg berisi info nomor versi ini dalam nama filenya, Anda harus mengedit skrip di atas saat Vcpkg memutakhirkan ke versi ZeroMQ yang lebih tinggi. Terakhir, skrip batch ini tidak berisi penanganan kesalahan apa pun… jika satu perintah gagal, skrip ini akan berlanjut ke perintah berikutnya… jadi tambahkan penanganan kesalahan yang sesuai untuk lingkungan Anda

      Ketika saya menyalin teks di atas ke dalam skrip batch bernama “build-zeromq-on-windows. bat” dan menjalankan skrip itu di Windows 10 dengan Visual Studio 2019 (versi 16. 10. 0 ), inilah hasilnya

      vcpkg integrate install
      _5

      … jadi konfigurasi Debug dan Rilis berfungsi untuk x86. Keduanya dicetak “Versi 0MQ saat ini adalah 4. 3. 4”

      Bagaimana cara menginstal ZeroMQ di Windows?

      Instal ZeroMQ (zmq) di Windows # .
      Ketik CMD di bilah pencarian dan buka aplikasi Command Prompt
      Ketik pip install pyzmq dan tekan Enter

      Apakah ZeroMQ masih digunakan?

      zeromq masih sangat banyak digunakan secara luas. nanomsg tidak memiliki dokumentasi dan dukungan komunitas sebanyak zeromq

      Bagaimana cara mengatur ZMQ?

      Untuk menggunakan fitur keamanan ZMQ4 instal libsodium dan libzmq –dengan-libsodium seperti yang ditunjukkan di bawah sebelum ZMQPP. .
      Bangun, periksa, dan instal libsodium. .
      Build, periksa, dan instal versi terbaru ZeroMQ. .
      Sekarang instal ZMQPP

      Apa versi terbaru dari ZeroMQ?

      0MQ versi 4. 3. .
      Memperbaiki #4060 - stack overflow pada Windows x64
      Memperbaiki #4051 - berbagai kesalahan kompilasi pada Windows ARM 32bit
      Memperbaiki #4043 - berbagai peringatan kompilasi dengan XCode
      Memperbaiki #4038 - mengembalikan nilai zmq_ctx_get berubah secara tidak sengaja