tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Cross-compilation problems

I'm trying to cross-compile some packages on a x86_64 host for a
earmv7hf target.

I'm following Taylor R. Campbell HOWTE (2017/03/05) but I ran into
several problems.

I had first to set 


in /etc/mk.conf so that libnbcompat could simply built, choking on what
is introduced by -D_FORTIFY_SOURCE=2.

When trying to create the first needed package: cross-libtool-base,
the configure script chokes because it is unable to create an

Indeed, the cross-compiler is invoked with --sysroot=/ and this prevents
it from finding the crt0.o etc. to link the executable with.

So I force it by adding in the Makefile:


Then apparently it finds the crt0.o etc. but invokes the native loader
to determine if it's an executable! This:

/usr/lib/ file not recognized: File format not recognized
collect2: error: ld returned 1 exit status

I wonder what I'm doing wrong or am I the sole one to try
cross-compilation with pkgsrc?

Here are the relevant bits in my /etc/mk.conf:

# pkgsrc (from Taylor R. Campbell HOWTO)



.if !empty{USE_CROSS_COMPILE:M[yY][eE][sS]}

# Can't be set on cmd line.
MACHINE_ARCH= earmv7hf

# Added by me: FORTIFY_SOURCE doesn't work with libtool.

# Matrix binaries for target binaries (target not mentioned).
TOOLDIR= /data/m/tmp/olimex/tooldir.NetBSD-8.0-amd64
CROSS_DESTDIR= /data/m/tmp/olimex/destdir.evbarm

PACKAGES= /data/m/telegstn/${MACHINE_ARCH}


If somebody has any clue about the @!!!**@! configure, automake and all
this... stuff, I'd be happy to hear.

        Thierry Laronde <tlaronde +AT+ polynum +dot+ com>
Key fingerprint = 0FF7 E906 FBAF FE95 FD89  250D 52B1 AE95 6006 F40C

Home | Main Index | Thread Index | Old Index