Wednesday, 5 February 2025

Visual Studio, Ada Language Server, macOS

If you’re using VSCode on a Mac with Apple silicon (an M-series chip) you will probably have noticed that Ada code formatting doesn’t work.

This is thought to be because of an issue with the aarch64-apple-darwin compiler. It’s stated that the problem doesn’t occur if the Ada Language Server is compiled for the Intel (x86_64) architecture.

Wednesday, 29 January 2025

Ada TS Mode

Ada TS Mode by Troy Brown is an Emacs-based IDE for Ada.

It’s a replacement for Emacs Ada Mode by Stephe Leake and others.

Friday, 8 November 2024

MacOS and version 16 Software Development Kits

Apple have released version 16 of their Software Development Kits (SDKs). This note discusses the impact of this on users of released FSF GCC Ada compilers:

  1. just the compiler, in Alire,
  2. the compiler with a full suite of tools.

If you’re getting mysterious faiures with C or C++ compilations, this note is for you.

Saturday, 2 November 2024

Sequoia and downloads

This note reports on problems people may come across with downloaded packages under macOS 15 (Sequoia).

Thursday, 18 July 2024

Ada & FreeRTOS on ESP32 H2

The ESP32 H2 from Espressif, as provided by The Pi Hut, has a RISC-V 32-bit single-core processor with a clock speed of up to 96MHz and 4MB of built-in Flash, an extensive set of on-chip pripherals, and also integrated wireless connectivity.

The Espressif development environment provides a considerable range of software packages to take advantage of the MCU’s features.

It’s possible to implement Ada code in the Espressif environment, but I was more interested in extending Cortex GNAT RTS (which is built over FreeRTOS) to use this new-to-me hardware. This wouldn’t have been possible had FreeRTOS not already supported RISC-V.

Sunday, 11 February 2024

SDK 15 issues

This note covers some problems we’ve had with Xcode/the Command Line Tools (CLTs) at version 15.

Wednesday, 7 June 2023

Alire on macOS, revisited

This note covers some of the considerations that’ll apply when running Alire on macOS.

Wednesday, 22 March 2023

Libadalang, Alire, and macOS

Background

This exercise was prompted by the need for Scripted Testing to be supported by – as far as possible – code generation. The need is for the public or interfacing view of a supporting part (domain) of a system to be able to log calls made to it and to provide values on calls to it, using a scripting mechanism.

Friday, 10 February 2023

ColdFrame and the micro:bit revisited

This article discusses various issues rebuilding a demonstrator intended for the BBC micro:bit (version 1.3b) after an interval of several years.

Monday, 6 February 2023

Sunday, 20 November 2022

Building GCC 12.2.0 on Ventura for aarch64

These are notes on building GCC 12.2.0 and GNAT tools for Apple silicon.

There were two main problems:

  • the base package was built on an Intel machine (lockheed - named after Shadowcat’s companion dragon), running Monterey (macOS 12).
  • the build machine, an M1 mac Mini (temeraire - named after Naomi Novik’s dragon) was by this time running Ventura (macOS 13), but I wanted to make sure that users could continue to run on Monterey.

Friday, 3 June 2022

Packing issue in libusb

This note is about an issue encountered creating a very thin Ada binding to libusb (1.0.26).

Saturday, 12 March 2022

Which SDK? choices, choices ...

This note is about configuring GCC on macOS so that your built compiler can be used independently of which Software Development Kit (SDK) is installed.

Wednesday, 9 March 2022

Sunday, 20 February 2022

SPARK2014 and FSF GCC

This is a note about building SPARK (i.e. gnatprove) against an FSF GCC.

Where’s that library?

This note is about some difficulties using shared libraries (.dylibs) on macOS.

Friday, 8 October 2021

Word, templates, rage

This is with Word 2019 for Mac. Why am I using Word, anyway? - because LibreOffice has stopped working with our membership database in SQLite, and wasn’t working at all well with a CSV export. Oh, and Word doesn’t work with SQLite either.

I managed to create a Word template by careful editing of the LibreOffice version; painful to have to work with CSVs, but better than filling in 100 membership letters by hand (most of our members have email, so a Python script using email.mime, smtplib, sqlite3 etc worked for them, leaving the diehards ...)

OK, the organisation has a new chair, time to update the template.

Where is it? Turns out, ~/Library/Group Containers/UBF8T346G9.Office/User Content/Templates. Well done, Microsoft.

And then, the challenge is to find a way of editing the template. Whatever I try, whatever tips I follow on the net, all I can do is edit a document based on the template, which is not what I need to happen!

I would look into PDFs via fpdf2, but I should only have another year in this post and the next person might have an issue with that. (The same applies to using SQLite, of course. Hmm.)

So I guess its back to LibreOffice.


Monday, 23 August 2021

(Not) building GTK on Big Sur

People are having much trouble with GtkAda on Big Sur, so I thought "why not try building Gtk?" - as here.

Unfortunately, it's just too complicated & runs into so many problems that I give up.

Tuesday, 6 April 2021

Preparing for a Github PR

This is a note about preparing a pull request (PR) for a Github repository. As much as anything, it’s to stop me having to page back through my lab notebook to find out how I did it last time …