C: Difference between revisions
m (add ru link) |
Mr.Smith1974 (talk | contribs) (→Static code analyzers: Added ikos Static analyzer) |
||
(2 intermediate revisions by one other user not shown) | |||
Line 20: | Line 20: | ||
* {{App|[[Wikipedia:Cppcheck|Cppcheck]]|A tool for static C/C++ code analysis.|http://cppcheck.sourceforge.net/|{{Pkg|cppcheck}}}} | * {{App|[[Wikipedia:Cppcheck|Cppcheck]]|A tool for static C/C++ code analysis.|http://cppcheck.sourceforge.net/|{{Pkg|cppcheck}}}} | ||
* [[Clang]] has the ''scan-build'' static analyzer. | |||
* {{App|[[Wikipedia:Splint (programming tool)|Splint]]|A tool for statically checking C programs for security vulnerabilities and coding mistakes.|https://repo.or.cz/splint-patched.git|{{Pkg|splint}}}} | * {{App|[[Wikipedia:Splint (programming tool)|Splint]]|A tool for statically checking C programs for security vulnerabilities and coding mistakes.|https://repo.or.cz/splint-patched.git|{{Pkg|splint}}}} | ||
* | * {{App|ikos|Static analyzer for C and C++ developed by NASA|https://github.com/NASA-SW-VnV/ikos|{{AUR|ikos}}}} | ||
== Alternative compilers == | == Alternative compilers == | ||
Line 28: | Line 29: | ||
* {{App|[[Wikipedia:Amsterdam Compiler Kit|ACK]]|Amsterdam Compiler Kit.|http://tack.sourceforge.net/|{{AUR|ack-git}}}} | * {{App|[[Wikipedia:Amsterdam Compiler Kit|ACK]]|Amsterdam Compiler Kit.|http://tack.sourceforge.net/|{{AUR|ack-git}}}} | ||
* {{App|[[Wikipedia:Portable C Compiler|PCC]]|Portable C Compiler.|http://pcc.ludd.ltu.se/|{{AUR|pcc}}}} | * {{App|[[Wikipedia:Portable C Compiler|PCC]]|Portable C Compiler.|http://pcc.ludd.ltu.se/|{{AUR|pcc}}}} | ||
* {{App|[[Wikipedia:Small Device C Compiler|SDCC]]|Retargettable ANSI C compiler.| | * {{App|[[Wikipedia:Small Device C Compiler|SDCC]]|Retargettable ANSI C compiler.|https://sdcc.sourceforge.net/|{{Pkg|sdcc}}}} | ||
See also [[Wikipedia:List of compilers#C compilers]]. | See also [[Wikipedia:List of compilers#C compilers]]. | ||
Line 34: | Line 35: | ||
== Alternative libc implementations == | == Alternative libc implementations == | ||
* {{App|[[Wikipedia:dietlibc|dietlibc]]|a libc optimized for small size|https://www.fefe.de/dietlibc/|{{ | * {{App|[[Wikipedia:dietlibc|dietlibc]]|a libc optimized for small size|https://www.fefe.de/dietlibc/|{{AUR|dietlibc}}}} | ||
* {{App|[[Wikipedia:musl|musl]]|Lightweight implementation of C standard library.|https://musl.libc.org/|{{Pkg|musl}}}} | * {{App|[[Wikipedia:musl|musl]]|Lightweight implementation of C standard library.|https://musl.libc.org/|{{Pkg|musl}}}} |
Latest revision as of 16:44, 10 July 2023
The Linux kernel and the GNU userland are written primarily in C.
Arch Linux uses the GNU C Library (glibc) as the C standard library; it is a dependency of the base meta package.
You can use the GNU toolchain or the LLVM toolchain to develop software in C, C++ or Objective-C.
Useful tools
- Valgrind — Tool to help find memory-management problems in programs.
- distcc — Distributed compiling GCC front-end.
- rr — Lightweight recording and deterministic debugging tool for C/C++, uses GDB.
- https://rr-project.org/ || rrAUR
Static code analyzers
- Cppcheck — A tool for static C/C++ code analysis.
- Clang has the scan-build static analyzer.
- Splint — A tool for statically checking C programs for security vulnerabilities and coding mistakes.
- ikos — Static analyzer for C and C++ developed by NASA
Alternative compilers
- TCC — Tiny C Compiler, claims to be faster than GCC.
- ACK — Amsterdam Compiler Kit.
- PCC — Portable C Compiler.
- http://pcc.ludd.ltu.se/ || pccAUR
- SDCC — Retargettable ANSI C compiler.
See also Wikipedia:List of compilers#C compilers.
Alternative libc implementations
- dietlibc — a libc optimized for small size
- musl — Lightweight implementation of C standard library.
Libraries
- FFmpeg - includes libav, the audio and video library (not to be confused with the FFmpeg fork of the same name).
- GLib — Low-level system library by GNOME, includes GObject and GIO.
- GStreamer – pipeline-based multimedia framework
See also:
- GTK/Development#C
- Desktop notifications#C
- Libcanberra#C
- Archiving and compression#Compression libraries
- Wikipedia:Category:C (programming language) libraries
- A list of open source C libraries
See also
- man pages in section 2 for system calls
- man pages in section 3 for library functions
- GCC and Make – Compiling, Linking and Building C/C++ Applications
- SEI CERT C Coding Standard
- #C IRC channel