Hi Bryan,

I've just run through that section of the tutorial and everything seems to work as expected. Is it possible you've omitted the leading "${SOURCE_DIR}" in front of that path? Your Makefile for the helloworld example should look like the attached.

Thanks,
Matthew

On 09/11/15 20:04, Bryan Ching wrote:
Hi Matthew,

Thanks for all the help. I did try starting over. But when I try running "make 
clean", I am now getting an error saying
that the camkes.mk <http://camkes.mk> file isn't there.

Here is the error:
Makefile:9: /../../tools/camkes/camkes.mk <http://camkes.mk>: No such file or 
directory
make: *** No rule to make target `/../../tools/camkes/camkes.mk 
<http://camkes.mk>'.  Stop.

I've been checking everything and it looks identical to what I had previously. 
I don't understand why I'm getting this
error. I checked and the file is indeed in tools/camkes/camkes.mk 
<http://camkes.mk>. Please let me know what you think.

Thanks,

On Sun, Nov 8, 2015 at 9:26 PM, Matthew Fernandez 
<[email protected]
<mailto:[email protected]>> wrote:

    Sorry, Bryan, this is another issue caused by the out-of-date tutorial 
instructions on sel4.systems.
    The contents of the Kbuild file for the helloworld example is missing a 
dependency on libsel4bench.
    I suspect at the time the original wording was put together, libsel4bench 
was not a dependency of
    this application. Again, the upstream tutorial doc has the correct 
dependencies:

    apps-$(CONFIG_APP_HELLOWORLD) += helloworld
    helloworld: libsel4 libmuslc libsel4platsupport \
       libsel4muslccamkes libsel4sync libsel4debug libsel4bench

    If you're at this point in the tutorial, I would suggest perhaps starting 
again from the beginning
    and following the Github instructions, as I'm unsure offhand what other 
latent differences may be
    present.

    On 09/11/15 16:11, Bryan Ching wrote:

        Thank you Matthew! That clear up so much for me! But now I'm getting 
another error. Here is the message:

        In file included from
        
/home/bryan/camkes-project/build/arm/imx31/helloworld/src/c/generated/iface_seL4RPC.c:13:0:
        
/home/bryan/camkes-project/stage/arm/imx31/include/camkes/timing.h:16:33: fatal 
error:
        sel4bench/sel4bench.h: No such file or directory
           #include <sel4bench/sel4bench.h>
                                           ^
        compilation terminated.
        make[1]: *** 
[/home/bryan/camkes-project/build/arm/imx31/helloworld/src/c/generated/iface_seL4RPC.o]
        Error 1
        make: *** [helloworld] Error 2


        Please let me know what you think.

        Thanks,

        On Sun, Nov 8, 2015 at 3:55 PM, Matthew Fernandez 
<[email protected]
        <mailto:[email protected]>
        <mailto:[email protected] 
<mailto:[email protected]>>> wrote:

             Hi Bryan,

             Thanks for your questions. My answers inline below.

             On 09/11/15 10:29, Bryan Ching wrote:

                 Hi,

                 I am following the tutorial for CAmkES and had a few questions.

                 There is a part in the tutorial that says to "create a 
dependency entry in
                 |apps/helloworld/Kbuild| for your application". How exactly do 
you go about creating a
                 dependency?
                 Do you just add it to the first line of the Kconfig file?


             Kbuild and Kconfig are two separate elements of the build system 
infrastructure. The Kconfig files
             determine the menu options and build system configuration 
available. The Kbuild files express the
             dependencies that GNU Make understands while building a seL4 
project.

             In this case, that line refers to adding the text below it to a 
new file, apps/helloworld/Kbuild:

             apps-$(CONFIG_APP_HELLOWORLD) += helloworld
             helloworld: libsel4 libmuslc libsel4platsupport libsel4muslccamkes 
libsel4sync libsel4debug

                 Also, for the Makefile, I needed to include the camkes.mk 
<http://camkes.mk> <http://camkes.mk>
                 <http://camkes.mk> file. However, it was
                 not found in the specified directory. This is the command that 
I included in the Makefile:
                 include
                 ${SOURCE_DIR}/../../tools/common/camkes.mk <http://camkes.mk> 
<http://camkes.mk> <http://camkes.mk>
        Where could
                 I get that file? Or if
                 someone had the contents of that file, I could create it 
myself.


             This looks like a typo in the tutorial. The actual path to that 
file is
             "${SOURCE_DIR}/../../tools/camkes/camkes.mk <http://camkes.mk> 
<http://camkes.mk>". This is correct
        upstream in the
             markdown source this
             page is derived from, so perhaps this page has not been 
synchronized recently. I'll see if I can get
             that rectified. In the meantime, you could try following the 
upstream version of this tutorial:

        https://github.com/seL4/camkes-tool/blob/master/docs/index.md#tutorial

             If you're part way through the tutorial note that the sel4.systems 
version has another typo in the
             setting of the ADL variable in that app's Makefile. Apologies for 
the confusion.

                 Thanks,
                 Bryan


                 _______________________________________________
                 Devel mailing list
                 [email protected]
        https://sel4.systems/lists/listinfo/devel


             ________________________________

             The information in this e-mail may be confidential and subject to 
legal professional privilege
             and/or copyright. National ICT Australia Limited accepts no 
liability for any damage caused by
             this email or its attachments.



    ________________________________

    The information in this e-mail may be confidential and subject to legal 
professional privilege and/or copyright.
    National ICT Australia Limited accepts no liability for any damage caused 
by this email or its attachments.


# apps/helloworld/Makefile

TARGETS := helloworld.cdl
ADL := helloworld.camkes

Client_CFILES = components/Client/src/client.c
Hello_CFILES = components/Hello/src/hello.c

include ${SOURCE_DIR}/../../tools/camkes/camkes.mk
_______________________________________________
Devel mailing list
[email protected]
https://sel4.systems/lists/listinfo/devel

Reply via email to