LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (http://www.linuxquestions.org/questions/slackware-14/)
-   -   Can't compile Slackware ARM x-toolchain on 14.0 32 bit. (http://www.linuxquestions.org/questions/slackware-14/cant-compile-slackware-arm-x-toolchain-on-14-0-32-bit-4175445595/)

Linux.tar.gz 01-14-2013 04:30 PM

Can't compile Slackware ARM x-toolchain on 14.0 32 bit.
 
Hi!

I'm compiling the 14.0 toolchain on a fresh 32bit unpatched 14.0
ftp://ftp.armedslack.org/slackwarear...n_oldversions/

I run into a:

ar: can't set BFD default target to `i486-slackware-linux-gnu': Invalid bfd target

It's working fine on x86_64 targets.

padeen 01-15-2013 07:56 PM

I've never built this, but it looks like Slackware's man page for ar is broken since the bfdname section is missing. Here is an online one for V2.22, down the bottom is the specification for the --target parameter.

Having a quick look at the target specification link, I guess that your bfdtarget is not correct (as indeed ar is telling you); possibly a more likely candidate could be i486-linux-gnu? What does the build log say for the x86_64 build?

Linux.tar.gz 02-06-2013 01:42 PM

Well, x86_64.

Linux.tar.gz 02-06-2013 01:46 PM

1 Attachment(s)
Here's the log.

padeen 02-06-2013 07:23 PM

The error occurs at lines 1429 & 1476. Libbfd is described at Wikipedia and there are plenty of hits from google.

It's got to be the "slackware" component of the name, right? It's set at line 130 (i.e. log line 130) for build and host systems and then the target system is set. Perhaps you need to edit the Makefile and insert a sed clause that removes the "-slackware" component so that the BFD clause changes from i486-slackware-linux-gnu to i486-linux-gnu, assuming it is set with a make or shell command.

Could be the blind leading the blind here, but that would be my first attempt to fix it. Also, I happened to note while going through some man pages the following
Code:

archive_entry_uname [] (3)  - functions for manipulating archive entry descriptions
archive_entry_uname [] (3p)  - functions for manipulating archive entry descriptions
  and
libarchive []        (3)  - functions for reading and writing streaming archives
libarchive []        (3p)  - functions for reading and writing streaming archives
libarchive []        (5)  - formats - archive formats supported by the libarchive library
libarchive_internals [] (3)  - description of libarchive internal interfaces
libarchive_internals [] (3p)  - description of libarchive internal interfaces

which may be relevant since your errors are coming from ar.

Good luck.

Linux.tar.gz 02-10-2013 03:29 PM

Thanks for help.

I took the lazy way and compiled it on a -current. It worked.

gnashley 02-11-2013 01:53 AM

'i486-slackware-linux-gnu' I'd say that more likely it's the '-gnu' part that causes the problem. binutils and others expect 'properly formed' target name which include -gnu or other libc names. Slackware, of course does not have that, so tools which have their own routines for determining the arch complain and fail over it. A small patch will fix the sources, or linking all references to i486-slackware-linux to i486-slackware-linux-gnu.

the3dfxdude 05-04-2013 06:35 PM

The binutils-2.22.52.0.2 in arm 14.0's x-toolchain seems to have a problem building on slackware x86. I updated to binutils-2.23.52.0.1 in x-toolchain current, and the problem goes away. I'll try out my tool-chain and hope it works. I want a locked down tool-chain on the latest stable version because I don't think I will be changing slackware arm versions on my raspberry pi ever. So I want to make it easy to know what was used than to remember what current meant.

Linux.tar.gz 05-10-2013 06:01 PM

Thanks for the tip.


All times are GMT -5. The time now is 08:09 AM.