Skip to content

Latest commit

 

History

History
726 lines (520 loc) · 33.2 KB

README.rst

File metadata and controls

726 lines (520 loc) · 33.2 KB

TiaC Systems Network (TSN) Ubuntu Build Essential Workspace

This repository contains the build configuration of the Ubuntu for developers [1] workspace for TiaC Systems Network (TSN) as multi-arch Docker images for Linux.

Documentation

The documentation overview is in this readme in the project root directory.

Content

Based on our own TSN ASDF Workspace Docker image [2], ghcr.io/tiacsys/tsn-asdf-ws:pr-2:

  • Docker image architectures:
    • Intel/AMD x86 64-bit (linux/amd64)
    • ARMv7 32-bit (linux/arm/v7)
    • ARMv8 64-bit (linux/arm64/v8)
    • RISC-V 64-bit (linux/riscv64)
    • IBM POWER8 (linux/ppc64le)
    • IBM z-Systems (linux/s390x)

Ubuntu system packages

Basic development tools

  • list of build-essential packages v12.10 [6]
    • basic system C/C++ compiler: gcc / g++
    • basic system API C library: <libc-dev> / <linux-kernel-headers>
    • basic system API C++ library: <libstdc++-dev>
    • system package development tools: dpkg-dev
    • utility for directing compilation: make
Low-Level Virtual Machine (LLVM)
[*] LLVM amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
  |llvm-dev-14-version|_ x x x x x x
  LLVM-based linker v14.0.6 [7] x x x x x x
  |llvm-dev-15-version|_ x x x x x x
  LLVM-based linker v15.0.7 [8] x x x x x x
  |llvm-dev-16-version|_ x x x x x x
  LLVM-based linker v16.0.6 [9] x x x x x x
  |llvm-dev-17-version|_ x x x x x x
  LLVM-based linker v17.0.6 [10] x x x x x x
x LLVM Modular compiler v18.1.3 [11] x x x x x x
x LLVM-based linker v18.1.3 [12] x x x x x x
[*]Default version.
LLVM C/C++ and Objective-C compilers
[†] Compiler amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
  Clang compiler v14.0.6 [13] x x x x x x
  Clang code formatter v14.0.6 [14] x x x x x x
  Clang development tools v14.0.6 [15] x x x x x x
  Clang linter tool v14.0.6 [16] x x x x x x
  Clang compiler v15.0.7 [17] x x x x x x
  Clang code formatter v15.0.7 [18] x x x x x x
  Clang development tools v15.0.7 [19] x x x x x x
  Clang linter tool v15.0.7 [20] x x x x x x
  Clang compiler v16.0.6 [21] x x x x x x
  Clang code formatter v16.0.6 [22] x x x x x x
  Clang development tools v16.0.6 [23] x x x x x x
  Clang linter tool v16.0.6 [24] x x x x x x
  Clang compiler v17.0.6 [25] x x x x x x
  Clang code formatter v17.0.6 [26] x x x x x x
  Clang development tools v17.0.6 [27] x x x x x x
  Clang linter tool v17.0.6 [28] x x x x x x
x Clang compiler v18.1.3 [29] x x x x x x
x Clang code formatter v18.1.3 [30] x x x x x x
x Clang development tools v18.1.3 [31] x x x x x x
x Clang linter tool v18.1.3 [32] x x x x x x
[†]Default version.
LLVM Fortran 95 / 2018 compilers
[‡] Compiler amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
  Flang compiler v15.0.7 [33] x   x x x  
  Flang compiler v16.0.6 [34] x   x x x  
  Flang compiler v17.0.6 [35] x   x x x  
x Flang compiler v18.1.3 [36] x   x x x  
[‡]Default version.
GNU C compilers
[§] Compiler amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
  GNU C compiler v10.5 [37] x x x x x x
  GNU C compiler (multilib files) v10.5 [38] x         x
  GNU C compiler v11.4 [39] x x x x x x
  GNU C compiler (multilib files) v11.4 [40] x         x
  GNU C compiler v12.3 [41] x x x x x x
  GNU C compiler (multilib files) v12.3 [42] x         x
