On Wed, Mar 17, 2021 at 10:22 AM Olga Syrbachova <syrba4ev...@gmail.com> wrote:
> What do you mean "regular README file"? There are 3 of them: README, > README.Makefile and README.waf. In README there is just a list of examples. > I tried to follow the README.Makefile instructions, and after running: > Thanks I forgot we put those instructions into README.Makefile. > > olga@olga-H270M-DS3H:~/development/rtems-examples/hello/hello_world_c$ > RTEMS_MAKEFILE_PATH=${HOME}/development/rtems/5/sparc-rtems5/erc32 make > clean > > and > > olga@olga-H270M-DS3H:~/development/rtems-examples/hello/hello_world_c$ > RTEMS_MAKEFILE_PATH=${HOME}/development/rtems/5/sparc-rtems5/erc32 make > > there appeared an empty folder "o-optimize" in the examples's directory. > What's next? > > Weird, I'll take a look. We do encourage to try to use waf to build the examples though, so let's focus on that direction. > And what do you mean "use ./waf"? When I run ./waf in "rtems-examples", > it says > > olga@olga-H270M-DS3H:~/development/rtems-examples$ ./waf > The project was not configured: run "waf configure" first! > olga@olga-H270M-DS3H:~/development/rtems-examples$ waf configure > --rtems=$HOME/development/rtems/build/5 > \--rtems-tools=$HOME/development/rtems/5 \--rtems-bsps=sparc/erc32 > > ./waf configure --rtems=$HOME/development/rtems/build/5 \--rtems-tools=$HOME/development/rtems/5 \--rtems-bsps=sparc/erc32 ^ > Command 'waf' not found, did you mean: ... > > command 'paf' from deb libpod-abstract-perl > command 'wdf' from deb wit > ... > > On Wed, 17 Mar 2021 at 16:51, Gedare Bloom <ged...@rtems.org> wrote: > >> >> >> On Wed, Mar 17, 2021 at 9:11 AM Olga Syrbachova <syrba4ev...@gmail.com> >> wrote: >> >>> Thanks a lot! I have one more stupid question. How do I run examples >>> from git? I've cloned rtems-examples and tried to follow the instructions >>> from "README.waf", but it doesn't work. When I enter >>> >>> $ waf configure --rtems=$HOME/development/rtems/bsps/5 \ >>> --rtems-tools=$HOME/development/rtems/5 \ >>> --rtems-bsps=sparc/erc32 >>> >>> I get this error: >>> Command 'waf' not found, did you mean: ... >>> >>> Use ./waf >> >> >> >>> I probably do something wrong. Do I need to do the instructions from >>> "README.waf" at all? Or do I need to proceed as in this tutorial >>> https://docs.rtems.org/branches/master/user/start/app.html with every >>> example's directory? I would really appreciate some step-by-step tutorial >>> or instructions as I'm totally frustrated right now and don't understand >>> what to do. >>> >>> Btw there is a makefile in every example's directory. Can I use it instead >>> of waf to compile the applications? If this is the case how do I do it? >>> >>> You can do either way of building the examples, see the regular README >> file for directions on the Makefile approach. >> >> >>> Many thanks in advance for any help!!! >>> >>> >>> On Tue, 16 Mar 2021 at 20:07, Joel Sherrill <j...@rtems.org> wrote: >>> >>>> >>>> >>>> On Tue, Mar 16, 2021 at 1:40 PM Olga Syrbachova <syrba4ev...@gmail.com> >>>> wrote: >>>> >>>>> Thank you very much for your reply and for your concern! >>>>> >>>>> Actually I'd like to create my own application and test some >>>>> mechanisms, provided by RTEMS. This is a part of my Bachelor Thesis. I'd >>>>> like, for example, to create two/three tasks and make them communicate >>>>> with each other via queues, schedule them by priority etc. I have some >>>>> experience with FreeRTOS. It is run via Visual Studio, which is quite >>>>> simple. And now with RTEMS I am a bit frustrated and don't know where to >>>>> start. That's why I followed the tutorial on the Website. "Hello World" >>>>> program worked just fine, so I decided to try some more complicated >>>>> applications before I start with my own, that's why I decided to build >>>>> "ticker" with waf. Unfortunately I didn't find any helpful (for me) >>>>> tutorial on how to create applications in RTEMS. I mean I can handle >>>>> writing the App's code, but I don't get it how to compile and run it. So I >>>>> was just going to do the same as in the tutorial, but with my own >>>>> application. Is it the right way to proceed or is there another way ? >>>>> >>>> >>>> The tests in RTEMS are just that tests. They depend on things that >>>> shouldn't be installed or used by user applications. >>>> >>>> I would recommend cloning rtems-examples and going from one of those. >>>> There is a directory with variations on ticker and I suspect the base one >>>> is a better one to start from. >>>> >>>> If you want to write POSIX code, one of the POSIX examples there would >>>> serve you ok >>>> >>>> --joel >>>> >>>> >>>>> >>>>> >>>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> >>>>> Virenfrei. >>>>> www.avast.com >>>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> >>>>> <#m_-6868087392309282603_m_-8071420466793372504_m_971219196135651785_m_277508452244861825_m_-8462729502950921950_m_6778778117170402098_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> >>>>> >>>>> On Tue, 16 Mar 2021 at 16:29, Vijay Kumar Banerjee <vi...@rtems.org> >>>>> wrote: >>>>> >>>>>> On Tue, Mar 16, 2021 at 4:07 AM Olga Syrbachova < >>>>>> syrba4ev...@gmail.com> wrote: >>>>>> > >>>>>> > Thank you very much for your reply! >>>>>> > >>>>>> > I've added >>>>>> > includes = >>>>>> '/home/olga/development/rtems/rtems-5/testsuites/support/include/tmacros.h', >>>>>> > >>>>>> It takes the relative address to the directory where the header file >>>>>> is. For example, if you're building from the >>>>>> "/home/olga/development/rtems" directory the includes argument would >>>>>> be: >>>>>> >>>>>> `includes = './rtems-5/testsuites/support/include/'` >>>>>> >>>>>> BTW, your first email at the start of the thread says that you just >>>>>> want to run the samples, the samples get built as a part of the rtems >>>>>> and you'll be able to see the *.exe files in the build directory. Is >>>>>> there any reason that you're trying to build it in a separate >>>>>> directory with waf? Experimenting with the build system is a good >>>>>> reason though, just making sure that we're not pushing you in the >>>>>> wrong direction and your objective is indeed to try waf on your own >>>>>> and not just running RTEMS hello app. >>>>>> >>>>>> Best regards, >>>>>> Vijay >>>>>> >>>>>> >>>>>> > it still says "No such file or directory". I'm pretty sure the path >>>>>> is write, though there is now another path to "tmacros.h" (the first one >>>>>> below), it's a folder named "tmacros.h" and it's empty. >>>>>> > olga@olga-H270M-DS3H:~$ locate tmacros.h >>>>>> > >>>>>> /home/olga/development/app/ticker/build/sparc-rtems5-erc32/$HOME/developement/rtems/rtems-5/testsuites/support/include/tmacros.h >>>>>> > >>>>>> /home/olga/development/rtems/rtems-5/testsuites/support/include/tmacros.h >>>>>> > >>>>>> > >>>>>> > On Mon, 15 Mar 2021 at 21:00, Vijay Kumar Banerjee <vi...@rtems.org> >>>>>> wrote: >>>>>> >> >>>>>> >> On Mon, Mar 15, 2021 at 1:53 PM Olga Syrbachova < >>>>>> syrba4ev...@gmail.com> wrote: >>>>>> >> > >>>>>> >> > Sure! https://github.com/syrba4eva/RTEMS/blob/main/wscript >>>>>> >> >>>>>> >> Thanks. In this line: >>>>>> https://github.com/syrba4eva/RTEMS/blob/main/wscript#L33 >>>>>> >> After cflags parameter, add "includes", for example: >>>>>> >> >>>>>> >> bld(features = 'c cprogram', >>>>>> >> target = 'ticker.exe', >>>>>> >> cflags = '-g -O2', >>>>>> >> includes='. .. ./original/path/to/tmacros.h', >>>>>> >> source = ['init.c', 'tasks.c']) >>>>>> >> >>>>>> >> you don't need to copy tmacros.h or any headers from rtems, just >>>>>> add >>>>>> >> the path to includes. >>>>>> >> >>>>>> >> >>>>>> >> Best regards, >>>>>> >> Vijay >>>>>> >> >>>>>> >> > >>>>>> >> > On Mon, 15 Mar 2021 at 20:36, Vijay Kumar Banerjee < >>>>>> vi...@rtems.org> wrote: >>>>>> >> >> >>>>>> >> >> On Mon, Mar 15, 2021 at 1:30 PM Olga Syrbachova < >>>>>> syrba4ev...@gmail.com> wrote: >>>>>> >> >> > >>>>>> >> >> > Thank you very much for your reply! >>>>>> >> >> > Unfortunately I'm still a bit confused and don't quite >>>>>> understand what to do. Where do I need to modify the "include" parameter? >>>>>> In the wscript file from the "hello" example there is no "include" >>>>>> parameter. I also tried to find a tutorial on how to write a wscript, but >>>>>> didn't find any (Could you suggest any please?). So I tried to copy the >>>>>> file "tmacros.h" from testsuites/support/include to app/ticker. Now after >>>>>> running ./waf I get an error, which tells me that "buffer_test_io.h" >>>>>> wasn't >>>>>> found. When I copied it to my app/ticker directory it didn't work and I >>>>>> still have the same error. >>>>>> >> >> > >>>>>> >> >> Would it be possible for you to paste your wscript somewhere >>>>>> (like >>>>>> >> >> gist.github.com) and share it here so that we can have a look >>>>>> and help >>>>>> >> >> you with that? >>>>>> >> >> >>>>>> >> >> Best regards, >>>>>> >> >> Vijay >>>>>> >> >> >>>>>> >> >> > Waf: Entering directory >>>>>> `/home/olga/development/app/ticker/build/sparc-rtems5-erc32' >>>>>> >> >> > [1/3] Compiling tasks.c >>>>>> >> >> > [2/3] Compiling init.c >>>>>> >> >> > In file included from ../../system.h:17:0, >>>>>> >> >> > from ../../init.c:15: >>>>>> >> >> > ../../tmacros.h:32:10: fatal error: buffer_test_io.h: No such >>>>>> file or directory >>>>>> >> >> > #include <buffer_test_io.h> >>>>>> >> >> > ^~~~~~~~~~~~~~~~~~ >>>>>> >> >> > compilation terminated. >>>>>> >> >> > >>>>>> >> >> > In file included from ../../system.h:17:0, >>>>>> >> >> > from ../../tasks.c:22: >>>>>> >> >> > ../../tmacros.h:32:10: fatal error: buffer_test_io.h: No such >>>>>> file or directory >>>>>> >> >> > #include <buffer_test_io.h> >>>>>> >> >> > ^~~~~~~~~~~~~~~~~~ >>>>>> >> >> > compilation terminated. >>>>>> >> >> > >>>>>> >> >> > Waf: Leaving directory >>>>>> `/home/olga/development/app/ticker/build/sparc-rtems5-erc32' >>>>>> >> >> > Build failed >>>>>> >> >> > -> task in 'ticker.exe' failed with exit status 1 (run with >>>>>> -v to display more information) >>>>>> >> >> > -> task in 'ticker.exe' failed with exit status 1 (run with >>>>>> -v to display more information) >>>>>> >> >> > >>>>>> >> >> > On Mon, 15 Mar 2021 at 16:21, Vijay Kumar Banerjee < >>>>>> vi...@rtems.org> wrote: >>>>>> >> >> >> >>>>>> >> >> >> Hi Olga, >>>>>> >> >> >> >>>>>> >> >> >> >>>>>> >> >> >> On Mon, Mar 15, 2021 at 8:29 AM Olga Syrbachova < >>>>>> syrba4ev...@gmail.com> wrote: >>>>>> >> >> >> > >>>>>> >> >> >> > Thank you very much for your reply! >>>>>> >> >> >> > >>>>>> >> >> >> > I've built the RTEMS Kernel for erc32. Then I followed >>>>>> this tutorial >>>>>> https://docs.rtems.org/branches/master/user/start/app.html to build >>>>>> a "Hello World" application and it works just fine. Then I've tried to >>>>>> create another application following the steps in the tutorial. >>>>>> >> >> >> > 1. In $HOME/development/app/ I created a directory >>>>>> "ticker". >>>>>> >> >> >> > 2. cd ticker >>>>>> >> >> >> > 3. curl https://waf.io/waf-2.0.19 > waf >>>>>> >> >> >> > chmod +x waf >>>>>> >> >> >> > git init >>>>>> >> >> >> > git submodule add git://git.rtems.org/rtems_waf.git >>>>>> rtems_waf >>>>>> >> >> >> > 4. I've copied the files "init.c", "tasks.c", "system.h" >>>>>> from testsuites/samples >>>>>> >> >> >> > 5. In the "wscript" I've changed the lines 32 and 34 to >>>>>> target = 'ticker.exe', source = ['init.c', 'tasks.c'] >>>>>> >> >> >> > 6. ./waf configure --rtems=$HOME/development/rtems/5 >>>>>> --rtems-bsp=sparc/erc32 >>>>>> >> >> >> > 7. and running ./waf next, I get an error. It looks like >>>>>> the file "tmacros.h", which is included in "system.h", cannot be found. >>>>>> >> >> >> > >>>>>> >> >> >> You have changed the "target" and "source" parameters in >>>>>> your wscript. >>>>>> >> >> >> You'd also need to modify the "include" parameter and add >>>>>> relative >>>>>> >> >> >> path to tmacros.h. For multiple headers, you'll have to add >>>>>> the paths >>>>>> >> >> >> as a string with space-separated values or a list like this: >>>>>> >> >> >> `includes='./ ../ ./path/to/include/'` >>>>>> >> >> >> >>>>>> >> >> >> >>>>>> >> >> >> > What am I doing wrong? Is the way to run other examples >>>>>> exactly the same as to run a "Hello World" example? >>>>>> >> >> >> The other examples will also follow a similar wscript >>>>>> structure but >>>>>> >> >> >> hello world is the simple one with fewer includes so it's a >>>>>> good place >>>>>> >> >> >> to start if you're trying to learn how to make a separate >>>>>> project with >>>>>> >> >> >> RTEMS applications using waf. >>>>>> >> >> >> >>>>>> >> >> >> >>>>>> >> >> >> Best regards, >>>>>> >> >> >> Vijay >>>>>> >> >> >> > _______________________________________________ >>>>>> >> >> >> > users mailing list >>>>>> >> >> >> > users@rtems.org >>>>>> >> >> >> > http://lists.rtems.org/mailman/listinfo/users >>>>>> >>>>> >>>>> >>>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> >>>>> Virenfrei. >>>>> www.avast.com >>>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> >>>>> <#m_-6868087392309282603_m_-8071420466793372504_m_971219196135651785_m_277508452244861825_m_-8462729502950921950_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> >>>>> _______________________________________________ >>>>> users mailing list >>>>> users@rtems.org >>>>> http://lists.rtems.org/mailman/listinfo/users >>>> >>>> _______________________________________________ >>> users mailing list >>> users@rtems.org >>> http://lists.rtems.org/mailman/listinfo/users >> >>
_______________________________________________ users mailing list users@rtems.org http://lists.rtems.org/mailman/listinfo/users