首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >启用死键使用的Qt的配置选项是什么?

启用死键使用的Qt的配置选项是什么?
EN

Stack Overflow用户
提问于 2020-04-26 16:35:00
回答 1查看 181关注 0票数 0

我使用一个简单的UbuntuLTS16.04VM为我的一个项目创建一个AppImage。我为此创建了一个极简的静态Qt,这样AppImage的大小就尽可能小了。最近,我使用以下配置选项构建了一个静态QT5.14.2:

代码语言:javascript
复制
../configure -prefix ~/Qt/5.14.2_static -opensource -confirm-license -release -static -optimize-size -no-opengl -no-gif -no-ico -no-libjpeg -skip qt3d -skip qtactiveqt -skip qtandroidextras -skip qtcanvas3d -skip qtcharts -skip qtconnectivity -skip qtdatavis3d -skip qtdeclarative -skip qtdoc -skip qtgamepad -skip qtgraphicaleffects -skip qtimageformats -skip qtlocation -skip qtmacextras -skip qtmultimedia -skip qtnetworkauth -skip qtpurchasing -skip qtquickcontrols -skip qtquickcontrols2 -skip qtremoteobjects -skip qtscript -skip qtscxml -skip qtsensors -skip qtserialbus -skip qtserialport -skip qtspeech -skip qtvirtualkeyboard -skip qtwayland -skip qtwebchannel -skip qtwebengine -skip qtwebglplugin -skip qtwebsockets -skip qtwebview -skip qtwinextras -skip qtxmlpatterns -nomake examples -nomake tests -nomake tools -qt-zlib -sql-sqlite -qt-sqlite -qt-libpng -qt-pcre -qt-xcb

然而,我注意到,构建我的程序和AppImage是可行的,但是死键不起作用。我在这里使用德语语言,按重音键什么也不做。例如,当我将一个´和一个e输入到QLineEdit中时,我只是得到一个e而不是é

我最初认为这是由于vm中缺少了一些东西,但是当我在Gentoo主机上执行相同的Qt构建时(在Qt程序中一直使用死键),我得到的结果是相同的:死键不能工作。所以很可能,这是因为配置错误。

我试验了-libinput-xkb-xkbcommon-qt-harfbuzz配置开关,但我无法获得工作的死键。

在构建Qt时必须设置哪些配置选项,这样死键才能正常工作?

编辑:当我使用这个精确的配置语句构建Qt时,但是共享版本而不是静态版本时,死键可以工作。是什么导致了这一切?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-12 16:34:48

这是由于缺少QTPLUGIN参数而发生的。这几乎是不可能找到的,但很容易解决:

QTPLUGIN += composeplatforminputcontextplugin添加到.pro文件中就可以了。Q_IMPORT_PLUGIN(QComposePlatformInputContextPlugin)自动出现在project_plugin_import.cpp中。

这样做,死键就会像预期的那样在静态构建中工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61444320

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档