There are three different types of dependencies between code in your project and other code:

  • A first party dependency is within the same project. For example HelloWorld_Cli could depend on HelloWorld_Std.

  • A second party dependency is to a project where binaries (libraries and executables) are present and also compatible with the current project. Binary compatibility means less time building, but also means that the binaries must have been built with the same compilers and compiler/linker options as you used in the current project.

  • A third party dependency is to a project from public and private repositories. For example HelloWorld_Cli could depend on the command line parsing library Findlib::cmdliner.

The DkSDKRequire module is for you to get DkSDK code that behaves similarly to second party dependencies.


(Advanced) In this version of DkSDK these DkSDK dependencies are not true second party dependencies: DkSDK needs to build the binaries on your machine to ensure binary compatibility. However later versions of DkSDK may introduce the intelligence needed to know when your project can use a prebuilt binary. Your code shouldn't need to change when that happens.


DkSDKRequire_Add( [FFI OCaml] [PRERELEASE] )



Add DkSDK FFI OCaml to your project.


For support issues Diskuv may ask you to add this PRERELEASE flag so you can get emergency fixes. Ordinarily you should not use this flag.