Guest srsdani Posted April 13, 2014 Report Posted April 13, 2014 (edited) 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 srsdani@ubuntu:~/kernel$ Edited April 13, 2014 by srsdani
Guest Spacecaker Posted April 15, 2014 Report Posted April 15, 2014 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.
Guest Shreps Posted April 16, 2014 Report Posted April 16, 2014 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)
Guest srsdani Posted April 16, 2014 Report Posted April 16, 2014 (edited) 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 April 18, 2014 by srsdani
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now