[systemd-devel] Compiling systemd-207 for Mips

Colin Guthrie gmane at colin.guthr.ie
Tue Sep 24 07:50:31 PDT 2013


'Twas brillig, and praveenkumar jakati at 24/09/13 06:16 did gyre and
gimble:
> Hi,
> 
> I hope I posting my questions in the right forum. Please let me know if
> I am not.
> 
> I am new to systemd and I am trying to cross-compile the systemd-207 for
> the mips32 but I am facing below issues. Please help me to resolve the
> compilation issues.
> 
> When I have compiled for x86 machine in fedora 16, I am able to compile
> the systemd-207.
> 
> 
> Downloaded code
> from http://www.freedesktop.org/software/systemd/ version 207 and set
> the following environment variable to point to cross compiler.
> 
> export
> PATH=$PATH:/export/home/subhasp1/code/TCR_Head/.buildbox/opt/stbgcc-4.5.3-2.4/bin/
> export AR=mipsel-linux-ar
> export CPP=mipsel-linux-cpp
> export CC=mipsel-linux-gcc
> export LD=mipsel-linux-ld
> 
> 
> I am trying to configure as below .
> 
>  ./configure  --disable-tcpwrap   --disable-pam   --disable-audit  
> --disable-selinux  --disable-xz   --disable-acl  
> --disable-libcryptsetup  --host=mips32 --build=x86
> 
> 
> The output is as below:
> 
> checking for mips32-gcc... mipsel-linux-gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables...
> checking whether we are cross compiling... yes
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether mipsel-linux-gcc accepts -g... yes
> checking for mipsel-linux-gcc option to accept ISO C89... none needed
> checking how to run the C preprocessor... mipsel-linux-cpp
> checking for grep that handles long lines and -e... /bin/grep
> checking for egrep... /bin/grep -E
> checking for ANSI C header files... yes
> checking for sys/types.h... yes
> checking for sys/stat.h... yes
> checking for stdlib.h... yes
> checking for string.h... yes
> checking for memory.h... yes
> checking for strings.h... yes
> checking for inttypes.h... yes
> checking for stdint.h... yes
> checking for unistd.h... yes
> checking minix/config.h usability... no
> checking minix/config.h presence... no
> checking for minix/config.h... no
> checking whether it is safe to define __EXTENSIONS__... yes
> checking for special C compiler options needed for large files... no
> checking for _FILE_OFFSET_BITS value needed for large files... 64
> checking for a BSD-compatible install... /usr/bin/install -c
> checking whether build environment is sane... yes
> checking for mips32-strip... no
> checking for strip... strip
> configure: WARNING: using cross tools not prefixed with host triplet
> checking for a thread-safe mkdir -p... /bin/mkdir -p
> checking for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking for style of include used by make... GNU
> checking whether make supports nested variables... yes
> checking how to create a pax tar archive... gnutar
> checking dependency style of mipsel-linux-gcc... gcc3
> checking whether make supports nested variables... (cached) yes
> checking build system type... x86-unknown-none
> checking host system type... mips642-unknown-elf
> checking how to print strings... printf
> checking for a sed that does not truncate output... /bin/sed
> checking for fgrep... /bin/grep -F
> checking for ld used by mipsel-linux-gcc... mipsel-linux-ld
> checking if the linker (mipsel-linux-ld) is GNU ld... yes
> checking for BSD- or MS-compatible name lister (nm)... no
> checking for mips32-dumpbin... no
> checking for mips32-link... no
> checking for dumpbin... no
> checking for link... link -dump
> checking the name lister (nm) interface... BSD nm
> checking whether ln -s works... yes
> checking the maximum length of command line arguments... 1572864
> checking whether the shell understands some XSI constructs... yes
> checking whether the shell understands "+="... yes
> checking how to convert x86-unknown-none file names to
> mips642-unknown-elf format... func_convert_file_noop
> checking how to convert x86-unknown-none file names to toolchain
> format... func_convert_file_noop
> checking for mipsel-linux-ld option to reload object files... -r
> checking for mips32-objdump... no
> checking for objdump... objdump
> checking how to recognize dependent libraries... unknown
> checking for mips32-dlltool... no
> checking for dlltool... no
> checking how to associate runtime and link libraries... printf %s\n
> checking for mips32-ar... mipsel-linux-ar
> checking for archiver @FILE support... @
> checking for mips32-strip... strip
> checking for mips32-ranlib... no
> checking for ranlib... ranlib
> checking command to parse nm output from mipsel-linux-gcc object... ok
> checking for sysroot... no
> checking for mips32-mt... no
> checking for mt... no
> checking if : is a manifest tool... no
> checking for dlfcn.h... yes
> checking for objdir... .libs
> checking if mipsel-linux-gcc supports -fno-rtti -fno-exceptions... no
> checking for mipsel-linux-gcc option to produce PIC... -fPIC -DPIC
> checking if mipsel-linux-gcc PIC flag -fPIC -DPIC works... yes
> checking if mipsel-linux-gcc static flag -static works... yes
> checking if mipsel-linux-gcc supports -c -o file.o... yes
> checking if mipsel-linux-gcc supports -c -o file.o... (cached) yes
> checking whether the mipsel-linux-gcc linker (mipsel-linux-ld) supports
> shared libraries... yes
> checking whether -lc should be explicitly linked in... no
> checking dynamic linker characteristics... no
> checking how to hardcode library paths into programs... immediate
> checking whether stripping libraries is possible... yes
> checking if libtool supports shared libraries... no
> checking whether to build shared libraries... no
> checking whether to build static libraries... yes
> configure: error: --enable-static is not supported by systemd
> 
> I have tried to delete the below check in configure file to check how
> far I can go 
> 
> if test "x$enable_static" = "xyes"; then :
>   as_fn_error $? "--enable-static is not supported by systemd" "$LINENO" 5
> fi

Does passing --disable-static as a configure flag work as a workaround
rather than hacking out the check? Perhaps it's defaulting to "yes" here
for this toolchain...

> It is continued to configure but stuck at below error.
> 
> checking if mipsel-linux-gcc -std=gnu99 supports flag -Wl,-z,now in
> envvar LDFLAGS... yes
> checking for python... /usr/local/bin/python
> checking for python version... 2.7
> checking for python platform... linux2
> checking for python script directory...
> ${prefix}/lib/python2.7/site-packages
> checking for python extension module directory...
> ${exec_prefix}/lib/python2.7/site-packages
> checking for PYTHON_DEVEL... yes
> checking for library containing dlsym... -ldl
> checking sys/capability.h usability... no
> checking sys/capability.h presence... no
> checking for sys/capability.h... no
> configure: error: *** POSIX caps headers not found
> 
> Please let me know if I am doing something wrong. 

As a guess, it smells like you need libcaps-devel package built for mips
as it provides the /usr/include/sys/capability.h header that is reported
above as missing...

Col



-- 

Colin Guthrie
gmane(at)colin.guthr.ie
http://colin.guthr.ie/

Day Job:
  Tribalogic Limited http://www.tribalogic.net/
Open Source:
  Mageia Contributor http://www.mageia.org/
  PulseAudio Hacker http://www.pulseaudio.org/
  Trac Hacker http://trac.edgewall.org/



More information about the systemd-devel mailing list