Compile Applications

The Synology NAS employs embedded SoC or x86-based CPUs, implementing several platforms -- such as ARM and PowerPC -- on a variety of Synology NAS models. In order to run 3rd-party applications on the Synology NAS, it is necessary to compile applications into an executable format for the corresponding platform.

The table below lists the CPU, architecture, Endianness, and Linux kernel version of each Synology NAS model. This information will help you determine which DSM tool chain (please refer to the “Download DSM Tool Chain” section) to download for each model.

Please refer to What kind of CPU does my NAS have Need to update the hyperlinkfor a complete model list.

Model (To name a few) CPU Arch Endianness Linux
DS112j, DS112, DS112+, DS411slim, DS213, DS212j Marvell 6281
Marvell 6282
ARM Little Endian 2.6.32
DS213j Marvell Armada 370 ARM Little Endian 3.2.40
DS214, DS214+ Marvell Armada XP ARM Little Endian 3.2.40
DS215+, DS416 Annapurnalabs, Alpine AL212 ARM Little Endian 3.2.40
DS715, DS1515 Annapurnalabs, Alpine AL314 ARM Little Endian 3.2.40
DS2015xs Annapurnalabs, Alpine AL514 ARM Little Endian 3.2.40
DS115, DS215j Marvell Armada 375 ARM Little Endian 3.2.40
DS414j Mindspeed, Comcerto, C2000 ARM Little Endian 3.2.40
DS712+, DS2412+, RS2212+, DS1512+, DS1812+, DS412+, RS812+ Intel Atom Intel x86 Little Endian 3.2.40
DS3612xs, RS3412xs, RS3412RPxs Intel Core i3 Intel x86 Little Endian 3.2.40
DS214play Intel SoC Intel x86 Little Endian 3.2.40
DS213+, DS413 Freescale QorIQ P1022 PowerPC Big Endian 2.6.32

To compile an application for the Synology NAS, a compiler that runs on Linux PC is required in order to generate an executable file for the Synology NAS. This compiling procedure is called cross-compiling, and the set of compiling tools (compiler, linker, etc) used to compile the application is called a tool chain.