Editor icon indicating copy to clipboard operation
Editor copied to clipboard

Windows: Automatically collect Qt DLLs when installing

Open Ghabry opened this issue 4 years ago • 1 comments

Basicly #141 but for Windows. A similiar patch should even work.

See also #147

Ghabry avatar Mar 31 '21 12:03 Ghabry

The target_link_library Qt5::QSvgIconPlugin is broken when doing a build against a Qt DLL but necessary when building against a static Qt.

This must be made conditional

qsvgicond.dll : fatal error LNK1107: invalid or corrupt file: cannot read
at 0x3A0 [EasyRPG_Editor_exe.vcxproj]

The plugin is dynamically loaded by Qt so maybe the DLL is just not intended to be used this way...


Potential patch but have to check what qt_type contains when using this as a static lib. For shared it is MODULE_LIBRARY.

if(WIN32)
	# Linking against QSvgIconPlugin fails when it is a DLL
	# It is dynamically loaded by Qt instead
	get_target_property(qt_type Qt5::QSvgIconPlugin TYPE)
	message(FATAL_ERROR ${qt_type})
	if (qt_type STREQUAL STATIC_LIBRARY)
		target_link_libraries(${PROJECT_NAME} Qt5::QSvgIconPlugin)
	endif()
else()
	target_link_libraries(${PROJECT_NAME} Qt5::QSvgIconPlugin)
endif()

Ghabry avatar Mar 31 '21 12:03 Ghabry