Welcome new user! You can search existing questions and answers without registering, but please register to post new questions and receive answers. Note that due to large amounts of spam attempts, your first three posts will be manually moderated, so please be patient.
We have moved to a new forum at http://jevois.usc.edu, please check it out. The forum at jevois.org/qa will not allow new user registrations but is maintained alive for its useful past questions and answers.

Some problems with `make`

0 votes
Hi, I used the default command to create a project and successfully built a it with ./rebuild-host.sh. After that, I modify my code and try to rebuild that by

> cd hbuild/ && make

But an error happened and the `make` just stuck (no CPU use, nothing was being compiled). I have to terminate it with Ctrl+C:

[ 50%] Built target jevoisnn
[ 66%] Generating ../src/Modules/Mnist/modinfo.yaml, ../src/Modules/Mnist/modinfo.html
error: Tag file `/jevois/doc/jevois.tag' does not exist or is not a file. Skipping it...
find: ‘../../../include/jevoisbase/Components/’: No such file or directory
^CCMakeFiles/modinfo_Mnist.dir/build.make:61: recipe for target '../src/Modules/Mnist/modinfo.yaml' failed
make[2]: *** [../src/Modules/Mnist/modinfo.yaml] Interrupt
CMakeFiles/Makefile2:174: recipe for target 'CMakeFiles/modinfo_Mnist.dir/all' failed
make[1]: *** [CMakeFiles/modinfo_Mnist.dir/all] Interrupt
Makefile:127: recipe for target 'all' failed
make: *** [all] Interrupt

Immediately after that, I can compile it by typing `make` again. Everything is okey this time, which is wired.

I didn't use jevoisbase in my project. I built my components into a library called jevoisnn. But as the log displayed, the makefile still tried to locate ../../../include/jevoisbase/Components/’.

I surmise that there is something in CMakeList might cause this problem. I am looking forward to your reply.
asked Sep 5, 2017 in Programmer Questions by Dextrous (240 points)

1 Answer

0 votes

You are probably running out of memory and/or swapping the first time by trying to compile one file per CPU core. Then later when you just type make you are only using 1 core so you are ok. tiny-dnn is all template code so it needs lots of memory to compile. You can adjust the number of parallel compile jobs by editing rebuild-host.sh

answered Sep 8, 2017 by JeVois (46,580 points)
I don't think the reason is the memory allocation. In my project, I tried to include the components from jevoisbase without implementing it again and link my project with libjevoisbase.so. When I use the function "addSubComponent", the CMake has to locate some files before compiling. One of these is `src/Components` and I guess it is trying to locate other document files as well. Can you resolve that?