GDB debugger is not yet readily available for macOS with Apple Silicon CPU.
It has long been possible to use a virtual machine with Linux for ARM64 to run GDB within the VM.
The CLion package provides GDB, but with caveats such as using a particular compiler and libstdc++.
What happens for us is when trying to use GDB, it doesn’t work:
gdb ./myexe
r
Don’t know how to run. Try “help target”.
In general, currently to use GDB on an Apple Silicon Mac, it seems a Linux VM is the best option–hopefully this changes.
Using HDF5 / NetCDF4 / HDF4 from any language can be intimidating if directly using the low-level API.
Interfaces have sprung up for popular languages that make HDF5 trivially easy to use, such as Python
h5py.
The
stdlib for Matlab
provides functions making HDF5, NetCDF4, and HDF4 much easier to use in Matlab.
The “h5*” functions are for HDF5, “nc*” functions are for NetCDF4, and “h4*” functions are for HDF4.
The functions are polymorphic, typecasting user data.
The h5*, nc*, and h4* functions work very similarly.
For simplicity, we only show the h5* functions.
h5save() save a variable to a file
h5variables() list all the variable in a file
h5size() get the size (shape) of a variable in a file
The C macro __CLASSIC_C__ is defined when the compiler is in pre-ANSI (K&R) mode.
This is a rather uncommon scenario.
It might be used in retrocomputing with very old and unmaintained compilers such as the 1990s Bruce Evans’ C compiler (bcc).
A botched program install, upgrade, or uninstall such as
Anaconda Python
can make a Windows registry mis-entry that causes many commands to fail.
Simply trying to run “cmd.exe” COMSPEC instantly fails with:
& was unexpected at this time
or
Process exited with code 1
If this message occurs when just opening a new Command Prompt window, the problem may be in the Windows Registry.
Check Registry Editor values:
C++17
and
C23
added the [[nodiscard]] attribute to indicate that the result of a function call should not be ignored.
However, a C++26 proposal to remove [[nodiscard]] from the language standard is under consideration.
Example: annotate function declaration in the header file with [[nodiscard]] attribute.
The Windows installer includes GDLDE Workbench: gdlsetup-Windows-x86_64-standard.exe
Simply install and look in Windows Start menu for “GDL Workbench”.
For macOS use gdl-macOS-x86_64-standard.dmg or build GDL from source.
LWN.net
reports
on changes to Python 3.13 urllib standard library.
It was deduced that Apple rejected Python 3.12 apps due to a string in the Python stdlib that was rejected, regardless of code execution.
There naturally was some very good discussion linked to in the LWN.net article that illustrates the conflict between closed commercial platforms with great financial might and open source software.
The Python 3.13 patch has already been merged.
A pull request backport
patch for Python 3.12 has also been created, and illustrates the clean nature of the patch and new configure flag.
GitHub Actions jobs can dynamically set environment variables with job scope using a run: step to write the variable to an
environment file.
Append to PATH: All job steps after the “run:” stanzas have the new PATH value “~/.local/bin” appended.
Windows defaults to PowerShell.
- name: set Unix PATHif: runner.os != 'Windows'run: echo "${HOME}/.local/bin" >> $GITHUB_PATH- name: set Windows PATHif: runner.os == 'Windows'run: echo "${HOME}/.local/bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
Any environment variable can be set in this way.
Example: set environment variables “CMAKE_INSTALL_PREFIX” and “CMAKE_PREFIX_PATH” to “~/libs” for the following job steps: