Same problem here - same build errors when building nrf/applications/asset_tracker on tag v0.4.0.
I'm using command-line build on my Windows PC using cmake and ninja to build the apps. Zephyr samples build, as does nrf/samples/nrf9160/at_client.
I'll track down the issue and update this thread.
Problem compiling zephyr/misc/generated/configs.c.
In file included from C:/iot/nordic/ncs/zephyr/include/toolchain.h:21:0,
from zephyr/misc/generated/configs.c:7:
zephyr/misc/generated/configs.c: In function '_ConfigAbsSyms':
C:/iot/nordic/ncs/zephyr/include/toolchain/gcc.h:325:51: error: expected expression before ')' token
"\n\t.type\t" #name ",%%object" : : "n"(~(value)))
I was using this issue to get familiar with the Zephyr build system. I have to say, it feels like massive overkill, coming from far simpler makefile-based build systems, even mbed is much simpler. I still can not figure out how the "at_host" library is being linked into the asset_tracker application. It appears to be needed, because when removing it from the zerhyr/.config file (which is a key end result of the configuration process), there are unresolved symbols during linking. I can only conclude that another configuration option is missing to properly setup the sockets library and that at_host is needed.
So, all that said, the build problems go away if the master branch of https://github.com/NordicPlayground/fw-nrfconnect-nrf is checked out. The difference is that a prj.conf file is added to the asset tracker application, which I assume sets the missing configuration options. I think - but I might be wrong - that a 'ninja menuconfig' was needed in the 0.4.0 version of the project to set the options - but we don't know what they are as users of the project.
To summarize, tag 0.4.0 is broken and branch master builds with respect to the asset tracker. I only checked out tag 0.4.0 because the getting started assistant suggested to use the latest tag for a more stable starting point!
Go into nrf/ and run:
I was using this issue to get familiar with the Zephyr build system. I have to say, it feels like massive overkill, coming from far simpler makefile-based build systems, even mbed is much simpler. I still can not figure out how the "at_host" library is being linked into the asset_tracker application. It appears to be needed, because when removing it from the zerhyr/.config file (which is a key end result of the configuration process), there are unresolved symbols during linking. I can only conclude that another configuration option is missing to properly setup the sockets library and that at_host is needed.
So, all that said, the build problems go away if the master branch of https://github.com/NordicPlayground/fw-nrfconnect-nrf is checked out. The difference is that a prj.conf file is added to the asset tracker application, which I assume sets the missing configuration options. I think - but I might be wrong - that a 'ninja menuconfig' was needed in the 0.4.0 version of the project to set the options - but we don't know what they are as users of the project.
To summarize, tag 0.4.0 is broken and branch master builds with respect to the asset tracker. I only checked out tag 0.4.0 because the getting started assistant suggested to use the latest tag for a more stable starting point!
Go into nrf/ and run: