Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

building the same project for two boards in parallel is not possible #582

Closed
LudwigKnuepfer opened this issue Jan 29, 2014 · 11 comments
Closed
Assignees
Labels
Type: enhancement The issue suggests enhanceable parts / The PR enhances parts of the codebase / documentation Type: question The issue poses a question regarding usage of RIOT

Comments

@LudwigKnuepfer
Copy link
Member

As I understood it, this should be possible by now..

@ghost ghost assigned OlegHahm Jan 29, 2014
@OlegHahm
Copy link
Member

Could you, please, be a little bit more verbose? What exactly do you mean by "in parallel" and "not possible". Calling make BOARD=native and make BOARD=msba2 works fine for the default project.

@LudwigKnuepfer
Copy link
Member Author

For examples/default run: make BOARD=native -B clean all & make BOARD=msba2 -B clean all

mv: cannot stat ‘/tmp/riot_out’: No such file or directory
/foo/RIOT/examples/default/../../Makefile.base:34: recipe for target '/foo/native/RIOT/examples/default/bin/msba2/posix_io.o' failed

@OlegHahm
Copy link
Member

Could not reproduce. Works without problems here. However, I would not guarantee that two RIOT build processes at the same time are safe. I would not see this as a bug, but rather as an enhancement, if that.

@LudwigKnuepfer
Copy link
Member Author

Well, try again .. maybe your computer is too fast ;-)

Obviously, if two build processes use /tmp/riot_out as an intermediate file this is error prone.

@OlegHahm
Copy link
Member

Agreed. Do we need this feature?

Secondary question: Do we need these .d files anyway?

@LudwigKnuepfer
Copy link
Member Author

I don't know if we need support for parallel building, but this use of a /tmp file should be fixed in any case.

@Kijewski
Copy link
Contributor

@OlegHahm the .d files are needed. Otherwise changes to .h files won't get the .o file recompiled. Without the .d files the .o file only depends on the corresponding .c file.
Please see #584.

@kaspar030
Copy link
Contributor

I agree with ludwig that usage of /tmp is a bug...
Parallel building (of boards and projects) speeds up any multi-platform CI... Would be very nice to have for all of us that have workstations that are fast enough to build everything at once.

@mehlis
Copy link
Contributor

mehlis commented Jan 31, 2014

as first fix we can use http://linux.die.net/man/1/mktemp to have a safe folder to work with

@OlegHahm
Copy link
Member

OlegHahm commented Apr 8, 2014

Fixed by #710

@OlegHahm OlegHahm closed this as completed Apr 8, 2014
@LudwigKnuepfer
Copy link
Member Author

It was also fixed by #778

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: enhancement The issue suggests enhanceable parts / The PR enhances parts of the codebase / documentation Type: question The issue poses a question regarding usage of RIOT
Projects
None yet
Development

No branches or pull requests

5 participants