Haiku Developer Tools Update (October 2023)
This article lists some of the recent updates for developer tools that are available in the HaikuPorts repository. Many of these can be installed from HaikuDepot.
This is the first article on this topic, but it may become a regular (quarterly?) series. Let me know in the comments what you find of these notes, and what else you think should be covered.
GCC 13.2.0
The Haiku nightlies are now built with GCC 13.2.0 as the primary compiler (the previous version was GCC 11.3.0) and it is available for software developers. It can also be used on a Haiku R1 beta 4 system. The packages support C, C++, and Fortran.
The updated version includes all improvements in the GCC 12 and GCC 13 builds. Since Haiku’s primary language is C++, it is particularly notable that there is now improved support for C++20 features, as well as some more early support for C++23.
Check out the packages on HaikuDepot:
Binutils 2.41
Binutils is a collection of tools to handle binaries, best known for the ld
linker. Recently, binutils was updated to the 2.41 release. The previous version of binutils was 2.31.
Check the binutils package on HaikuDepot: 64 bit | 32 bit
LLVM 17
The LLVM Compiler Infrastructure Project provides libraries that power many modern languages, like Rust. It also ships with a C/C++ compiler called clang
and the clangd
package is the standard LSP-server for C/C++ used by many IDEs, including Qt Creator (see below). The package was recently updated to the 17.0.1 release.
Check out the packages on HaikuDepot:
Python 3.10, 3.11 & 3.12
The Python interpreter has been updated recently as well, and the standard python interpreter on Haiku is now Python 3.10.
Check out the packages on HaikuDepot:
Qt Creator 11.0.3
This IDE from the makers of Qt supports full-fledged C++ development, including code completion using clangd
(part of the LLVM package). See what’s new in version 11. Previous release on Haiku was 6.0.1.
Check out the package on HaikuDepot: 64 bit | 32 bit
CudaText 1.200.0.0
This modern text editor for developers is written in Object Pascal, is fast, and has a lot of features that are available as plugins, including code completion using clangd
(part of the LLVM package). See the change log to see what’s new.
Check out the package on HaikuDepot: 64 bit | 32 bit
haiku-format 17
This tool is a fork of the clang-format
tool that is part of the LLVM package (see above). It features a code formatting that covers (almost all of) Haiku’s coding style. It is beneficial to run this on your code changes before submitting it to Haiku. It has recently been updated with the latest changes in clang-format
, and it includes some further refinements for the coding style. See the announcement on our forums.
Check out the package on HaikuDepot: 64 bit | 32 bit
DotNet GSOC Port
One of the Google Summer of Code programs this year was the porting of dotnet
to Haiku. The student continued on previous work and touched a lot of code, including in the Haiku kernel itself. The final blog post is a very interesting read!
nielx's blog
- RFC Coding Guidelines: Formatting Class Member Declarations
- Haiku Developer Tools Update (October 2023)
- HTTP Network Services Preview in R1 Beta 4
- Rust on Haiku: the Case of the Disappearing Deceased Threads
- The State of Rust on Haiku - July 2018
- Haiku has No Future
- Alpha 1: A Week Later
- A Jocund Eulogy
- Git for Haiku (#1)
- Haiku Alpha 1 Status Update (#2)