Skip to content

SIGSEGV when compiling for custom boards #177

Closed
@Renaud11232

Description

@Renaud11232

I noticed a problem when I try compiling a sketch for a custom board.

~$ ./arduino-cli compile --fqbn anet:avr:anet Marlin/
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x34 pc=0x2cf560]

goroutine 1 [running]:
github.com/arduino/arduino-cli/arduino/cores.(*PlatformRelease).GetLibrariesDir(0x0, 0x17230)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/arduino/cores/cores.go:210 +0x2c
github.com/arduino/arduino-cli/arduino/libraries/librariesmanager.(*LibrariesManager).AddPlatformReleaseLibrariesDir(0x12a17600, 0x0, 0x4)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/arduino/libraries/librariesmanager/librariesmanager.go:138 +0x1c
github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder.(*LibrariesLoader).Run(0x818d70, 0x12a461e0, 0x818d70, 0x0)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder/libraries_loader.go:62 +0x3f0
github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder.(*ContainerSetupHardwareToolsLibsSketchAndProps).Run(0x818d70, 0x12a461e0, 0x818d70, 0x0)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder/container_setup.go:63 +0x2a8
github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder.runCommands(0x12a461e0, 0x12843b9c, 0x22, 0x22, 0x1, 0x0, 0x0)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder/builder.go:191 +0xc4
github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder.(*Builder).Run(0x12843cc0, 0x12a461e0, 0x58b470, 0x12a127d0)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder/builder.go:109 +0x98c
github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder.RunBuilder(0x12a461e0, 0x0, 0x58b470)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder/builder.go:207 +0x24
github.com/arduino/arduino-cli/commands/compile.run(0x128d5400, 0x129600e0, 0x1, 0x3)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/commands/compile/compile.go:240 +0x1090
github.com/arduino/arduino-cli/vendor/github.com/spf13/cobra.(*Command).execute(0x128d5400, 0x129600a0, 0x3, 0x4, 0x128d5400, 0x129600a0)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/spf13/cobra/command.go:766 +0x20c
github.com/arduino/arduino-cli/vendor/github.com/spf13/cobra.(*Command).ExecuteC(0x128d4c80, 0x1295c3c0, 0x128d5900, 0x128d5540)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/spf13/cobra/command.go:852 +0x20c
github.com/arduino/arduino-cli/vendor/github.com/spf13/cobra.(*Command).Execute(0x128d4c80, 0x3cecc, 0x440a14)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/spf13/cobra/command.go:800 +0x1c
main.main()
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/main.go:30 +0x18

Here is the output with the --debug flag:

~$ ./arduino-cli compile --fqbn anet:avr:anet Marlin/ --debug
INFO[0000] Checking for config file in: /home/renaud/.arduino15/arduino-cli.yaml
INFO[0000] Reading configuration from /home/renaud/.arduino15/arduino-cli.yaml
INFO[0000] Checking if CLI is Bundled into the IDE
INFO[0000] Candidate IDE Directory: /home/renaud
INFO[0000] CLI is not bundled into the IDE
INFO[0000] Checking for config in: /arduino-cli.yaml
INFO[0000] error loading                                 error="open /arduino-cli.yaml: no such file or directory"
INFO[0000] Checking for config in: /home/arduino-cli.yaml
INFO[0000] error loading                                 error="open /home/arduino-cli.yaml: no such file or directory"
INFO[0000] Checking for config in: /home/renaud/arduino-cli.yaml
INFO[0000] error loading                                 error="open /home/renaud/arduino-cli.yaml: no such file or directory"
INFO[0000] Configuration set
INFO[0000] arduino-cli-0.3.6-alpha.preview
INFO[0000] Starting root command preparation (`arduino`)
INFO[0000] Formatter set
INFO[0000] Executing `arduino compile`
INFO[0000] Initializing package manager
INFO[0000] Loading hardware from: /home/renaud/.arduino15/packages
INFO[0000] Loading package Sanguino from: /home/renaud/.arduino15/packages/Sanguino/hardware
INFO[0000] Loading package arduino from: /home/renaud/.arduino15/packages/arduino/hardware
INFO[0000] Checking existence of 'tools' path: /home/renaud/.arduino15/packages/arduino/tools
INFO[0000] Loading tools from dir: /home/renaud/.arduino15/packages/arduino/tools
INFO[0000] Loading package builtin from: /home/renaud/.arduino15/packages/builtin
INFO[0000] Checking existence of 'tools' path: /home/renaud/.arduino15/packages/builtin/tools
INFO[0000] Loading tools from dir: /home/renaud/.arduino15/packages/builtin/tools
INFO[0000] Loaded tool                                   tool="builtin:ctags@5.8-arduino11"
INFO[0000] Loading hardware from: /home/renaud/Arduino/hardware
INFO[0000] Loading package anet from: /home/renaud/Arduino/hardware/anet
INFO[0000] Loaded platform                               platform="anet:avr@"
Ts: 1553687869 - Running: GenerateBuildPathIfMissing
Setting build path to /tmp/arduino-sketch-E96CAEBD9ABAE19B046369917BB51116
Ts: 1553687869 - Running: EnsureBuildPathExists
Ts: 1553687869 - Running: ContainerSetupHardwareToolsLibsSketchAndProps
Ts: 1553687869 - Running: AddAdditionalEntriesToContext
Ts: 1553687869 - Running: FailIfBuildPathEqualsSketchPath
Ts: 1553687869 - Running: HardwareLoader
Ts: 1553687869 - Running: PlatformKeysRewriteLoader
Ts: 1553687869 - Running: RewriteHardwareKeys
Ts: 1553687869 - Running: TargetBoardResolver
Ts: 1553687869 - Running: ToolsLoader
INFO[0000] Searching tools required for board anet:avr:anet
Ts: 1553687869 - Running: AddBuildBoardPropertyIfMissing
Ts: 1553687869 - Running: LibrariesLoader
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x34 pc=0x2cf560]

goroutine 1 [running]:
github.com/arduino/arduino-cli/arduino/cores.(*PlatformRelease).GetLibrariesDir(0x0, 0x17230)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/arduino/cores/cores.go:210 +0x2c
github.com/arduino/arduino-cli/arduino/libraries/librariesmanager.(*LibrariesManager).AddPlatformReleaseLibrariesDir(0x12c035e0, 0x0, 0x4)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/arduino/libraries/librariesmanager/librariesmanager.go:138 +0x1c
github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder.(*LibrariesLoader).Run(0x818d70, 0x12c341e0, 0x818d70, 0x0)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder/libraries_loader.go:62 +0x3f0
github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder.(*ContainerSetupHardwareToolsLibsSketchAndProps).Run(0x818d70, 0x12c341e0, 0x818d70, 0x0)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder/container_setup.go:63 +0x2a8
github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder.runCommands(0x12c341e0, 0x12a43b9c, 0x22, 0x22, 0x1, 0x0, 0x0)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder/builder.go:191 +0xc4
github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder.(*Builder).Run(0x12a43cc0, 0x12c341e0, 0x58b470, 0x12c084a0)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder/builder.go:109 +0x98c
github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder.RunBuilder(0x12c341e0, 0x0, 0x58b470)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/arduino/arduino-builder/builder.go:207 +0x24
github.com/arduino/arduino-cli/commands/compile.run(0x12ac9540, 0x12b4e0a0, 0x1, 0x4)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/commands/compile/compile.go:240 +0x1090
github.com/arduino/arduino-cli/vendor/github.com/spf13/cobra.(*Command).execute(0x12ac9540, 0x12b4e060, 0x4, 0x4, 0x12ac9540, 0x12b4e060)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/spf13/cobra/command.go:766 +0x20c
github.com/arduino/arduino-cli/vendor/github.com/spf13/cobra.(*Command).ExecuteC(0x12ac8dc0, 0x12b4a500, 0x12ac9a40, 0x12ac9680)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/spf13/cobra/command.go:852 +0x20c
github.com/arduino/arduino-cli/vendor/github.com/spf13/cobra.(*Command).Execute(0x12ac8dc0, 0x3cecc, 0x440a14)
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/vendor/github.com/spf13/cobra/command.go:800 +0x1c
main.main()
        /home/jenkins/workspace/arduino-cli/src/github.com/arduino/arduino-cli/main.go:30 +0x18

The problem does not appear when arduino:avr is installed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions