-
Notifications
You must be signed in to change notification settings - Fork 424
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Copy certain plugins unless "-no-plugins" is specified #82
Comments
What exactly in your AppImage requires/uses the SVG plugin, and how could |
There is no way to detect it because this is about shipping the SVG
image plugin. This plugin enables reading of SVG image files, but it is
only shipped when the application depends on QtSvg (checked specifically
by linuxdeployqt).
If the SVG image plugin would always be shipped, this would mean
linuxdeployqt would always ship QtSvg as well, which may not be
desirable because it increases the size of the package (though I think
only about 1 MB).
|
Sorry for my ignorance here, but which component uses, i.e., takes advantage of a present, SVG image plugin? (So could we say, if this component is present, we should also deploy the SVG image plugin?) As a workaround, have you tried running |
No component in my application uses this plugin. It is a Qt plugin, and
if it isn't there, Qt is not able to read images in SVG format. But that
means my application can't read SVG images either, so I'd like this
plugin to be included and I'm looking for a way to tell this to
linuxdeployqt.
|
OK, I begin to understand, you are saying conceptually there is no way for |
Hmm, I guess it would! I did not realize that I could use linuxdeployqt this way. I'll give it a try this evening. |
I don't think Qt needs QtSvg to read SVG format - I learnt that a couple of days ago myself on #qt. You only need QtSvg if you are actually |
The SVG image plugin uses QtSvg for rasterizing the SVG into a QImage. So, the plugin will not work if you do not distribute QtSvg with your program. This of course does not apply when you're not distributing your program, or when the program is distributed as an operating system package with Qt as a dependency. In that case, the SVG image plugin installed on the system will be used, which will pick up the QtSvg library installed on the system and you don't need to worry about it. |
Actually we inherited from
but didn't implement it so far... so would this solve your concern, do you think this would be a sensible thing to implement? |
I'd be fine with it
…On Sun, 26 Mar 2017 4:28 pm probonopd, ***@***.***> wrote:
Actually we inherited from macdeployqt the sentence
The accessibility, image formats, and text codec plugins are always
copied, unless "-no-plugins" is specified
but didn't implement it so far... so would this solve your concern, do you
think this would be a sensible thing to implement?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#82 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAGxjJrJjlygiZIDnkVrjq78Hh8GpopIks5rpnXzgaJpZM4MHLOV>
.
|
Yeah, that would work fine for me as well. The only problem I guess would be that packages are a little larger for those not shipping QtSvg, but the SVG image plugin is really small anyway (only about 23K), so I guess the logic meant to exclude it could just be removed. |
OK, the path of action is clear then:
needs to be implemented. |
PR welcome! |
I've currently solved the issue in Tiled by copying over the SVG image plugin before running
But maybe I can try a PR for this on Monday. |
…d *. For the SVG icon engine and SVG in nodes, the problem was resolved by adding qtsvg package in travis - See last commit by @probonopd in probonopd/linuxdeployqt#82
When I released Tiled 0.18.1, the Linux archive built with linuxdeployqt (version 9a1fbab) contained
libQt5Svg.so.5
and thelibqsvg.so
image format plugin. Now that I'm using linuxdeployqt release 2, neither of these are included anymore.I would like to use release 2, because it fixes the shipping of all other image format plugins. However I would prefer not to drop the SVG plugin. The problem is that Tiled does not itself rely on QtSvg (I tried linking it to QtSvg, but that was not enough to fool linuxdeployqt, I needed to actually use it).
What would a proper solution look like? I could imagine specifying additional Qt libraries to include, or specifying additional Qt plugins to include, or handling SVG explicitly with an
-qtsvg
command line option.The text was updated successfully, but these errors were encountered: