Cannot cross-compile libgo

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
ybilta
Posts: 3
Joined: Mon Jan 13, 2014 12:01 am

Cannot cross-compile libgo

Post by ybilta »

I've been trying to make a cross compiler for my operating system and I have tried to compile libgo along with it. I have been following the instructions at http://wiki.osdev.org/GCC_Cross-Compiler and added the line to make all-target-libgo after I make all-target-libgcc. The operation errors out when trying to make libffi, the console says that the C compiler cannot create executables. What am I doing wrong or is it even possible to compile libgo without the default headers? Below is the console output and the config.log for libffi

Code: Select all

ybilta@ybilta-VX7SX:~/Development/gcc-cross/gcc-obj$ make all-target-libgo
make[1]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/libiberty'
make[2]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/libiberty/testsuite'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/libiberty/testsuite'
make[1]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/libiberty'
make[1]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/lto-plugin'
make  all-am
make[2]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/lto-plugin'
make[2]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/lto-plugin'
make[1]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/lto-plugin'
make[1]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/intl'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/intl'
make[1]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/build-x86_64-unknown-linux-gnu/libiberty'
make[2]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/build-x86_64-unknown-linux-gnu/libiberty/testsuite'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/build-x86_64-unknown-linux-gnu/libiberty/testsuite'
make[1]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/build-x86_64-unknown-linux-gnu/libiberty'
make[1]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/build-x86_64-unknown-linux-gnu/fixincludes'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/build-x86_64-unknown-linux-gnu/fixincludes'
make[1]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/zlib'
true "AR_FLAGS=rc" "CC_FOR_BUILD=gcc" "CFLAGS=-g -O2" "CXXFLAGS=-g -O2" "CFLAGS_FOR_BUILD=-g -O2" "CFLAGS_FOR_TARGET=-g -O2" "INSTALL=/usr/bin/install -c" "INSTALL_DATA=/usr/bin/install -c -m 644" "INSTALL_PROGRAM=/usr/bin/install -c" "INSTALL_SCRIPT=/usr/bin/install -c" "LDFLAGS=-static-libstdc++ -static-libgcc " "LIBCFLAGS=-g -O2" "LIBCFLAGS_FOR_TARGET=-g -O2" "MAKE=make" "MAKEINFO=/home/ybilta/Development/gcc-cross/gcc-4.8.2/missing makeinfo --split-size=5000000 " "PICFLAG=" "PICFLAG_FOR_TARGET=" "SHELL=/bin/bash" "EXPECT=expect" "RUNTEST=runtest" "RUNTESTFLAGS=" "exec_prefix=/opt/cross" "infodir=/opt/cross/share/info" "libdir=/opt/cross/lib" "prefix=/opt/cross" "tooldir=/opt/cross/i686-elf" "AR=ar" "AS=as" "CC=gcc" "CXX=g++" "LD=ld" "LIBCFLAGS=-g -O2" "NM=nm" "PICFLAG=" "RANLIB=ranlib" "DESTDIR=" DO=all multi-do # make
make[1]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/zlib'
make[1]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/libbacktrace'
make  all-am
make[2]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/libbacktrace'
true  DO=all multi-do # make
make[2]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/libbacktrace'
make[1]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/libbacktrace'
make[1]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/libcpp'
test -f config.h || (rm -f stamp-h1 && make stamp-h1)
make[1]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/libcpp'
make[1]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/libdecnumber'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/libdecnumber'
make[1]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/fixincludes'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/fixincludes'
make[1]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/gcc'
make[1]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/gcc'
Checking multilib configuration for libgcc...
make[1]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/i686-elf/libgcc'
# If this is the top-level multilib, build all the other
# multilibs.
make[2]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/i686-elf/libgcc'
if [ -z "" ]; then \
	  true; \
	else \
	  rootpre=`${PWDCMD-pwd}`/; export rootpre; \
	  srcrootpre=`cd ../../../gcc-4.8.2/libgcc; ${PWDCMD-pwd}`/; export srcrootpre; \
	  lib=`echo "${rootpre}" | sed -e 's,^.*/\([^/][^/]*\)/$,\1,'`; \
	  compiler="/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/xgcc -B/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/ -B/opt/cross/i686-elf/bin/ -B/opt/cross/i686-elf/lib/ -isystem /opt/cross/i686-elf/include -isystem /opt/cross/i686-elf/sys-include   "; \
	  for i in `${compiler} --print-multi-lib 2>/dev/null`; do \
	    dir=`echo $i | sed -e 's/;.*$//'`; \
	    if [ "${dir}" = "." ]; then \
	      true; \
	    else \
	      if [ -d ../${dir}/${lib} ]; then \
		flags=`echo $i | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`; \
		if (cd ../${dir}/${lib}; make "AR=/opt/cross/i686-elf/bin/ar" "AR_FLAGS=rc" "CC=/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/xgcc -B/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/ -B/opt/cross/i686-elf/bin/ -B/opt/cross/i686-elf/lib/ -isystem /opt/cross/i686-elf/include -isystem /opt/cross/i686-elf/sys-include   " "CFLAGS=-g -O2" "DESTDIR=" "EXTRA_OFILES=" "HDEFINES=" "INSTALL=/usr/bin/install -c" "INSTALL_DATA=/usr/bin/install -c -m 644" "INSTALL_PROGRAM=/usr/bin/install -c" "LDFLAGS=" "LOADLIBES=" "RANLIB=/opt/cross/i686-elf/bin/ranlib" "SHELL=/bin/bash" "prefix=/opt/cross" "exec_prefix=/opt/cross" "libdir=/opt/cross/lib" "libsubdir=/opt/cross/lib/gcc/i686-elf/4.8.2" "tooldir=/opt/cross/i686-elf" \
				CFLAGS="-g -O2 ${flags}" \
				CCASFLAGS=" ${flags}" \
				FCFLAGS=" ${flags}" \
				FFLAGS=" ${flags}" \
				ADAFLAGS=" ${flags}" \
				prefix="/opt/cross" \
				exec_prefix="/opt/cross" \
				GCJFLAGS=" ${flags}" \
				GOCFLAGS="-O2 -g ${flags}" \
				CXXFLAGS="-g -O2 ${flags}" \
				LIBCFLAGS="-g -O2 ${flags}" \
				LIBCXXFLAGS="-g -O2 -fno-implicit-templates ${flags}" \
				LDFLAGS=" ${flags}" \
				MULTIFLAGS="${flags}" \
				DESTDIR="" \
				INSTALL="/usr/bin/install -c" \
				INSTALL_DATA="/usr/bin/install -c -m 644" \
				INSTALL_PROGRAM="/usr/bin/install -c" \
				INSTALL_SCRIPT="/usr/bin/install -c" \
				all); then \
		  true; \
		else \
		  exit 1; \
		fi; \
	      else true; \
	      fi; \
	    fi; \
	  done; \
	fi
make[2]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/i686-elf/libgcc'
# Early copyback; see "all" above for the rationale.  The
# early copy is necessary so that the gcc -B options find
# the right startup files when linking shared libgcc.
/bin/bash ../../../gcc-4.8.2/libgcc/../mkinstalldirs ../.././gcc
parts="crtbegin.o crtend.o";					\
	for file in $parts; do					\
	  rm -f ../.././gcc/$file;		\
	  /usr/bin/install -c -m 644 $file ../.././gcc/;	\
	  case $file in 					\
	    *.a)						\
	      /opt/cross/i686-elf/bin/ranlib ../.././gcc/$file ;;	\
	  esac;							\
	done
dest=../.././gcc/include/tmp$$-unwind.h; \
	cp unwind.h $dest; \
	chmod a+r $dest; \
	sh ../../../gcc-4.8.2/libgcc/../move-if-change $dest ../.././gcc/include/unwind.h
# Now that we have built all the objects, we need to copy
# them back to the GCC directory.  Too many things (other
# in-tree libraries, and DejaGNU) know about the layout
# of the build tree, for now.
make install-leaf DESTDIR=../.././gcc \
	  slibdir= libsubdir= MULTIOSDIR=.
make[2]: Entering directory `/home/ybilta/Development/gcc-cross/gcc-obj/i686-elf/libgcc'
/bin/bash ../../../gcc-4.8.2/libgcc/../mkinstalldirs ../.././gcc
/usr/bin/install -c -m 644 libgcc.a ../.././gcc/
chmod 644 ../.././gcc/libgcc.a
/opt/cross/i686-elf/bin/ranlib ../.././gcc/libgcc.a
/usr/bin/install -c -m 644 libgcov.a ../.././gcc/
chmod 644 ../.././gcc/libgcov.a
/opt/cross/i686-elf/bin/ranlib ../.././gcc/libgcov.a
parts="crtbegin.o crtend.o";				\
	for file in $parts; do					\
	  rm -f ../.././gcc/$file;		\
	  /usr/bin/install -c -m 644 $file ../.././gcc/;	\
	  case $file in 					\
	    *.a)						\
	      /opt/cross/i686-elf/bin/ranlib ../.././gcc/$file ;;	\
	  esac;							\
	done
make[2]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/i686-elf/libgcc'
make[1]: Leaving directory `/home/ybilta/Development/gcc-cross/gcc-obj/i686-elf/libgcc'
Checking multilib configuration for libffi...
Configuring in i686-elf/libffi
configure: loading cache ./config.cache
checking build system type... x86_64-unknown-linux-gnu
checking host system type... i686-pc-elf
checking target system type... i686-pc-elf
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for i686-elf-strip... /opt/cross/i686-elf/bin/strip
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... mawk
checking whether make sets $(MAKE)... yes
checking for makeinfo... /home/ybilta/Development/gcc-cross/gcc-4.8.2/missing makeinfo
checking for modern makeinfo... no
checking generated-files-in-srcdir... no
checking for i686-elf-gcc...  /home/ybilta/Development/gcc-cross/gcc-obj/./gcc/xgcc -B/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/ -B/opt/cross/i686-elf/bin/ -B/opt/cross/i686-elf/lib/ -isystem /opt/cross/i686-elf/include -isystem /opt/cross/i686-elf/sys-include   
checking for C compiler default output file name... 
configure: error: in `/home/ybilta/Development/gcc-cross/gcc-obj/i686-elf/libffi':
configure: error: C compiler cannot create executables
See `config.log' for more details.
make: *** [configure-target-libffi] Error 1
config.log for libffi

Code: Select all

This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by libffi configure 3.0.11, which was
generated by GNU Autoconf 2.64.  Invocation command line was

  $ /home/ybilta/Development/gcc-cross/gcc-4.8.2/libffi/configure --cache-file=./config.cache --enable-multilib --with-cross-host=x86_64-unknown-linux-gnu --prefix=/opt/cross --disable-nls --without-headers --enable-languages=c,c++,go,lto --program-transform-name=s&^&i686-elf-& --disable-option-checking --with-target-subdir=i686-elf --build=x86_64-unknown-linux-gnu --host=i686-elf --target=i686-elf --srcdir=../../../gcc-4.8.2/libffi

## --------- ##
## Platform. ##
## --------- ##

hostname = ybilta-VX7SX
uname -m = x86_64
uname -r = 3.13.0-24-generic
uname -s = Linux
uname -v = #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014

/usr/bin/uname -p = unknown
/bin/uname -X     = unknown

/bin/arch              = unknown
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = unknown
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /sbin
PATH: /bin
PATH: /usr/games
PATH: /usr/local/games


## ----------- ##
## Core tests. ##
## ----------- ##

configure:2367: loading cache ./config.cache
configure:2519: checking build system type
configure:2533: result: x86_64-unknown-linux-gnu
configure:2553: checking host system type
configure:2566: result: i686-pc-elf
configure:2586: checking target system type
configure:2599: result: i686-pc-elf
configure:2646: checking for a BSD-compatible install
configure:2714: result: /usr/bin/install -c
configure:2725: checking whether build environment is sane
configure:2775: result: yes
configure:2824: checking for i686-elf-strip
configure:2851: result: /opt/cross/i686-elf/bin/strip
configure:2916: checking for a thread-safe mkdir -p
configure:2955: result: /bin/mkdir -p
configure:2968: checking for gawk
configure:2995: result: mawk
configure:3006: checking whether make sets $(MAKE)
configure:3028: result: yes
configure:3114: checking for makeinfo
configure:3141: result: /home/ybilta/Development/gcc-cross/gcc-4.8.2/missing makeinfo
configure:3151: checking for modern makeinfo
configure:3166: result: no
configure:3189: checking generated-files-in-srcdir
configure:3202: result: no
configure:3228: checking for i686-elf-gcc
configure:3255: result:  /home/ybilta/Development/gcc-cross/gcc-obj/./gcc/xgcc -B/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/ -B/opt/cross/i686-elf/bin/ -B/opt/cross/i686-elf/lib/ -isystem /opt/cross/i686-elf/include -isystem /opt/cross/i686-elf/sys-include   
configure:3524: checking for C compiler version
configure:3533:  /home/ybilta/Development/gcc-cross/gcc-obj/./gcc/xgcc -B/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/ -B/opt/cross/i686-elf/bin/ -B/opt/cross/i686-elf/lib/ -isystem /opt/cross/i686-elf/include -isystem /opt/cross/i686-elf/sys-include    --version >&5
xgcc (GCC) 4.8.2
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:3544: $? = 0
configure:3533:  /home/ybilta/Development/gcc-cross/gcc-obj/./gcc/xgcc -B/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/ -B/opt/cross/i686-elf/bin/ -B/opt/cross/i686-elf/lib/ -isystem /opt/cross/i686-elf/include -isystem /opt/cross/i686-elf/sys-include    -v >&5
Reading specs from /home/ybilta/Development/gcc-cross/gcc-obj/./gcc/specs
COLLECT_GCC=/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/xgcc
COLLECT_LTO_WRAPPER=/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/lto-wrapper
Target: i686-elf
Configured with: ../gcc-4.8.2/configure --target=i686-elf --prefix=/opt/cross --disable-nls --enable-languages=c,c++,go --without-headers
Thread model: single
gcc version 4.8.2 (GCC) 
configure:3544: $? = 0
configure:3533:  /home/ybilta/Development/gcc-cross/gcc-obj/./gcc/xgcc -B/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/ -B/opt/cross/i686-elf/bin/ -B/opt/cross/i686-elf/lib/ -isystem /opt/cross/i686-elf/include -isystem /opt/cross/i686-elf/sys-include    -V >&5
xgcc: error: unrecognized command line option '-V'
xgcc: fatal error: no input files
compilation terminated.
configure:3544: $? = 1
configure:3533:  /home/ybilta/Development/gcc-cross/gcc-obj/./gcc/xgcc -B/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/ -B/opt/cross/i686-elf/bin/ -B/opt/cross/i686-elf/lib/ -isystem /opt/cross/i686-elf/include -isystem /opt/cross/i686-elf/sys-include    -qversion >&5
xgcc: error: unrecognized command line option '-qversion'
xgcc: fatal error: no input files
compilation terminated.
configure:3544: $? = 1
configure:3564: checking for C compiler default output file name
configure:3586:  /home/ybilta/Development/gcc-cross/gcc-obj/./gcc/xgcc -B/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/ -B/opt/cross/i686-elf/bin/ -B/opt/cross/i686-elf/lib/ -isystem /opt/cross/i686-elf/include -isystem /opt/cross/i686-elf/sys-include    -g -O2   conftest.c  >&5
/opt/cross/i686-elf/bin/ld: cannot find crt0.o: No such file or directory
/opt/cross/i686-elf/bin/ld: cannot find -lg
/opt/cross/i686-elf/bin/ld: cannot find -lc
collect2: error: ld returned 1 exit status
configure:3590: $? = 1
configure:3627: result: 
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "libffi"
| #define PACKAGE_TARNAME "libffi"
| #define PACKAGE_VERSION "3.0.11"
| #define PACKAGE_STRING "libffi 3.0.11"
| #define PACKAGE_BUGREPORT "http://gcc.gnu.org/bugs.html"
| #define PACKAGE_URL ""
| #define PACKAGE "libffi"
| #define VERSION "3.0.11"
| /* end confdefs.h.  */
| 
| int
| main ()
| {
| 
|   ;
|   return 0;
| }
configure:3633: error: in `/home/ybilta/Development/gcc-cross/gcc-obj/i686-elf/libffi':
configure:3637: error: C compiler cannot create executables
See `config.log' for more details.

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv_build=x86_64-unknown-linux-gnu
ac_cv_env_CCASFLAGS_set=
ac_cv_env_CCASFLAGS_value=
ac_cv_env_CCAS_set=
ac_cv_env_CCAS_value=
ac_cv_env_CPPFLAGS_set=set
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_build_alias_set=set
ac_cv_env_build_alias_value=x86_64-unknown-linux-gnu
ac_cv_env_host_alias_set=set
ac_cv_env_host_alias_value=i686-elf
ac_cv_env_target_alias_set=set
ac_cv_env_target_alias_value=i686-elf
ac_cv_host=i686-pc-elf
ac_cv_path_install='/usr/bin/install -c'
ac_cv_path_mkdir=/bin/mkdir
ac_cv_prog_AWK=mawk
ac_cv_prog_CC=' /home/ybilta/Development/gcc-cross/gcc-obj/./gcc/xgcc -B/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/ -B/opt/cross/i686-elf/bin/ -B/opt/cross/i686-elf/lib/ -isystem /opt/cross/i686-elf/include -isystem /opt/cross/i686-elf/sys-include   '
ac_cv_prog_MAKEINFO='/home/ybilta/Development/gcc-cross/gcc-4.8.2/missing makeinfo'
ac_cv_prog_STRIP=/opt/cross/i686-elf/bin/strip
ac_cv_prog_make_make_set=yes
ac_cv_target=i686-pc-elf
gcc_cv_prog_makeinfo_modern=no

## ----------------- ##
## Output variables. ##
## ----------------- ##

AARCH64_FALSE=''
AARCH64_TRUE=''
ACLOCAL='${SHELL} /home/ybilta/Development/gcc-cross/gcc-4.8.2/missing --run aclocal-1.11'
ALLOCA=''
ALPHA_FALSE=''
ALPHA_TRUE=''
AMDEPBACKSLASH=''
AMDEP_FALSE=''
AMDEP_TRUE=''
AMTAR='${SHELL} /home/ybilta/Development/gcc-cross/gcc-4.8.2/missing --run tar'
AM_LTLDFLAGS=''
AM_RUNTESTFLAGS=''
AR='/opt/cross/i686-elf/bin/ar'
ARM_FALSE=''
ARM_TRUE=''
AUTOCONF='${SHELL} /home/ybilta/Development/gcc-cross/gcc-4.8.2/missing --run autoconf'
AUTOHEADER='${SHELL} /home/ybilta/Development/gcc-cross/gcc-4.8.2/missing --run autoheader'
AUTOMAKE='${SHELL} /home/ybilta/Development/gcc-cross/gcc-4.8.2/missing --run automake-1.11'
AVR32_FALSE=''
AVR32_TRUE=''
AWK='mawk'
BFIN_FALSE=''
BFIN_TRUE=''
BUILD_INFO_FALSE=''
BUILD_INFO_TRUE='#'
CC=' /home/ybilta/Development/gcc-cross/gcc-obj/./gcc/xgcc -B/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/ -B/opt/cross/i686-elf/bin/ -B/opt/cross/i686-elf/lib/ -isystem /opt/cross/i686-elf/include -isystem /opt/cross/i686-elf/sys-include   '
CCAS=''
CCASDEPMODE=''
CCASFLAGS=''
CCDEPMODE=''
CFLAGS='-g -O2'
CPP=''
CPPFLAGS=''
CYGPATH_W='echo'
DEFS=''
DEPDIR=''
DSYMUTIL=''
DUMPBIN=''
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP=''
EXEEXT=''
FFI_DEBUG_FALSE=''
FFI_DEBUG_TRUE=''
FFI_EXEC_TRAMPOLINE_TABLE=''
FFI_EXEC_TRAMPOLINE_TABLE_FALSE=''
FFI_EXEC_TRAMPOLINE_TABLE_TRUE=''
FGREP=''
FRV_FALSE=''
FRV_TRUE=''
GENINSRC_FALSE=''
GENINSRC_TRUE='#'
GREP=''
HAVE_LONG_DOUBLE=''
IA64_FALSE=''
IA64_TRUE=''
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
LD='/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/collect-ld'
LDFLAGS=''
LIBFFI_CRIS_FALSE=''
LIBFFI_CRIS_TRUE=''
LIBOBJS=''
LIBS=''
LIBTOOL=''
LIPO='i686-elf-lipo'
LN_S=''
LTLIBOBJS=''
M32R_FALSE=''
M32R_TRUE=''
M68K_FALSE=''
M68K_TRUE=''
MAINT=''
MAINTAINER_MODE_FALSE=''
MAINTAINER_MODE_TRUE=''
MAKEINFO='/bin/bash ../../../gcc-4.8.2/libffi/../missing makeinfo'
MIPS_FALSE=''
MIPS_TRUE=''
MKDIR_P='/bin/mkdir -p'
NM='/home/ybilta/Development/gcc-cross/gcc-obj/./gcc/nm'
NMEDIT=''
OBJDUMP='/opt/cross/i686-elf/bin/objdump'
OBJEXT=''
OTOOL64=''
OTOOL=''
PA64_HPUX_FALSE=''
PA64_HPUX_TRUE=''
PACKAGE='libffi'
PACKAGE_BUGREPORT='http://gcc.gnu.org/bugs.html'
PACKAGE_NAME='libffi'
PACKAGE_STRING='libffi 3.0.11'
PACKAGE_TARNAME='libffi'
PACKAGE_URL=''
PACKAGE_VERSION='3.0.11'
PATH_SEPARATOR=':'
PA_HPUX_FALSE=''
PA_HPUX_TRUE=''
PA_LINUX_FALSE=''
PA_LINUX_TRUE=''
POWERPC_AIX_FALSE=''
POWERPC_AIX_TRUE=''
POWERPC_DARWIN_FALSE=''
POWERPC_DARWIN_TRUE=''
POWERPC_FALSE=''
POWERPC_FREEBSD_FALSE=''
POWERPC_FREEBSD_TRUE=''
POWERPC_TRUE=''
RANLIB='/opt/cross/i686-elf/bin/ranlib'
S390_FALSE=''
S390_TRUE=''
SED='/bin/sed'
SET_MAKE=''
SH64_FALSE=''
SH64_TRUE=''
SHELL='/bin/bash'
SH_FALSE=''
SH_TRUE=''
SPARC_FALSE=''
SPARC_TRUE=''
STRIP='/opt/cross/i686-elf/bin/strip'
TARGET=''
TARGETDIR=''
TESTSUBDIR_FALSE=''
TESTSUBDIR_TRUE=''
TILE_FALSE=''
TILE_TRUE=''
VERSION='3.0.11'
X86_64_FALSE=''
X86_64_TRUE=''
X86_DARWIN_FALSE=''
X86_DARWIN_TRUE=''
X86_FALSE=''
X86_FREEBSD_FALSE=''
X86_FREEBSD_TRUE=''
X86_TRUE=''
X86_WIN32_FALSE=''
X86_WIN32_TRUE=''
X86_WIN64_FALSE=''
X86_WIN64_TRUE=''
ac_ct_CC=''
ac_ct_DUMPBIN=''
am__EXEEXT_FALSE=''
am__EXEEXT_TRUE=''
am__fastdepCCAS_FALSE=''
am__fastdepCCAS_TRUE=''
am__fastdepCC_FALSE=''
am__fastdepCC_TRUE=''
am__include=''
am__isrc=' -I$(srcdir)'
am__leading_dot='.'
am__quote=''
am__tar='${AMTAR} chof - "$$tardir"'
am__untar='${AMTAR} xf -'
bindir='${exec_prefix}/bin'
build='x86_64-unknown-linux-gnu'
build_alias='x86_64-unknown-linux-gnu'
build_cpu='x86_64'
build_os='linux-gnu'
build_vendor='unknown'
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
dvidir='${docdir}'
exec_prefix='NONE'
host='i686-pc-elf'
host_alias='i686-elf'
host_cpu='i686'
host_os='elf'
host_vendor='pc'
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
install_sh='${SHELL} /home/ybilta/Development/gcc-cross/gcc-4.8.2/install-sh'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
mkdir_p='/bin/mkdir -p'
multi_basedir='../../../gcc-4.8.2/libffi/..'
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='/opt/cross'
program_transform_name='s&^&i686-elf-&'
psdir='${docdir}'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target='i686-pc-elf'
target_alias='i686-elf'
target_cpu='i686'
target_os='elf'
target_vendor='pc'
toolexecdir=''
toolexeclibdir=''

