installing.rst 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  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_NAMESPACE_ZERO=FULL ..
  17. make
  18. sudo make install
  19. This will enable the following features in 0.4:
  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. # optionally you can also specify a specific version
  36. # e.g. find_package(open62541 1.0.0)
  37. find_package(open62541 REQUIRED COMPONENTS Events FullNamespace)
  38. add_executable(main main.cpp)
  39. target_link_libraries(main open62541::open62541)
  40. A full list of enabled features during build time is stored in the CMake Variable ``open62541_COMPONENTS_ALL``
  41. Prebuilt packages
  42. -----------------
  43. Prebuild binaries
  44. ^^^^^^^^^^^^^^^^^
  45. You can always find prebuild binaries for every release on our `Github Release Page <https://github.com/open62541/open62541/releases>`_.
  46. Nightly single file releases for Linux and Windows of the last 50 commits can be found here: https://open62541.org/releases/
  47. OS Specific packages
  48. ^^^^^^^^^^^^^^^^^^^^
  49. Debian packages can be found in our official PPA:
  50. * Daily Builds (based on master branch): https://launchpad.net/~open62541-team/+archive/ubuntu/daily
  51. * Release Builds (starting with Version 0.4): https://launchpad.net/~open62541-team/+archive/ubuntu/ppa
  52. Install them with:
  53. .. code-block:: bash
  54. sudo add-apt-repository ppa:open62541-team/ppa
  55. sudo apt-get update
  56. sudo apt-get install libopen62541-dev