swtdrgn
swtdrgn

Reputation: 1184

Qt - Compilation Error: Couldn't change working directory

I am trying to compile oxideqt, a QML API for Chromium Embedded Framework (CEF), but I am experiencing an error:

11:13:58: Running steps for project oxideqt...
11:13:58: Configuration unchanged, skipping qmake step.
11:13:58: Starting: "C:\Qt\Qt5.1.1\Tools\QtCreator\bin\jom.exe" 
    cd qt\lib\ && ( if not exist Makefile C:\Qt\Qt5.1.1\5.1.1\msvc2010\bin\qmake.exe C:\Users\simon\Documents\oxide\qt\lib\lib.pro -spec win32-msvc2010 -o Makefile ) && C:\Qt\Qt5.1.1\Tools\QtCreator\bin\jom.exe -f Makefile
    C:\Qt\Qt5.1.1\Tools\QtCreator\bin\jom.exe -f Makefile.Release
    cd C:/Users/simon/Documents/oxide; ./build/gyp_oxide -IC:/Users/simon/Documents/oxide/qt/qt.gypi -Doxide_qt_libversion=0
Couldn't change working directory to C:/Users/simon/Documents/oxide; ./build/gyp_oxide -IC:/Users/simon/Documents/oxide/qt/qt.gypi -Doxide_qt_libversion=0.
jom: C:\Users\simon\Documents\build-oxideqt-Desktop_Qt_5_1_1_MSVC2010_32bit-Release\qt\lib\Makefile.Release [C:\Users\simon\Documents\oxide\Makefile.oxide] Error 1
jom: C:\Users\simon\Documents\build-oxideqt-Desktop_Qt_5_1_1_MSVC2010_32bit-Release\qt\lib\Makefile [release] Error 2
jom: C:\Users\simon\Documents\build-oxideqt-Desktop_Qt_5_1_1_MSVC2010_32bit-Release\Makefile [sub-qt-lib-lib-pro-make_first-ordered] Error 2
11:13:58: The process "C:\Qt\Qt5.1.1\Tools\QtCreator\bin\jom.exe" exited with code 2.
Error while building/deploying project oxideqt (kit: Desktop Qt 5.1.1 MSVC2010 32bit)
When executing step 'Make'

It looks like that it is doing a cd on C:/Users/simon/Documents/oxide; ./build/gyp_oxide -IC:/Users/simon/Documents/oxide/qt/qt.gypi -Doxide_qt_libversion=0, but I cannot find out which script is doing the cd.

The following are the associated .pro files:

oxideqt.pro (top level .pro)

TEMPLATE = subdirs
CONFIG += ordered

lib.file = qt/lib/lib.pro
SUBDIRS += lib

renderer.file = qt/renderer/renderer.pro
SUBDIRS += renderer

sandbox.file = qt/sandbox/sandbox.pro
SUBDIRS += sandbox

qmlplugin.file = qt/qmlplugin/qmlplugin.pro
SUBDIRS += qmlplugin

testutils.file = qt/tests/utils/testutils.pro
SUBDIRS += testutils

qmltests.file = qt/tests/qmltests/qmltests.pro
SUBDIRS += qmltests

QMAKE_CLEAN += -r \
    $${OXIDE_SRC_ROOT}/Makefile.oxide \
    `find $$OXIDE_SRC_ROOT -name \"*.target.oxide.mk\"` \
    $$CHROMIUM_OUT_DIR

lib.pro

CONFIG += gyp disable_check
TARGET = oxide-qt
GYP_TYPE = lib

include($${OXIDE_QMAKE_PATH}/oxide_variables.pri)

GYP_LIBVERSION = $$OXIDE_QT_LIBVERSION

resources.path = $$LIBEXECDIR
resources.files = \
    $${CHROMIUM_OUT_PLAT_DIR}/oxide.pak \
    $${CHROMIUM_OUT_PLAT_DIR}/oxide_100_percent.pak
resources.CONFIG = no_check_exist
INSTALLS += resources

Upvotes: 3

Views: 1875

Answers (3)

KimKulling
KimKulling

Reputation: 2843

I just looked over the configuration of the whole pro-files and found a lot of unix-specific paths like /usr/local. Is window as a build target at all supported? As mentioned before the build script cannot work with cd ; command . Maybe you can try to run it using cygwin?

Kim Kulling

Upvotes: 0

KimKulling
KimKulling

Reputation: 2843

It seems that http://bazaar.launchpad.net/~oxide-developers/oxide/oxide.trunk/view/head:/build/gyp_oxide is a python-script, which the make tries to start. Is python.exe in your PATH-variable?

Kim Kulling

Upvotes: 1

hyde
hyde

Reputation: 62888

A possible reason and solution:

This looks like it is for sh, not for cmd.exe:

cd C:/Users/simon/Documents/oxide; ./build/gyp_oxide -IC:/Users/simon/Documents/oxide/qt/qt.gypi -Doxide_qt_libversion=0

If so, it may be due to faulty auto-detection of shell. A reason for that happening might be that there is sh.exe in the PATH. So, find out where it is, and either remove the folder from PATH or rename the file to sh_.exe or whatever.

To find it, this should find the file (a link) at the correct cmd.exe prompt for the build environment:

where sh

Note that if you have a lot of stuff installed, you may have several of them in your PATH, so after getting rid of first, check again... If still not solved, try removing bash from PATH too (though I have not seen that causing trouble). Also remember to restart the IDE or the command prompt if you edit system PATH, for the change to take effect. And then remember to re-run qmake.

Upvotes: 3

Related Questions