Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 937614 - dev-embedded/arduino-builder-1.5.4-r1 / dev-embedded/arduino-1.8.19-r1: missing -tools
Summary: dev-embedded/arduino-builder-1.5.4-r1 / dev-embedded/arduino-1.8.19-r1: missi...
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal major
Assignee: Embedded Gentoo Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-08-09 10:09 UTC by VK2DIY
Modified: 2024-08-10 01:21 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description VK2DIY 2024-08-09 10:09:54 UTC
Arduino IDE doesn't work.

Apparently because arduino-builder doesn't have -tools

However, it seems for AVR the entire toolchain documentation is broken right now, I'm not sure where else to file this.

Reproducible: Always

Steps to Reproduce:
1. Had some platformio issues
2. Emerge arduino IDE to test hardware directly
3. Doesn't work, spewing errors in Arduino IDE console about arduino-builder and "-tools" not specified.
-----------------------------------------------------------------------------
Parameter 'tools' is mandatory
Usage of /usr/share/arduino/arduino-builder:
  -build-cache string
    	builds of 'core.a' are saved into this folder to be cached and reused
  -build-options-file string
    	Instead of specifying --hardware, --tools etc every time, you can load all such options from a file
  -build-path string
    	build path
  -built-in-libraries value
    	Specify a built-in 'libraries' folder. These are low priority libraries. Can be added multiple times for specifying multiple built-in 'libraries' folders
  -code-complete-at string
    	output code completions for sketch at a specific location. Location format is "file:line:col"
  -compile
    	compiles the given sketch
  -core-api-version string
    	version of core APIs (used to populate ARDUINO #define) (default "10600")
  -daemon
    	daemonizes and serves its functions via rpc
  -debug-level int
    	Turns on debugging messages. The higher, the chattier (default 5)
  -dump-prefs
    	dumps build properties used when compiling
  -experimental
    	enables experimental features
  -fqbn string
    	fully qualified board name
  -hardware value
    	Specify a 'hardware' folder. Can be added multiple times for specifying multiple 'hardware' folders
  -ide-version string
    	[deprecated] use 'core-api-version' instead (default "10600")
  -jobs int
    	specify how many concurrent gcc processes should run at the same time. Defaults to the number of available cores on the running machine
  -libraries value
    	Specify a 'libraries' folder. Can be added multiple times for specifying multiple 'libraries' folders
  -logger string
    	Sets type of logger. Available values are 'human', 'humantags', 'machine' (default "human")
  -prefs value
    	Specify a custom preference. Can be added multiple times for specifying multiple custom preferences
  -preprocess
    	preprocess the given sketch
  -quiet
    	if 'true' doesn't print any warnings or progress or whatever
  -tools value
    	Specify a 'tools' folder. Can be added multiple times for specifying multiple 'tools' folders
  -trace
    	traces the whole process lifecycle
  -verbose
    	if 'true' prints lots of stuff
  -version
    	prints version and exits
  -vid-pid string
    	specify to use vid/pid specific build properties, as defined in boards.txt
  -warnings string
    	Sets warnings level. Available values are 'none', 'default', 'more' and 'all'

Error compiling for board Arduino Nano.
----------------------------------------------------------------------------



4. Can't find tools dir, so re-emerge arduino-builder to see if it pops up in the emerge log
5. arduino-builder shows words like "you are missing the toolchain, you must run crossdev -s4"
6. Go to the wiki at https://wiki.gentoo.org/wiki/Arduino and follow that, running 
Actual Results:  
Arduino IDE doesn't work, due to the arduino-builder bug, and the ebuild tells us we need to run crossdev, so we try to follow the docs on the wiki.

But running that exact command fails...

# crossdev -s4 --stable --portage --verbose --target avr
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 * crossdev version:      20240209
 * Host Portage ARCH:     amd64
 * Host Portage System:   x86_64-pc-linux-gnu (i686-pc-linux-gnu x86_64-pc-linux-gnu)
 * Target Portage ARCH:   *
 * Target System:         avr
 * Stage:                 4 (C/C++ compiler)
 * USE=multilib:          yes
 * Target ABIs:           default

 * binutils:              binutils-[stable]
 * gcc:                   gcc-[stable]
 * libc:                  avr-libc-[stable]

 * CROSSDEV_OVERLAY:      /var/db/repos/portage-crossdev
 * PORT_LOGDIR:           /var/log/portage
 * PORTAGE_CONFIGROOT:    /
 * Portage flags:          --verbose
  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~ 
 * leaving metadata/layout.conf alone in /var/db/repos/portage-crossdev
  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~ 
!!! WARNING - Cannot auto-configure CHOST avr;
!!! You should edit /usr/avr/etc/portage/make.conf /usr/avr/etc/portage/profile/make.defaults /usr/avr/etc/portage/profile/use.force
!!! by hand to complete your configuration.
!!!  No LIBC is known for this target.
!!!  No KERNEL is known for this target.
 * Log: /var/log/portage/cross-avr-binutils.log
 * Emerging cross-binutils ...                                                                                                                                                          [ ok ]
 * Log: /var/log/portage/cross-avr-gcc-stage1.log
 * Emerging cross-gcc-stage1 ...


Expected Results:  
Arduino IDE compiles file, uploads fine.

If ebuild sends you to run a command manually, the command works and/or the documentation is up to date.