## ----------- ##
## confdefs.h. ##
## ----------- ##

/* confdefs.h */
#define PACKAGE_NAME "libffi"
#define PACKAGE_TARNAME "libffi"
#define PACKAGE_VERSION "3.0.11"
#define PACKAGE_STRING "libffi 3.0.11"
#define PACKAGE_BUGREPORT "http://gcc.gnu.org/bugs.html"
#define PACKAGE_URL ""
#define PACKAGE "libffi"
#define VERSION "3.0.11"

configure: exit 77
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Libera.chat IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Re: Cannot cross-compile libgo

Post by Combuster »

Apparently, there's a need for a hosted toolchain rather than a freestanding one.

Or in other words, you can't build GO support if you lack a functional C library and runtime.
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
User avatar
hometue
Member
Member
Posts: 100
Joined: Thu Dec 19, 2013 1:40 am
Location: Asia, Singapore

Re: Cannot cross-compile libgo

Post by hometue »

Does that mean he has to already port newlib to his OS and make a compiler for his OS in order to port libgo?
CookieOS. Want a cookie? Its only black and white for now though, probably as bad as my baking skills.
ybilta
Posts: 3
Joined: Mon Jan 13, 2014 12:01 am

Re: Cannot cross-compile libgo

Post by ybilta »

That was my takeaway from it. Luckily I can still compile go source code without it. Hopefully I won't need its functionality unitil my os is ready to port newlib.
User avatar
Bender
Member
Member
Posts: 449
Joined: Wed Aug 21, 2013 3:53 am
Libera.chat IRC: bender|
Location: Asia, Singapore

Re: Cannot cross-compile libgo

Post by Bender »

hometue wrote:Does that mean he has to already port newlib to his OS and make a compiler for his OS in order to port libgo?
Not exactly. Instead I guess he needs to have a standard C library implementation. He could as well use glibc or pdclib (not sure about the latter if it follows the standard) or write his own.
"In a time of universal deceit - telling the truth is a revolutionary act." -- George Orwell
(R3X Runtime VM)(CHIP8 Interpreter OS)
Post Reply