installing.rst 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. .. _installing:
  2. Installing open62541
  3. ====================
  4. Manual installation
  5. -------------------
  6. You can install open62541 using the well known `make install` command.
  7. This allows you to use pre-built libraries and headers for your own project.
  8. To override the default installation directory use ``cmake -DCMAKE_INSTALL_PREFIX=/some/path``.
  9. Based on the SDK Features you selected, as described in :ref:`build_options`, these features will also
  10. be included in the installation. Thus we recommend to enable as many non-experimental features as possible
  11. for the installed binary.
  12. The recommended cmake options for a default installation are:
  13. .. code-block:: bash
  14. git submodule update --init --recursive
  15. mkdir build && cd build
  16. cmake -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DUA_ENABLE_FULL_NS0=ON ..
  17. make
  18. sudo make install
  19. This will enable the following features in 0.3:
  20. * Discovery
  21. * FullNamespace
  22. * Methods
  23. * Subscriptions
  24. The following features are not enabled and can be optionally enabled using the build options as described in :ref:`build_options`:
  25. * Amalgamation
  26. * DiscoveryMulticast
  27. * Encryption
  28. * Multithreading
  29. * Subscriptions
  30. .. important::
  31. We strongly recommend to not use ``UA_ENABLE_AMALGAMATION=ON`` for your installation. This will only generate a single ``open62541.h`` header file instead of the single header files.
  32. We encourage our users to use the non-amalgamated version to reduce the header size and simplify dependency management.
  33. In your own CMake project you can then include the open62541 library using:
  34. .. code-block:: cmake
  35. find_package(open62541 0.3.0 REQUIRED COMPONENTS FullNamespace DiscoveryMulticast)
  36. add_executable(main main.cpp)
  37. target_link_libraries(main open62541)
  38. A full list of enabled features during build time is stored in the CMake Variable ``open62541_COMPONENTS_ALL``
  39. Prebuilt packages
  40. -----------------
  41. Prebuild binaries
  42. ^^^^^^^^^^^^^^^^^
  43. You can always find prebuild binaries for every release on our `Github Release Page <https://github.com/open62541/open62541/releases>`_.
  44. Nightly single file releases for Linux and Windows of the last 50 commits can be found here: https://open62541.org/releases/
  45. OS Specific packages
  46. ^^^^^^^^^^^^^^^^^^^^
  47. This is currently work in progress and we will provide prebuilt .deb packages soon.