x GNU C compiler v13.2 [43] x x x x x x
x GNU C compiler (multilib files) v13.2 [44] x         x
  GNU C compiler v14 [45] x x x x x x
  GNU C compiler (multilib files) v14 [46] x         x
[§]Default version.
GNU C++ compilers
[¶] Compiler amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
  GNU C++ compiler v10.5 [47] x x x x x x
  GNU C++ compiler (multilib files) v10.5 [48] x         x
  GNU C++ compiler v11.4 [49] x x x x x x
  GNU C++ compiler (multilib files) v11.4 [50] x         x
  GNU C++ compiler v12.3 [51] x x x x x x
  GNU C++ compiler (multilib files) v12.3 [52] x         x
x GNU C++ compiler v13.2 [53] x x x x x x
x GNU C++ compiler (multilib files) v13.2 [54] x         x
  GNU C++ compiler v14 [55] x x x x x x
  GNU C++ compiler (multilib files) v14 [56] x         x
[¶]Default version.
GNU Objective-C compilers
[#] Compiler amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
  GNU Objective-C compiler v10.5 [57] x x x x x x
  GNU Objective-C compiler (multilib files) v10.5 [58] x         x
  GNU Objective-C compiler v11.4 [59] x x x x x x
  GNU Objective-C compiler (multilib files) v11.4 [60] x         x
  GNU Objective-C compiler v12.3 [61] x x x x x x
  GNU Objective-C compiler (multilib files) v12.3 [62] x         x
x GNU Objective-C compiler v13.2 [63] x x x x x x
x GNU Objective-C compiler (multilib files) v13.2 [64] x         x
  GNU Objective-C compiler v14 [65] x x x x x x
  GNU Objective-C compiler (multilib files) v14 [66] x         x
[#]Default version.
GNU Objective-C++ compilers
[♠] Compiler amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
  GNU Objective-C++ compiler v10.5 [67] x x x x x x
  GNU Objective-C++ compiler (multilib files) v10.5 [68] x         x
  GNU Objective-C++ compiler v11.4 [69] x x x x x x
  GNU Objective-C++ compiler (multilib files) v11.4 [70] x         x
  GNU Objective-C++ compiler v12.3 [71] x x x x x x
  GNU Objective-C++ compiler (multilib files) v12.3 [72] x         x
x GNU Objective-C++ compiler v13.2 [73] x x x x x x
x GNU Objective-C++ compiler (multilib files) v13.2 [74] x         x
  GNU Objective-C++ compiler v14 [75] x x x x x x
  GNU Objective-C++ compiler (multilib files) v14 [76] x         x
[♠]Default version.
GNU D compilers
[♥] Compiler amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
  GNU D compiler v10.5 [77] x x x x x x
  GNU D compiler (multilib files) v10.5 [78] x         x
  GNU D compiler v11.4 [79] x x x x x x
  GNU D compiler (multilib files) v11.4 [80] x         x
  GNU D compiler v12.3 [81] x x x x x x
  GNU D compiler (multilib files) v12.3 [82] x         x
x GNU D compiler v13.2 [83] x x x x x x
x GNU D compiler (multilib files) v13.2 [84] x         x
  GNU D compiler v14 [85] x x x x x x
  GNU D compiler (multilib files) v14 [86] x         x
[♥]Default version.
GNU Modula-2 compilers
[♦] Compiler amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
  GNU Modula-2 compiler v10.5 [87] x x x x x x
  GNU Modula-2 compiler v11.4 [88] x x x x x x
  GNU Modula-2 compiler v12.3 [89] x x x x x x
x GNU Modula-2 compiler v13.2 [90] x x x x x x
  GNU Modula-2 compiler v14 [91] x x x x x x
[♦]Default version.
GNU Ada compilers
[♣] Compiler [**] amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
x GNU Ada compiler v13.2 [92] x x x x x x
[♣]Default version.
[**]

Note

multiple version installation not possible

GNU Fortran 95 compilers
[††] Compiler [‡‡] amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
  GNU Fortran 95 compiler v10.5 [93] x x x x x x
  GNU Fortran 95 compiler (multilib files) v10.5 [94] x         x
  GNU Fortran 95 compiler v11.4 [95] x x x x x x
  GNU Fortran 95 compiler (multilib files) v11.4 [96] x         x
  GNU Fortran 95 compiler v12.3 [97] x x x x x x
  GNU Fortran 95 compiler (multilib files) v12.3 [98] x         x
x GNU Fortran 95 compiler v13.2 [99] x x x x x x
x GNU Fortran 95 compiler (multilib files) v13.2 [100] x         x
  GNU Fortran 95 compiler v14 [101] x x x x x x
  GNU Fortran 95 compiler (multilib files) v14 [102] x         x
[††]Default version.
[‡‡]

Note

compatible to GNU Fortran 77 too: gfortran -std=legacy

GNU Go compilers
[§§] Compiler amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
  GNU Go compiler v10.5 [103] x x x x x x
  GNU Go compiler (multilib files) v10.5 [104] x         x
  GNU Go compiler v11.4 [105] x x x x x x
  GNU Go compiler (multilib files) v11.4 [106] x         x
  GNU Go compiler v12.3 [107] x x x x x x
  GNU Go compiler (multilib files) v12.3 [108] x         x
x GNU Go compiler v13.2 [109] x x x x x x
x GNU Go compiler (multilib files) v13.2 [110] x         x
  GNU Go compiler v14 [111] x x x x x x
  GNU Go compiler (multilib files) v14 [112] x         x
[§§]Default version.
Scheme/Lisp programming
Interpreter/Compiler amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
GNU Guile interpreter v2.2 [113] x x x x x x
GNU Guile JIT compiler v3.0 [114] [¶¶] x x x x x x
[¶¶]with JIT [3] compilation
Forth programming
Compiler amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
GNU Forth Language Environment v0.7.3 [115] x x x x x x
Meta programming
Tools amd64 arm/v7 arm64/v8 riscv64 ppc64le s390x
GNU Bison YACC parser generator v3.8.2 [116] [Y] x x x x x x
Berkeley LALR/YACC parser generator v2.0 [119] [L]/ [Y] x x x x x x
Backtracking Berkeley LALR/YACC parser generator v3.0 [120] [L]/ [Y] x x x x x x
Not Yet Another Compiler Compiler (YACC) v1.00 [121] [Y] x x x x x x
Fast LEXical analyzer generator v2.6.4 [117] x x x x x x
M4 macro processing language v1.4.19 [118] x x x x x x
[L](1, 2) with Look-Ahead, Left-to-Right [4] support
[Y](1, 2, 3, 4) with Yet Another Compiler-Compiler [5] support

GNU autotools

GNU development tools

References

[1]https://ubuntu.com/desktop/developers
[2]https://github.com/tiacsys/tsn-asdf-ws
[3]https://en.wikipedia.org/wiki/Just-in-time_compilation
[4]https://en.wikipedia.org/wiki/LALR
[5]https://en.wikipedia.org/wiki/YACC
[6]https://packages.ubuntu.com/noble/build-essential
[7]https://packages.ubuntu.com/noble/lld-14
[8]https://packages.ubuntu.com/noble/lld-15
[9]https://packages.ubuntu.com/noble/lld-16
[10]https://packages.ubuntu.com/noble/lld-17
[11]https://packages.ubuntu.com/noble/llvm-dev
[12]https://packages.ubuntu.com/noble/lld
[13]https://packages.ubuntu.com/noble/clang-14
[14]https://packages.ubuntu.com/noble/clang-format-14
[15]https://packages.ubuntu.com/noble/clang-tools-14
[16]https://packages.ubuntu.com/noble/clang-tidy-14
[17]https://packages.ubuntu.com/noble/clang-15
[18]https://packages.ubuntu.com/noble/clang-format-15
[19]https://packages.ubuntu.com/noble/clang-tools-15
[20]https://packages.ubuntu.com/noble/clang-tidy-15
[21]https://packages.ubuntu.com/noble/clang-16
[22]https://packages.ubuntu.com/noble/clang-format-16
[23]https://packages.ubuntu.com/noble/clang-tools-16
[24]https://packages.ubuntu.com/noble/clang-tidy-16
[25]https://packages.ubuntu.com/noble/clang-17
[26]https://packages.ubuntu.com/noble/clang-format-17
[27]https://packages.ubuntu.com/noble/clang-tools-17
[28]https://packages.ubuntu.com/noble/clang-tidy-17
[29]https://packages.ubuntu.com/noble/clang
[30]https://packages.ubuntu.com/noble/clang-format
[31]https://packages.ubuntu.com/noble/clang-tools
[32]https://packages.ubuntu.com/noble/clang-tidy
[33]https://packages.ubuntu.com/noble/flang-15
[34]https://packages.ubuntu.com/noble/flang-16
[35]https://packages.ubuntu.com/noble/flang-17
[36]https://packages.ubuntu.com/noble/flang
[37]https://packages.ubuntu.com/noble/gcc-10
[38]https://packages.ubuntu.com/noble/gcc-10-multilib
[39]https://packages.ubuntu.com/noble/gcc-11
[40]https://packages.ubuntu.com/noble/gcc-11-multilib
[41]https://packages.ubuntu.com/noble/gcc-12
[42]https://packages.ubuntu.com/noble/gcc-12-multilib
[43]https://packages.ubuntu.com/noble/gcc
[44]https://packages.ubuntu.com/noble/gcc-multilib
[45]https://packages.ubuntu.com/noble/gcc-14
[46]https://packages.ubuntu.com/noble/gcc-14-multilib
[47]https://packages.ubuntu.com/noble/g++-10
[48]https://packages.ubuntu.com/noble/g++-10-multilib
[49]https://packages.ubuntu.com/noble/g++-11
[50]https://packages.ubuntu.com/noble/g++-11-multilib
[51]https://packages.ubuntu.com/noble/g++-12
[52]https://packages.ubuntu.com/noble/g++-12-multilib
[53]https://packages.ubuntu.com/noble/g++
[54]https://packages.ubuntu.com/noble/g++-multilib
[55]https://packages.ubuntu.com/noble/g++-14
[56]https://packages.ubuntu.com/noble/g++-14-multilib
[57]https://packages.ubuntu.com/noble/gobjc-10
[58]https://packages.ubuntu.com/noble/gobjc-10-multilib
[59]https://packages.ubuntu.com/noble/gobjc-11
[60]https://packages.ubuntu.com/noble/gobjc-11-multilib
[61]https://packages.ubuntu.com/noble/gobjc-12
[62]https://packages.ubuntu.com/noble/gobjc-12-multilib
[63]https://packages.ubuntu.com/noble/gobjc
[64]https://packages.ubuntu.com/noble/gobjc-multilib
[65]https://packages.ubuntu.com/noble/gobjc-14
[66]https://packages.ubuntu.com/noble/gobjc-14-multilib
[67]https://packages.ubuntu.com/noble/gobjc++-10
[68]https://packages.ubuntu.com/noble/gobjc++-10-multilib
[69]https://packages.ubuntu.com/noble/gobjc++-11
[70]https://packages.ubuntu.com/noble/gobjc++-11-multilib
[71]https://packages.ubuntu.com/noble/gobjc++-12
[72]https://packages.ubuntu.com/noble/gobjc++-12-multilib
[73]https://packages.ubuntu.com/noble/gobjc++
[74]https://packages.ubuntu.com/noble/gobjc++-multilib
[75]https://packages.ubuntu.com/noble/gobjc++-14
[76]https://packages.ubuntu.com/noble/gobjc++-14-multilib
[77]https://packages.ubuntu.com/noble/gdc-10
[78]https://packages.ubuntu.com/noble/gdc-10-multilib
[79]https://packages.ubuntu.com/noble/gdc-11
[80]https://packages.ubuntu.com/noble/gdc-11-multilib
[81]https://packages.ubuntu.com/noble/gdc-12
[82]https://packages.ubuntu.com/noble/gdc-12-multilib
[83]https://packages.ubuntu.com/noble/gdc
[84]https://packages.ubuntu.com/noble/gdc-multilib
[85]https://packages.ubuntu.com/noble/gdc-14
[86]https://packages.ubuntu.com/noble/gdc-14-multilib
[87]https://packages.ubuntu.com/noble/gm2-10
[88]https://packages.ubuntu.com/noble/gm2-11
[89]https://packages.ubuntu.com/noble/gm2-12
[90]https://packages.ubuntu.com/noble/gm2
[91]https://packages.ubuntu.com/noble/gm2-14
[92]https://packages.ubuntu.com/noble/gnat
[93]https://packages.ubuntu.com/noble/gfortran-10
[94]https://packages.ubuntu.com/noble/gfortran-10-multilib
[95]https://packages.ubuntu.com/noble/gfortran-11
[96]https://packages.ubuntu.com/noble/gfortran-11-multilib
[97]https://packages.ubuntu.com/noble/gfortran-12
[98]https://packages.ubuntu.com/noble/gfortran-12-multilib
[99]https://packages.ubuntu.com/noble/gfortran
[100]https://packages.ubuntu.com/noble/gfortran-multilib
[101]https://packages.ubuntu.com/noble/gfortran-14
[102]https://packages.ubuntu.com/noble/gfortran-14-multilib
[103]https://packages.ubuntu.com/noble/gccgo-10
[104]https://packages.ubuntu.com/noble/gccgo-10-multilib
[105]https://packages.ubuntu.com/noble/gccgo-11
[106]https://packages.ubuntu.com/noble/gccgo-11-multilib
[107]https://packages.ubuntu.com/noble/gccgo-12
[108]https://packages.ubuntu.com/noble/gccgo-12-multilib
[109]https://packages.ubuntu.com/noble/gccgo
[110]https://packages.ubuntu.com/noble/gccgo-multilib
[111]https://packages.ubuntu.com/noble/gccgo-14
[112]https://packages.ubuntu.com/noble/gccgo-14-multilib
[113]https://packages.ubuntu.com/noble/guile-2.2
[114]https://packages.ubuntu.com/noble/guile-3.0
[115]https://packages.ubuntu.com/noble/gforth
[116]https://packages.ubuntu.com/noble/bison
[117]https://packages.ubuntu.com/noble/flex
[118]https://packages.ubuntu.com/noble/m4
[119]https://packages.ubuntu.com/noble/byacc
[120]https://packages.ubuntu.com/noble/btyacc
[121]https://packages.ubuntu.com/noble/nyacc
[122]https://packages.ubuntu.com/noble/autoconf-dickey
[123]https://packages.ubuntu.com/noble/autoconf2.13
[124]https://packages.ubuntu.com/noble/autoconf2.64
[125]https://packages.ubuntu.com/noble/autoconf2.69
[126]https://packages.ubuntu.com/noble/autoconf
[127]https://packages.ubuntu.com/noble/autoconf-archive
[128]https://packages.ubuntu.com/noble/automake1.11
[129]https://packages.ubuntu.com/noble/automake
[130]https://packages.ubuntu.com/noble/autogen
[131]https://packages.ubuntu.com/noble/gettext
[132]https://packages.ubuntu.com/noble/autopoint
[133]https://packages.ubuntu.com/noble/libtool
[134]https://packages.ubuntu.com/noble/libltdl-dev
[135]https://packages.ubuntu.com/noble/gperf
[136]https://packages.ubuntu.com/noble/make-guile
[137]https://packages.ubuntu.com/noble/pkg-config