macOS 10.15 requires code signing

Bug #1832620 reported by Tom Kornack
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
GNU Arm Embedded Toolchain
Fix Released
Medium
Przemyslaw Wirkus

Bug Description

macOS 10.15 requires that all software including command line tools be signed and notarized by the developer.

Without code signing, authorization of each command line tools can be manually approved by the user in System Preferences; however, loading a shared library presently cannot be authorized by a user in a straightforward manner. Users may find an error such as this error issued when using ld:

/usr/local/gcc-arm-none-eabi-8-2018-q4-major/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld: /usr/local/gcc-arm-none-eabi-8-2018-q4-major/bin/../lib/gcc/arm-none-eabi/8.2.1/liblto_plugin.so: error loading plugin: dlopen(/usr/local/gcc-arm-none-eabi-8-2018-q4-major/bin/../lib/gcc/arm-none-eabi/8.2.1/liblto_plugin.so, 2): no suitable image found. Did find:
/usr/local/gcc-arm-none-eabi-8-2018-q4-major/bin/../lib/gcc/arm-none-eabi/8.2.1/liblto_plugin.so: code signature in (/usr/local/gcc-arm-none-eabi-8-2018-q4-major/bin/../lib/gcc/arm-none-eabi/8.2.1/liblto_plugin.so) not valid for use in process using Library Validation: Library load disallowed by System Policy
collect2: error: ld returned 1 exit status

This was tested using the 8-2018q4-major release on a MacBook Pro. To reproduce the issue, install and try to run any of the binaries without any inputs.

It is possible to sign using the macOS codesign command line tool. For notarization the signed binary must be submitted to Apple and the result stapled to the distribution. One of many summaries is

https://successfulsoftware.net/2018/11/16/how-to-notarize-your-software-on-macos/

macOS 10.15 will be released around the end of summer 2019. Perhaps this new requirement has already been anticipated by the developers. Thank you all for your hard work!

Tags: macos release
Revision history for this message
Tom Kornack (kornack) wrote :

This issue remains in the 10.15 release, but it is now possible to manually whitelist each executable, including the share libraries.

Revision history for this message
Przemyslaw Wirkus (wirkus) wrote :

Hi,
Although this is still under discussion I can let you know that we are working on to include with our next official GNU Embedded toolchain release MacOS 10.14 and 10.15 signed (by Arm) packages.

kind regards
Przemek

Changed in gcc-arm-embedded:
status: New → Confirmed
assignee: nobody → Przemyslaw Wirkus (wirkus)
milestone: none → 9-2020-q2
importance: Undecided → Medium
status: Confirmed → Triaged
tags: added: release
tags: added: macos
Changed in gcc-arm-embedded:
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.