Wireshark-dev: Re: [Wireshark-dev] VS 2013 Local Windows Debugger shows Qt5Core.dll is missing

From: Graham Bloice <graham.bloice@xxxxxxxxxxxxx>
Date: Mon, 5 Sep 2016 19:09:28 +0100


On 5 September 2016 at 17:40, Paul Offord <Paul.Offord@xxxxxxxxxxxx> wrote:

Hi,

 

I have built Wireshark in the master branch from a git pull that I did today.  I use VS 2013 on Windows 7 and Wireshark builds OK.  I run the Debug x64 build using Local Windows Debugger and I get an error telling me:

 

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

The Wireshark Network Analyzer: Wireshark.exe – System Error

 

The program can’t start because Qt5Core.dll is missing from your

Computer.  Try reinstalling the program to fix this problem.

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

 

If I click OK Wireshark starts without a problem.

 

It’s true that I don’t have Qt5Core.dll in the \run\Debug directory, but I do have Qt5Cored.dll which is what I expect as I’m running the Debug build.

 

Is this a general problem or is unique to me?

 

Thanks and regards…Paul

 



I don't know if this is the issue in your case, but the appropriate Qt DLL's are copied into the run\xxx directory by a Qt utility called windeployqt, which looks at the build type of the executable (wireshark.exe), see http://doc.qt.io/qt-5/windows-deployment.html.

There have been issues in the past with this tool, and we do pass the "--debug" flag to it when building a debug version, but I'm not sure if that's it.

You could try opening a new shell, cd to your run\Debug directory, add the path to the appropriate Qt bin directory (where windeployqt is found) and run windeployqt with the "--dry-run" flag to see what happens, e.g. for PowerShell:

    cd path\to\run\Debug
    $env:Path += ";path\to\Qt\Bin\dir"
    windeployqt --dry-run --debug wireshark.exe

if the output looks reasonable, then try without the "--dry-run".


--
Graham Bloice