sil2100//vx developer log

Welcome to my personal web page

Haiku optional packages

Another short post. I've seen some people having trouble with proper including of development tools in the Haiku image. The process is very simple, but indeed there is not really much information about it. All the development tools (like gcc, ld, autotools, perl and more) are packed in so called Haiku Optional Packages. You can browse the list of available optional software in the build/jam/OptionalPackages file in the Haiku source tree. Some of them can be installed by using the in-system application installoptionalpackages as well, but that's another story.



As for our dev-tools, there are 3 packages available for this purpose: Development, DevelopmentMin and DevelopmentBase, each of them adding some set of tools. To add them to the image during build time, the user friendly build/jam/UserBuildConfig script can be used. How the configuration file should look like can be seen in UserBuildConfig.sample or UserBuildConfig.ReadMe files in the same directory - but right now we're only interested in the AddOptionalHaikuImagePackages command. A package set with this command is downloaded from the internet, prepared and included in the image. Easy.

AddOptionalHaikuImagePackages Development ;
AddOptionalHaikuImagePackages DevelopmentBase ;
AddOptionalHaikuImagePackages DevelopmentMin ;

With this, the development tools are added to the Haiku image during the build process. Note the HAIKU_IMAGE_SIZE, since without increasing the size of the image our additional packages might not fit.
Now you can experiment with the Haiku API in real-time.