Sign in to follow this  
Followers 0
srsdani

Acer CloudMobile Developer Discussion [Developers Only]

4 posts in this topic

I think that would be great if we could help each other(if we can) in this thread.

 

I will begin with one problem. In the last days I tried to compile stock kernel using GCC 4.7 and 4.8 and I have errors(warning but compiler take them as errors). With 4.6 it's everything ok, but I want to use 4.7 or 4.8 because those have better optimization .

So, i try with make -k ..... but it was unsuccessful. More info below. Original xt_socket.c (if i write to protocol=int value, it give me another error, same for NULL or other(protocol is pointer type).

  CC      net/netfilter/xt_qtaguid.o 
  CC      net/netfilter/xt_quota.o
  CC      net/netfilter/xt_quota2.o
  CC      net/netfilter/xt_socket.o
In file included from include/linux/kernel.h:23:0,
                 from include/linux/cache.h:4,
                 from include/linux/time.h:7,
                 from include/linux/stat.h:60,
                 from include/linux/module.h:10,
                 from net/netfilter/xt_socket.c:13:
net/netfilter/xt_socket.c: In function 'xt_socket_get4_sk':
include/linux/dynamic_debug.h:75:21: warning: 'protocol' may be used uninitialized in this function [-Wmaybe-uninitialized]
error, forbidden warning: dynamic_debug.h:75
make[2]: *** [net/netfilter/xt_socket.o] Error 1
make[1]: *** [net/netfilter] Error 2
make: *** [net] Error 2
[email protected]:~/kernel$
Edited by srsdani
0

Share this post


Link to post
Share on other sites

u need to add the -waymbe-uniantialized tag in the build flasg of makefile.

check some gits of kernel that use the linaro toolchain aswell.

i am sorry for bad typing but i am in phone.

1

Share this post


Link to post
Share on other sites

Globally, from one version of GCC to another, some warnings in the previous becomes errors by default in the new version (that was true from 4.6 to 4.7, and true for 4.7 ti 4.8 and so on)

This is because some bad C code are no longer acceptable (becomes deprecated) for the new optimizations implemented in the new GCC version.

So you have 2 options :

- Fix the code and refactor it to make it clean (lots of work)

- Add some GCC compilation flags in Makefiles/.mk like suggest Spacecaker in order to transforms theses errors into warning like in GCC 4.7 (this will compile, but you have a risk of bad execution because some parts of your code is now deprecated)

1

Share this post


Link to post
Share on other sites

So, the problem was in Makefile and .config. I compared and added some flags from Mako (from franco) and it worked. I still have some warning/s, some breakpoints but I will try  to make it better(it's my first kernel). Anyway, this thread may be useful for all of us. Thanks a lot for help.

Edited by srsdani
0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0

MoDaCo is part of the MoDaCo.network, © Paul O'Brien 2002-2016. MoDaCo uses IntelliTxt technology.