I’m setting up a Linux system to use an automated build instead of Dev Studio. I am building for Wp76xx (01 actually), 10.1.1. I’ve set up a new VM of Ubuntu and downloaded the 18.06.3 version of Legato via git. I ran make on it and it built everything but when it went to do the user_docs, it says there is "no rule to make target ‘user_docs’. Is there something missing here?
Well, when I added the type in the command (in my case wp76xx), it made with no errors. However, I tried making my app and it started working, but errored out because it couldn’t find the le_mdc.api file. I know they are in the legato framework folder… it’s like it’s not including them somehow. Anyone got any clues?
You mentioned you downloaded Legato through git, did you use repo or did you just download the Legato.git ?
I used repo to clone a specific release (18.06.3).
I think I’ve got it figured out though. Had to modify the sdef file to put absolute paths in to point at the .adef files of my added apps. I also had to create a makefile that includes the appropriate interface files on the command line in order to make each individual app. Not sure I need that when I make my version of Legato though.
Not too sure about what you mean regarding the Makefile. What does that Makefile look like?
.PHONY: ALL $(TARGETS)
all: $(TARGETS)
$(TARGETS):
mkapp -v -t $@
-i $(LEGATO_ROOT)/interfaces/modemServices
-i $(LEGATO_ROOT)/interfaces
-i $(LEGATO_ROOT)/interfaces/atServices
myapp.adef
Apparently the web page doesn’t like dollar signs and formatting, but you get the idea.
I see, so you’re using that Makefile to build your app independently from the rest?
It’s possible to do that, but the recommended way overall is to add the app to a new .sdef and point to it
with SDEF_TO_USE=<path to .sdef>
.
Note that you should be able to include the default sdef with:
#include "$LEGATO_ROOT/default.sdef"
Cf modules/WiFi/wifi.sdef
for instance.