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

Error when compiling in parallel: possible missing dependency #34

Open
davidshepherd7 opened this issue Mar 27, 2017 · 1 comment
Open

Comments

@davidshepherd7
Copy link
Contributor

Running make in parallell (e.g. with -j 9) results in errors when compiling with 'WD_ENABLE_WEB_VIEW': '1':

g++: error: ./Default/obj.target/test_WD_hybrid/geni/moc_WindowWithEmbeddedViewTest.o: No such file or directory
g++: error: ./Default/obj.target/test_WD_hybrid/geni/moc_WidgetAndWebViewTest.o: No such file or directory
g++: error: ./Default/obj.target/test_WD_hybrid/geni/moc_GraphicsWebViewTest.o: No such file or directory
test_WD_hybrid.target.mk:177: recipe for target 'Default/WebDriver' failed
make: *** [Default/WebDriver] Error 1

These go away if you set -j 1. Presumably there's a missing dependency somewhere, I'd try to fix it myself but I don't really understand the build system.

@hekra01
Copy link
Contributor

hekra01 commented Mar 28, 2017

Hi,

Not sure it is a missing deps. Looks more like some issue with qt's moc when used in parallel.
Observations when following these steps:

  • modify build.sh to do make -j 12, then
$ rm -rf ./out && ./build.sh
ar: Default/obj.target/WebDriver_extension_qt_base/geni/moc_q_view_runner.o: No such file or directory
ar: Default/obj.target/WebDriver_extension_qt_quick/geni/moc_qml_objname_util.o: No such file or directory
  • Rebuild, without changing anything
$ make -j 12 -C out/desktop/release/
 LINK(target) Default/WebDriver
 LINK(target) Default/WebDriver_noWebkit: Finished
g++: error: ./Default/obj.target/test_WD_hybrid/geni/moc_WindowWithEmbeddedViewTest.o: No such file or directory
  • Again rebuild, without changing anything, this time it works
$ make -j 12 -C out/desktop/release/
  LINK(target) Default/WebDriver: Finished
  TOUCH Default/obj.target/All.stamp
make: Leaving directory `/home/hekra01/qtwebdriver/out/desktop/release'

Will check if this is a known gyp or moc issue.
In the meantime the following workaround can be used for build speed

iff --git a/build.sh b/build.sh
index f246ce7..4a2281e 100755
--- a/build.sh
+++ b/build.sh
@@ -49,7 +49,8 @@ do
     [ $? -ne 0 ] && exit 1
     cd $OUTPUT_DIR
     [ $? -ne 0 ] && echo "**** ERROR: Can't access to $OUTPUT_DIR" && exit 1
-    make
+    make -j 12
+    [ $? -ne 0 ] && make
     [ $? -ne 0 ] && exit 1
     mkdir -p ${DIST_DIR}/{bin,lib

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants