Now, I'm working with Fedora 21. However another error exists now:
--
Toolchain: gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux
export PATH=$PATH:/home/ecank/1511/toolchain/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin
export CC=arm-linux-gnueabihf-gcc
export CROSS_COMPILE=arm-linux-gnueabihf-
export CFLAGS=-D__thread=
export EMBEDDED=y
export DESTDIR=~/obj
make install install-pywrap
arm-linux-gnueabihf-gcc: error: unrecognized command line option ‘-mno-tls-direct-seg-refs’
Makefile:130: recipe for target 'is_customizable_type.o' failed
make[2]: *** [is_customizable_type.o] Error 1
make[2]: Leaving directory '/home/ecank/1511/selinux/libselinux/src'
Makefile:28: recipe for target 'install' failed
all output: http://pastebin.com/U03hhtJJ
moreover:
$ arm-linux-gnueabihf-gcc --version
arm-linux-gnueabihf-gcc (crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC 4.9-2014.09) 4.9.2 20140904 (prerelease)
Copyright (C) 2014 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.
Then after deletion of
TLSFLAGS += -mno-tls-direct-seg-refs
(i deleted that flag, since it was related with x86-64 and i386)
New error is related with pcre library.
arm-linux-gnueabihf-gcc -D__thread= -I../include -I/home/ecank/obj/usr/include -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DDISABLE_AVC -DDISABLE_BOOL -DDISABLE_RPM -DDISABLE_SETRANS -c -o label_file.o label_file.c
label_file.c:21:18: fatal error: pcre.h: No such file or directory
#include <pcre.h>
^
compilation terminated.
Makefile:130: recipe for target 'label_file.o' failed
all output: http://pastebin.com/9rxKFvLL
Really need help about compiling SELinux for an arm.
Thanks in advance.
2015-02-25 20:25 GMT+02:00 Stephen Smalley <sds@xxxxxxxxxxxxx>:
Hmm...that's interesting. Builds just fine on Fedora 20. I do howeverOn 02/25/2015 10:42 AM, Emre Can Kucukoglu wrote:
> Hello,
>
> I want to use SELinux for my experimental vanilla kernel distribution in
> Pandaboard ES. To achieve that I have configured my kernel for SELinux
> support. Then, I have recently cloned selinux userspace repository to
> cross-compile it for arm architecture. I use arm-linux-gnueabi toolchain
> in Ubuntu 14.04 workstation.
>
> $ export ARCH=arm
> $ export CROSS_COMPILE=arm-linux-gnueabi-
>
> As mentioned in readme instruction,
>
> $ make DESTDIR=~/obj install install-pywrap
>
> command is used, however due to -Werror flags in various Makefile's,
> error is thrown:
>
> dispol.c: In function ‘main’:
> dispol.c:452:8: error: ignoring return value of ‘fgets’, declared with
> attribute warn_unused_result [-Werror=unused-result]
> fgets(ans, sizeof(ans), stdin);
> ^
> dispol.c:479:9: error: ignoring return value of ‘fgets’, declared with
> attribute warn_unused_result [-Werror=unused-result]
> fgets(ans, sizeof(ans), stdin);
> ^
> dispol.c:490:9: error: ignoring return value of ‘fgets’, declared with
> attribute warn_unused_result [-Werror=unused-result]
> fgets(ans, sizeof(ans), stdin);
> ^
> dispol.c:517:9: error: ignoring return value of ‘fgets’, declared with
> attribute warn_unused_result [-Werror=unused-result]
> fgets(OutfileName, sizeof(OutfileName), stdin);
> ^
> cc1: all warnings being treated as errors
> make[2]: *** [dispol.o] Error 1
>
> I did this modification to get over this error which is caused by
> -Werror flag:
>
> char *fgetsret; /* error is given, because return value is not captured */
> fgetsret = fgets(...);
> if (!fgetsret) { /* if fgetsret is not used, another error comes from
> warning */
> // some exit message
> exit(1);
> }
>
> Did I miss something about SELinux cross-compilation for an arm
> architecture, since constantly I'm taking errors.
get the same error building on Ubuntu 14.04 (which is not something we
typically test on; most SELinux developers work on Fedora).
Willing to accept patches to fix it, but it is merely a test/debugging
program that you can even exclude from your build if you like.
Emre Can Kucukoglu
_______________________________________________ Selinux mailing list Selinux@xxxxxxxxxxxxx To unsubscribe, send email to Selinux-leave@xxxxxxxxxxxxx. To get help, send an email containing "help" to Selinux-request@xxxxxxxxxxxxx.