FS#39004 - [arm-none-eabi-gcc] nano.specs: No such file or directory

Attached to Project: Community Packages
Opened by sjung (tummychow) - Sunday, 23 February 2014, 07:33 GMT
Last edited by Anatol Pomozov (anatolik) - Sunday, 09 November 2014, 00:51 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Anatol Pomozov (anatolik)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No


When compiling with --specs=nano.specs, arm-none-eabi-gcc fails with
arm-none-eabi-gcc: error: nano.specs: No such file or directory
nano.specs is the spec file for newlib-nano in GCC arm embedded.

Additional info:
Version is 4.8.2-8. arm-none-eabi-binutils is also installed at version 2.24-1. The error occurs with or without binutils installed.
This error was not present in the AUR version gcc-arm-none-eabi (v 4.8.2-7). I only encountered it after noticing that the package had been moved to community. I removed the AUR version, installed the new version and then encountered this error.
pacman -Ql confirms that nano.specs was not installed in the community version (nano.specs does not appear anywhere in the list). pacman -Ql also confirms that it was installed in the AUR version, in /usr/arm-none-eabi/lib and various subdirectories.

Steps to reproduce:
Add the flag --specs=nano.specs to any invocation of arm-none-eabi-gcc and the error will be reproduced.
This task depends upon

Closed by  Anatol Pomozov (anatolik)
Sunday, 09 November 2014, 00:51 GMT
Reason for closing:  Fixed
Additional comments about closing:  Fixed in arm-none-eabi-gcc 4.9.2-3 and arm-none-eabi-newlib 2.1.0-2
Comment by Anatol Pomozov (anatolik) - Sunday, 23 February 2014, 15:49 GMT
--specs=nano.specs enables newlib-nano, a newlib derivative. And I believe newlib-nano is not included into any newlib release.

What ubuntu package is used for gcc-arm-none-eabi? I am looking at http://packages.ubuntu.com/trusty/amd64/gcc-arm-none-eabi/filelist and http://packages.ubuntu.com/trusty/all/libnewlib-arm-none-eabi/filelist and do not see nano.specs there.
Comment by sjung (tummychow) - Sunday, 23 February 2014, 18:47 GMT
No, I don't think newlib-nano is part of newlib. It's part of ARM GCC: http://community.arm.com/groups/embedded/blog/2013/01/21/shrink-your-mcu-code-size-with-gcc-arm-embedded-47
I'm not sure what package it should be in, but I know it was in the AUR package. Pacman queries are attached in case you want to see pacman -Ql on the AUR package.

And I'm not sure about the Ubuntu packages, sorry. I've never used ubuntu. I can find nano.specs in the launchpad tarball https://launchpad.net/gcc-arm-embedded/4.8/4.8-2013-q4-major/+download/gcc-arm-none-eabi-4_8-2013q4-20131204-linux.tar.bz2 at arm-none-eabi/lib. There's a PPA on launchpad which is apparently equivalent to the tarball, but I don't know if it's related to the ubuntu packages you listed.
   arm.txt (2.1 KiB)
Comment by Anatol Pomozov (anatolik) - Sunday, 23 February 2014, 19:09 GMT
According to this question https://answers.launchpad.net/gcc-arm-embedded/+question/244125 newlib-nano does not have any git repo but the author tries to merge it to newlib. It means in one of the future versions newlib-nano will be part of arm-none-eabi-gcc [community] package (we compile it with newlib).

As newlib-nano is not part of newlib then nano.specs will not be added to arm-none-eabi-gcc package. There are 2 ways for you to get nano.specs:

- the right way is not create arm-none-eabi-newlib-nano AUR package that just provides this library. You can find newlib-nano sources in https://launchpad.net/gcc-arm-embedded/4.8/4.8-2013-q4-major/+download/gcc-arm-none-eabi-4_8-2013q4-20131204-src.tar.bz2 Then use arm cross toolset from [community] to compile the library.

- the fastest way is to restore old precompile package. Here is its source http://pkgbuild.com/git/aur-mirror.git/tree/gcc-arm-none-eabi/PKGBUILD?id=3b9a29d8d39853a5e5215fcf7682eb52e2f1e36f I suggest to change its name to arm-none-eabi-gcc-bin
Comment by sjung (tummychow) - Sunday, 23 February 2014, 19:16 GMT
Alright, thanks for the link to that question. I'll restore to the older package for now and keep an eye out for updates. This can be closed.
Comment by Anatol Pomozov (anatolik) - Thursday, 30 October 2014, 07:46 GMT
I reconsider adding newlib and newlib-nano as separate packages. After that you should be able to specify nano.spec.

Here is additional discussion related to this topic https://bbs.archlinux.org/viewtopic.php?id=188999