On 02/01/2015 08:35 PM, Denis Shienkov wrote: > Ahhh... Seems, it works with "dynamiclibrary_copy" instead of > "dynamiclibrary_import ", > but I'm not sure that it is correctly..
Yes, that's what we link against for gcc-like toolchains. It's a bit of an implementation detail, though. Christian > 01.02.2015 22:22, Denis Shienkov пишет: >> Hi all. >> >> I want to create a wrapper around of existing 3rd DLL on windows as a >> separate product. >> This solution works only with the MSVC compiler, as says in here (in >> previous thread): >> >> http://lists.qt-project.org/pipermail/qbs/2014-May/000807.html >> >> My current snippet: >> >> = dllwrap.qbs = >> >> importqbs >> import qbs.FileInfo >> import qbs.File >> DynamicLibrary { >> name: "mhstcan" >> Transformer { >> Artifact { >> filePath: product.targetName + ".dll" << existing runtime >> library >> fileTags: "dynamiclibrary" >> } >> Artifact { >> filePath: product.targetName + ".lib" << existing import >> library >> fileTags: "dynamiclibrary_import" >> } >> prepare: { >> var commands = [] >> for (var tag in outputs) { >> for (var index in outputs[tag]) { >> var artifact = outputs[tag][index]; >> var cmd = new JavaScriptCommand(); >> cmd.sourceFile = product.sourceDirectory + "/" + >> FileInfo.fileName(artifact.filePath); >> cmd.description = "copying " + >> FileInfo.fileName(cmd.sourceFile); >> cmd.highlight = "codegen"; >> cmd.targetFilePath = artifact.filePath; >> cmd.sourceCode = function() { >> File.copy(sourceFile, targetFilePath); } >> commands.push(cmd); >> } >> } >> return commands; >> } >> } >> } >> >> == app.qbs == >> >> import qbs >> >> >> Application { >> name: "app" >> Depends { name: "cpp" } >> Depends { name: "mhstcan" } >> >> >> files: [ >> "app.cpp", >> ] >> } >> >> >> Briefly: I want to wrap the existing shared library mhstcan.dll (with import >> mhstcan.lib), which is compiled in MSVC, but to using in MinGW compiler. But >> all >> attempts are fails, because the linker does not called never. >> >> Seems, that "dynamiclibrary_import" is defined only for the MSVC compiler. >> But the MinGW has nothing similar. >> >> I tried to: >> >> * use the "staticlibrary" instead of "dynamiclibrary_import" >> * convert the *.lib import file to the *.a import file and to pass to >> Artifact with >> the "*.a" suffix >> >> but nothing successfully - no linker called. >> >> So, my question: is any trick for it? >> >> PS: I use QBS from the QtCreator 3.3.0 + Qt 4.8.6 >> >> BR, >> Denis >> > _______________________________________________ QBS mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/qbs
