The Case for an EiffelStudio F_code Runtime SDK

12 views
Skip to first unread message

Finnian Reilly

unread,
May 31, 2026, 7:03:10 PM (4 days ago) May 31
to Eiffel Users

Why a 4.7 MB redistributable runtime is the missing piece for Eiffel library deployment

Contents

  1. The deployment problem
  2. The solution is already almost there
  3. The precedent from other languages
  4. What xpact needs
  5. The request to Eiffel Software
  6. xpact specifically needs only the base SDK
  7. A tiered SDK approach
  8. Creating the SDK is straightforward
  9. EiffelStudio 25.12 — Minimal F_code Compilation SDK (technical specification)
    • 9.1 How finish_freezing works
    • 9.2 Required SDK files
      • Binaries
      • Runtime headers
      • Runtime libraries
      • Config templates
      • Size summary
    • 9.3 What can be excluded
    • 9.4 Directory structure of the SDK

The deployment problem

EiffelStudio is an exceptionally capable development environment. Its command-line compiler ec can build a complete Eiffel application without the IDE, and the finalized C output in the F_code folder is portable, auditable C that any C compiler can process. For developers building applications this workflow is well understood and well supported.

For library deployment the situation is different and more difficult. A project like xpact — a proposed Eiffel reimplementation of the widely-deployed libexpat XML parser with full Design by Contract annotations — needs to be consumable by developers who have no Eiffel knowledge and no EiffelStudio installation. A C developer linking against xpact should see a standard shared library and a C header. A Python developer should be able to install it via pip. A CI pipeline should be able to build it from source with nothing more than a C compiler and make.

Currently none of this is straightforward. Compiling the F_code output of an EiffelStudio finalization requires the Eiffel runtime headers and libraries, which are embedded inside the full EiffelStudio installation. A downstream builder who wants to compile xpact from source must install several hundred megabytes of EiffelStudio toolchain to access a few megabytes of runtime support files. This is a significant and unnecessary barrier to adoption.

Full article

https://www.eiffel-loop.com/article/eiffelstudio-fcode-sdk-v3.html


Reply all
Reply to author
Forward
0 new messages