Open scandyna opened 1 year ago
I don't know how qt5 recipe is written currently, if it has been migrated to conan v2 or not, but since moc
is called after being built and it depends on zlib, this recipe should inject VirtualRunEnv
into build scope in case of native build:
def generate(self):
if not cross_building(self):
VirtualRunEnv(self).generate(scope="build")
What is your question?
As an example, I would like to build
qt/5.15.6
withzlib:shared=True
.This is something that I have tried, and it failed on Windows (Linux build worked, probably because
zlib
is installed in the docker image). Example of a MinGW build:Note that
Error -1073741515
means0xFFFFFFFFC0000135
: missing dll.After investigating:
moc
(and alsorcc
) depends onzlib1.dll
. Building withzlib:shared=False
works.The question: should something be changed in the recipes to be able to build Qt with its dependencies built as shared libraries ?
I have tried to update the
qt/5.x.x
recipe on my fork to use VirtualBuildEnv:(Here is the diff).
This does not solve the problem.
Should the
zlib
recipe also be updated to bring its shared libraries to thePATH
? As an example for Windows only:If the above is true, should every dependency be updated ? Or is there another mechanism for that ?
Some discussions that seem to be similar:
11118
Note: I only mention
zlib
here, but building other dependencies, likeicu
, as shared libraries is also expected.