nRF Connect Installation on macOS (Automatic Installation)

I have not been able to create a stable development environment in macOS Monterey using the automatic installation process. 

In order to better understand and document the issues, I am going to do four separate installations for comparison.

MacBook Pro 1:  Manual Installation            

https://devzone.nordicsemi.com/f/nordic-q-a/88500/nrf-connect-installation-on-macos-manual-installation

MacBook Pro 2:  Automatic installation

Linux Ubuntu:     Manual Installation

Windows 11:       Automatic installation

This thread will cover the second case, the automatic installation on macOS. I will create separate support tickets for the other cases and provide links.

  • Hi I have had the exact same experience on every point. Waited hours for memfault to finish to no avail. I could see the git fetch command actually running, but not performing any CPU usage.

    I still have the Shell initialization conflicts nRF Connect terminal profile issue. Also performed the automatic install (followed by update SDK and update toolchain). I did not put any environment variables anywhere, in fact opening a shell the environment is pristine with nothing related to zephyr or nordic.

  • Hi Marte,

    Please see attached system report, I've changed user name for security reasons to 'xxxxxxxx'.

    IMPORTANT: The data below could contain sensitive or confidential information about your environment.
    If you do not wish this to be seen by others, please make sure to remove it before sharing.
    
    For help and support, visit the Nordic DevZone at https://devzone.nordicsemi.com/.
    
    {
      "platform": {
        "os": "darwin",
        "osVersion": "Darwin Kernel Version 21.5.0: Tue Apr 26 21:08:22 PDT 2022; root:xnu-8020.121.3~4/RELEASE_X86_64",
        "osKernel": "21.5.0",
        "vscode": "1.67.2",
        "electron": "17.4.1",
        "node": "v16.13.0"
      },
      "system": {
        "date": "2022-06-08T08:08:51.555Z",
        "vscodeRoot": "/Applications/Visual Studio Code.app/Contents/Resources/app",
        "nrfConnectForDesktopInstalled": true,
        "vscodeUptime": "00:00:32",
        "osUptime": "00:04:20",
        "cpu": {
          "model": "Intel(R) Core(TM) i7-5557U CPU @ 3.10GHz",
          "speed": "3100 MHz",
          "count": 2
        },
        "memory": {
          "total": "16.00 GB",
          "free": "3.40 GB"
        }
      },
      "workspace": {
        "name": null,
        "workspaceFile": null,
        "folders": []
      },
      "extensions": {
        "internal": {
          "nordic-semiconductor.nrf-connect": {
            "version": "2022.6.22",
            "path": "/Users/xxxxxxxx/.vscode/extensions/nordic-semiconductor.nrf-connect-2022.6.22",
            "isActive": false
          },
          "nordic-semiconductor.nrf-terminal": {
            "version": "2022.4.61",
            "path": "/Users/xxxxxxxx/.vscode/extensions/nordic-semiconductor.nrf-terminal-2022.4.61",
            "isActive": true
          },
          "nordic-semiconductor.devicetree": null,
          "nordic-semiconductor.kconfig": null
        },
        "external": {
          "marus25.cortex-debug": "1.4.4",
          "ms-vscode.cpptools": "1.9.8",
          "ms-vscode.js-debug": "1.67.2",
          "ms-vscode.js-debug-companion": "1.0.18",
          "ms-vscode.references-view": "0.0.89",
          "ms-vscode.vscode-js-profile-table": "1.0.1",
          "trond-snekvik.gnu-mapfiles": "1.1.0",
          "twxs.cmake": "0.0.17"
        }
      },
      "tools": {
        "/Applications/SEGGER/JLink/JLinkExe": "7.66b",
        "/usr/local/bin/nrfjprog": "10.15.4",
        "nrfutil": "Not found",
        "/opt/nordic/ncs/toolchains/v2.0.0/bin/cmake": "3.20.5",
        "/opt/nordic/ncs/toolchains/v2.0.0/bin/west": "0.13.1",
        "/opt/nordic/ncs/toolchains/v2.0.0/bin/python3": "3.9.6",
        "/opt/nordic/ncs/toolchains/v2.0.0/bin/ninja": "1.10.2",
        "/opt/nordic/ncs/toolchains/v2.0.0/bin/gperf": "3.1",
        "/opt/nordic/ncs/toolchains/v2.0.0/bin/dtc": "1.6.1",
        "/opt/nordic/ncs/toolchains/v2.0.0/opt/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc": "0.14.1",
        "/opt/nordic/ncs/toolchains/v2.0.0/bin/gn": "2039",
        "/opt/nordic/ncs/toolchains/v2.0.0/bin/git": "2.32.0"
      },
      "sdks": [
        {
          "version": "2.0.0",
          "path": "/opt/nordic/ncs/v2.0.0"
        }
      ],
      "toolchains": [
        {
          "version": "2.0.0",
          "path": "/opt/nordic/ncs/toolchains/v2.0.0"
        }
      ],
      "connectedDevices": [],
      "deviceProviders": [
        "nrfjprog"
      ],
      "config": {
        "nordic-semiconductor.nrf-connect": {
          "topdir": "${nrf-connect.sdk:2.0.0}",
          "toolchain": {
            "path": "${nrf-connect.toolchain:2.0.0}"
          },
          "ozonePath": "",
          "applications": [],
          "applicationOptions": {},
          "kconfig": {
            "interface": "kconfig"
          },
          "welcome": {
            "showOnStartup": true
          },
          "west": {
            "env": {
              "$base": "terminal"
            }
          },
          "boardRoots": [],
          "enableTelemetry": null,
          "taskBindings": {}
        },
        "nordic-semiconductor.nrf-terminal": {
          "terminalMode": "character"
        },
        "nordic-semiconductor.devicetree": {
          "modules": [
            "${zephyrBase}",
            "${zephyrBase}/../nrf",
            "."
          ],
          "zephyr": "",
          "ctxFile": "",
          "defaultBoard": ""
        },
        "nordic-semiconductor.kconfig": {
          "root": "",
          "env": {},
          "cfiles": true,
          "disable": false,
          "zephyr": {
            "base": ""
          },
          "python": "",
          "liveValue": true
        },
        "marus25.cortex-debug": {
          "armToolchainPath": null,
          "armToolchainPrefix": "arm-none-eabi",
          "gdbPath": null,
          "objdumpPath": null,
          "JLinkGDBServerPath": null,
          "openocdPath": null,
          "pyocdPath": null,
          "PEGDBServerPath": null,
          "stutilPath": null,
          "stlinkPath": null,
          "stm32cubeprogrammer": null,
          "enableTelemetry": true,
          "flattenAnonymous": false,
          "registerUseNaturalFormat": true,
          "variableUseNaturalFormat": true,
          "dbgServerLogfile": null,
          "showRTOS": false,
          "showDevDebugOutput": "none"
        }
      },
      "environment": {
        "westExe": "/opt/nordic/ncs/toolchains/v2.0.0/bin/west",
        "westEnv": {
          "ELECTRON_RUN_AS_NODE": "1",
          "GIT_EXEC_PATH": "/opt/nordic/ncs/toolchains/v2.0.0/Cellar/git/2.32.0_1/libexec/git-core",
          "HOME": "/Users/xxxxxxxx",
          "PATH": "/opt/nordic/ncs/toolchains/v2.0.0/bin:/opt/nordic/ncs/toolchains/v2.0.0/opt/bin:/opt/nordic/ncs/toolchains/v2.0.0/opt/zephyr-sdk/arm-zephyr-eabi/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin",
          "ZEPHYR_BASE": "/opt/nordic/ncs/v2.0.0/zephyr",
          "ZEPHYR_TOOLCHAIN_VARIANT": "zephyr",
          "ZEPHYR_SDK_INSTALL_DIR": "/opt/nordic/ncs/toolchains/v2.0.0/opt/zephyr-sdk",
          "USER": "xxxxxxxx"
        },
        "toolchainPath": "/opt/nordic/ncs/toolchains/v2.0.0",
        "toolchainBinPath": "/opt/nordic/ncs/toolchains/v2.0.0/opt/zephyr-sdk/arm-zephyr-eabi/bin",
        "toolchainVersion": "2.0.0"
      },
      "terminal": {
        "shell": null,
        "defaultProfile": null
      }
    }
    

    Kind regards,

    Al

  • I actually managed to get everything working. I still get the warning about the terminal profile, though it seems to be benign.

    The only thing not working is KConfig which gives the error "Unable to find Kconfig information to display. Please select a Kconfig file first.", although guiconfig and menuconfig works.

  • Yes, I've had KConfig errors with previous attempts at doing the automatic installation process on macOS, as well as CMake errors. So far the macOS manual installation and Win 11 automatic installation appear to be ok. Still have Linux to try.

  • Hi,

    We have had some other reports about the memfault issue as well, and the developers have been notified of it.

    Regarding the shell initialization issue the developers have been unable to reproduce this so far. MacOS use zsh as the standard shell, so it is possible that the instructions to look for bashrc or bash_profile on macOS will not catch the issue, as it is not set there. However, regardless of what the inherited environment variables were, the extension will set the variables that fit with the active toolchain and SDK. Issues might only raise within the integrated when the "nRF Connect" terminal profile is used. You can check the variables by typing env and see if something looks incorrect there. However, if you rarely use the integrated terminal to invoke west or cmake then the error message can just be ignored.

    Did you build the project successfully before the Kconfig error? This error could be given if the build is broken or incomplete. The Kconfig extension is not installed in the support information, so it is not possible to get information that might help with this error from that. If you are still seeing the error, please generate new support information.

    Best regards,

    Marte

Related