Solved - Error: dependent '..\..\..\Marvell\DiniCmos\includes\DiniCmos_interface.h' does not exist.



  • Hello,
    As recommended by a vendor who sold me a PC Board and software, I'm using QT Creator to build a Windows static library to control and communicate with the board from the host computer. All the folders and the project file are ready to go (supposedly). I'd ask them this question but they seem unwilling to support their products. So, I downloaded, installed and opened Qt Creator, I loaded the project. All the files and the correct directory structure was shown in the Projects window. I click the green arrow and I get, in the Compile output window,

    Error: dependent '......\Marvell\DiniCmos\includes\DiniCmos_interface.h' does not exist..

    Well the file is there. It does exist. I went through the project file carefully and the path is properly specified. So, after about 8 hours playing with this, I'm beside myself on why this is happening. The project file is below. I was wondering if anyone can give me a hint as to what they think might be going on? Thank you.

    @

    ----------------------------------------------------------

    QT PROJECT FOR BUILDING EMULIB LIBRARY FOR WIN32 and LINUX

    ----------------------------------------------------------

    Set the compiler constant for standalone library mode

    DEFINES += EMU_STANDALONE_LIBRARY

    Set the type of project

    TEMPLATE = lib
    CONFIG += staticlib

    Optimization

    QMAKE uses -g and no optimization in the debug configuration

    QMAKE uses -O2 in the release configuration

    Set Target

    win32:CONFIG(debug,debug|release):TARGET = emulib_win32_dbg
    win32:CONFIG(release,debug|release):TARGET = emulib_win32
    unix:CONFIG(debug,debug|release):TARGET = emulib_linux_dbg
    unix:CONFIG(release,debug|release):TARGET = emulib_linux

    Set the target folder for resulting binaries

    CONFIG(debug,debug|release):DESTDIR = .
    CONFIG(release,debug|release):DESTDIR = .

    NOTE: BECAUSE WE DONT USE throw(), WE DEPEND ON ASSERT TO HALT PROGRAM EXECUTION

    WHEN UNEXPECTED ERROR CONDITIONS OCCUR, THEREFORE WE DO NOT WANT TO DISABLE

    CALLS TO assert() EVEN IN RELEASE BUILDS!

    DO NOT Disable any assert() statements for production code

    NO! CONFIG(release,debug|release):DEFINES += NDEBUG

    ###################################################################################

    LIST ALL PROJECT DEPENDENCIES HERE

    "SOURCES" and "HEADERS" ARE USED BY QT FOR THE BUILD

    APPROPRIATE FILES ARE ADDED TO THESE BELOW THIS SECTION

    FILES ARE SEPARATED BY GUI/CMD and WIN32/UNIX

    ###################################################################################

    WIN32_SOURCES += ../source/EMULIB/emulib_os_dep_win32.cpp
    UNIX_SOURCES += ../source/EMULIB/emulib_os_dep_linux.cpp

    WIN32_HEADERS += ../source/EMULIB/../../../Drivers/windows_pci/GUIDs.h
    ../source/EMULIB/../../../Drivers/windows_pci/Ioctl.h

    UNIX_HEADERS += ../source/EMULIB/usbdrvlinux.h

    SOURCES +=
    ../source/EMULIB/diniapi.cpp
    ../source/EMULIB/diniapi_direct.cpp
    ../source/EMULIB/diniapi_ethernet.cpp
    ../source/EMULIB/diniapi_pcie.cpp
    ../source/EMULIB/diniapi_usb.cpp
    ../source/EMULIB/diniboard.cpp
    ../source/EMULIB/diniboard_id.cpp
    ../source/EMULIB/interconnect_data.cpp
    ../project_qt/EMU_QT_VERSION.cpp

    HEADERS +=
    ../source/EMULIB/diniapi.h
    ../source/EMULIB/diniboard.h
    ../source/EMULIB/dinicookie.h
    ../source/EMULIB/diniboard_id.h
    ../source/EMULIB/interconnect_data.h
    ../source/EMULIB/emulib_os_dep.h
    ../source/EMULIB/fpga_config_commands.h
    ../source/EMULIB/DiniCmos_interface.h

    ../source/EMULIB/../../../../Marvell/DiniCmos/includes/DiniCmos_interface.h

    ###################################################################################

    Select appropriate files for this build

    QT -= gui
    CONFIG -= app_bundle
    win32:SOURCES += $$WIN32_SOURCES
    unix:SOURCES += $$UNIX_SOURCES
    win32:HEADERS += $$WIN32_HEADERS
    unix:HEADERS += $$UNIX_HEADERS

    Display contents of CONFIG variable

    message($$CONFIG)

    @

    [Edit: Wrapped code in @ tags -- mlong]


  • Moderators

    Did you comment out line 66 yourself while trying to make it work?



  • Yes, I did. I moved the file and changed the line to correspond to the new file position and got the same error.


  • Moderators

    Got shadow build enabled? (Under the Projects screen.) If so, try it without, just for grins.



  • I remember seeing that check box somewhere but I'm not finding it now. Where is that control?



  • Well, I turned off the shadow build. I had to clean the folder holding the project file and copy the original files from the vendor's distribution. Then when I loaded the project into QT it presented me with the shadow build checkbox. Ther Compile Output is below. Not sure what it all means.

    18:35:00: Running build steps for project emulib...
    18:35:00: Starting: "c:\qtsdk\desktop\qt\4.8.1\msvc2010\bin\qmake.exe" C:\BackhusR\webjunk\DINI_Group\PurchasedBoardDocumentationPackage\DNDUALV6_PCIE4\Host_Software\emu\App\out_release\1.3.5\Software\emu\App\project_emulib\emulib.pro -r -spec win32-msvc2010 "CONFIG+=declarative_debug"
    18:35:01: The process "c:\qtsdk\desktop\qt\4.8.1\msvc2010\bin\qmake.exe" exited normally.
    18:35:01: Starting: "C:\QtSDK\QtCreator\bin\jom.exe"
    'cl' is not recognized as an internal or external command,
    operable program or batch file.
    cl -c -nologo -Zm200 -Zc:wchar_t- -Zi -MDd -GR -EHsc -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DEMU_STANDALONE_LIBRARY -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\include\QtCore" -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\include" -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\include\ActiveQt" -I"debug" -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\rbackhus\AppData\Local\Temp\diniapi.obj.7676.62.jom
    cl -c -nologo -Zm200 -Zc:wchar_t- -Zi -MDd -GR -EHsc -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DEMU_STANDALONE_LIBRARY -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\include\QtCore" -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\include" -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\include\ActiveQt" -I"debug" -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\rbackhus\AppData\Local\Temp\diniapi_ethernet.obj.7676.78.jom
    cl -c -nologo -Zm200 -Zc:wchar_t- -Zi -MDd -GR -EHsc -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DEMU_STANDALONE_LIBRARY -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\include\QtCore" -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\include" -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\include\ActiveQt" -I"debug" -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\rbackhus\AppData\Local\Temp\diniapi_usb.obj.7676.93.jom
    cl -c -nologo -Zm200 -Zc:wchar_t- -Zi -MDd -GR -EHsc -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DEMU_STANDALONE_LIBRARY -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\include\QtCore" -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\include" -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\include\ActiveQt" -I"debug" -I"c:\QtSDK\Desktop\Qt\4.8.1\msvc2010\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\rbackhus\AppData\Local\Temp\diniboard_id.obj.7676.109.jom
    jom: C:\BackhusR\webjunk\DINI_Group\PurchasedBoardDocumentationPackage\DNDUALV6_PCIE4\Host_Software\emu\App\out_release\1.3.5\Software\emu\App\project_emulib\Makefile.Debug [debug\diniapi.obj] Error 1
    C:\QtSDK\QtCreator\bin\jom.exe -f Makefile.Debug

    jom 1.0.8 - empower your cores

    jom: C:\BackhusR\webjunk\DINI_Group\PurchasedBoardDocumentationPackage\DNDUALV6_PCIE4\Host_Software\emu\App\out_release\1.3.5\Software\emu\App\project_emulib\Makefile [debug] Error 2
    18:35:02: The process "C:\QtSDK\QtCreator\bin\jom.exe" exited with code 2.
    Error while building project emulib (target: Desktop)
    When executing build step 'Make'



  • Well, problem solved. The vendor's manual was not clear that that the compilation has to be done with mingGW. The author alluded to mingGW in another section of the manual when talking about the QT creator tool itself, but like so much of this vendor's documentation and their source code, it is poorly written and often ambiguous. The author talked like QT Creator was configured by default to compile their library, which it is not. Well, another two days wasted.


  • Moderators

    Ah, glad you were able to figure it out! Please be sure and edit your initial post to add [Solved] to the thread title. Thanks!


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.