Build Issue

I have built Shotcut from source, and the build was successful. However, when opening the executable file, I can launch the application, but I’m unable to open any video files or perform any operations within the application. Additionally, in the terminal, I received this message after opening the executable:
$ ./shotcut.exe
[Debug] Application::~Application exiting.

Try first to analyze the Shotcut.exe with depends.exe from Microsoft!
Maybe some dlls are missing or you run into the dll hell where all libs without a C-Starndard interface have to be compiled with the same compiler!

Hi, Thanks for the response!

First i checked the necessary dll required by this exe using this command “ldd ./shotcut.exe” and i got this output.

$ ldd ./shotcut.exe
ntdll.dll => /c/WINDOWS/SYSTEM32/ntdll.dll (0x7ffb028b0000)
KERNEL32.DLL => /c/WINDOWS/System32/KERNEL32.DLL (0x7ffb00ad0000)
KERNELBASE.dll => /c/WINDOWS/System32/KERNELBASE.dll (0x7ffaffbf0000)
msvcrt.dll => /c/WINDOWS/System32/msvcrt.dll (0x7ffb00f90000)
SHELL32.dll => /c/WINDOWS/System32/SHELL32.dll (0x7ffb01ef0000)
msvcp_win.dll => /c/WINDOWS/System32/msvcp_win.dll (0x7ffb002a0000)
D3DCOMPILER_47.dll => /c/WINDOWS/SYSTEM32/D3DCOMPILER_47.dll (0x7ffafabb0000)
libgcc_s_seh-1.dll => /mingw64/bin/libgcc_s_seh-1.dll (0x7ffadb7c0000)
ucrtbase.dll => /c/WINDOWS/System32/ucrtbase.dll (0x7ffb004e0000)
ucrtbase.dll => /c/Windows/System32/ucrtbase.dll (0x2e09a240000)
libwinpthread-1.dll => /mingw64/bin/libwinpthread-1.dll (0x7fface180000)
RPCRT4.dll => /c/WINDOWS/System32/RPCRT4.dll (0x7ffb02750000)
USER32.dll => /c/WINDOWS/System32/USER32.dll (0x7ffb00bb0000)
win32u.dll => /c/WINDOWS/System32/win32u.dll (0x7ffb00270000)
GDI32.dll => /c/WINDOWS/System32/GDI32.dll (0x7ffb00f60000)
CRYPTSP.dll => /c/WINDOWS/SYSTEM32/CRYPTSP.dll (0x7ffaff300000)
gdi32full.dll => /c/WINDOWS/System32/gdi32full.dll (0x7ffafffa0000)
libstdc+±6.dll => /mingw64/bin/libstdc+±6.dll (0x7ffab1a00000)
libmlt+±7.dll => /mingw64/bin/libmlt+±7.dll (0x7ffacba70000)
libfftw3-3.dll => /mingw64/bin/libfftw3-3.dll (0x7ffaa4900000)
libmlt-7.dll => /mingw64/bin/libmlt-7.dll (0x7ffabfdf0000)
Qt6Charts.dll => /mingw64/bin/Qt6Charts.dll (0x7ffab9b10000)
Qt6Multimedia.dll => /mingw64/bin/Qt6Multimedia.dll (0x7ffab4530000)
ole32.dll => /c/WINDOWS/System32/ole32.dll (0x7ffb01d50000)
combase.dll => /c/WINDOWS/System32/combase.dll (0x7ffb01760000)
Qt6Network.dll => /mingw64/bin/Qt6Network.dll (0x7ffab1860000)
Qt6Gui.dll => /mingw64/bin/Qt6Gui.dll (0x7ffaa11a0000)
Qt6Core.dll => /mingw64/bin/Qt6Core.dll (0x7ffaa28e0000)
advapi32.dll => /c/Windows/System32/advapi32.dll (0x2e09a240000)
ADVAPI32.dll => /c/WINDOWS/System32/ADVAPI32.dll (0x7ffb01040000)
sechost.dll => /c/WINDOWS/System32/sechost.dll (0x7ffb00800000)
WS2_32.dll => /c/WINDOWS/System32/WS2_32.dll (0x7ffb00680000)
bcrypt.dll => /c/WINDOWS/System32/bcrypt.dll (0x7ffb004b0000)
Qt6OpenGL.dll => /mingw64/bin/Qt6OpenGL.dll (0x7ffab95d0000)
Qt6Qml.dll => /mingw64/bin/Qt6Qml.dll (0x7ffaa23c0000)
Qt6QuickControls2.dll => /mingw64/bin/Qt6QuickControls2.dll (0x7ffac1320000)
Qt6QuickWidgets.dll => /mingw64/bin/Qt6QuickWidgets.dll (0x7ffabfec0000)
Qt6Quick.dll => /mingw64/bin/Qt6Quick.dll (0x7ffa9fce0000)
Qt6Sql.dll => /mingw64/bin/Qt6Sql.dll (0x7ffabfd90000)
Qt6Xml.dll => /mingw64/bin/Qt6Xml.dll (0x7ffabfc90000)
Qt6Widgets.dll => /mingw64/bin/Qt6Widgets.dll (0x7ffa9f6a0000)
libdl.dll => /mingw64/bin/libdl.dll (0x7ffabfb90000)
libiconv-2.dll => /mingw64/bin/libiconv-2.dll (0x7ffab39e0000)
Qt6OpenGLWidgets.dll => /mingw64/bin/Qt6OpenGLWidgets.dll (0x7ffabf4e0000)
WINMM.dll => /c/WINDOWS/SYSTEM32/WINMM.dll (0x7ffafd580000)
d3d11.dll => /c/WINDOWS/SYSTEM32/d3d11.dll (0x7ffafb810000)
libCuteLogger.dll => not found

Here i inferred that the libcuteLogger.dll is missing, so what i did was i just export the path of the dll using this command.

export PATH=“$PATH:/usr/local/lib”

Now, i got this output when i did “ldd ./shotcut.exe”

    libfreetype-6.dll => /mingw64/bin/libfreetype-6.dll (0x7ffab3210000)
    libzstd.dll => /mingw64/bin/libzstd.dll (0x7ffab1960000)
    libCuteLogger.dll => /usr/local/lib/libCuteLogger.dll (0x7ffabe4a0000)
    AUTHZ.dll => /c/WINDOWS/SYSTEM32/AUTHZ.dll (0x7ffafe7d0000)

So now everything seems fine with respect to dll.

Under Windows you can copy every direct included DLL by the compiler into the folder of the *.exe file and this should work.

I could definitely help you to solve a problem without ever compiling Shotcut myself! :grinning:

Maybe you have to compile FFMPEG too with the same compiler if the ffmpeg dlls are not compiler compatible.

Otherwise you have to wait until you get a response from the shotcut programming team.

1 Like

Thanks for the response! I’ll give it a shot.