当前位置: 首页 > news >正文

临翔区城乡建设局网站建设企业网站的企业

临翔区城乡建设局网站,建设企业网站的企业,青岛网站建设莫道网络,三河建设局网站目录 前言1.源码下载2.编译安装2.1 安装依赖2.2 编译2.3 遇到的问题2.4 安装 3.编译qtwebengine3.1 安装依赖库3.2 编译3.3 遇到的问题3.4 安装 4.配置开发环境5.测试6.程序无法输入中文的问题总结 前言 近期因参与开发的某个软件需要适配银河麒麟v10arm 平台#xff0c;于是… 目录 前言1.源码下载2.编译安装2.1 安装依赖2.2 编译2.3 遇到的问题2.4 安装 3.编译qtwebengine3.1 安装依赖库3.2 编译3.3 遇到的问题3.4 安装 4.配置开发环境5.测试6.程序无法输入中文的问题总结 前言 近期因参与开发的某个软件需要适配银河麒麟v10arm 平台于是自己搭建起一套Qt 开发环境在此记录下具体过程以供有需要的朋友参考。一开始手上并没有Arm架构的PC先在Windows下用Vs2017和QtCreator 开发软件开发快结束的时候Arm PC到了。Qt 没有提供可直接安装的arm架构安装包只能自己通过编译Qt 来搭建开发环境。 1.源码下载 下载Qt5.12.7从这里下载Qt5.12.7 。一定要选择后缀为.tar.xz的源码包zip源码包亲测编译时会遇到奇怪的问题。 2.编译安装 2.1 安装依赖 安装OpenGL依赖 sudo apt-get install build-essential sudo apt-get install libgl1-mesa-dev sudo apt-get install libglu1-mesa-dev sudo apt-get install libegl1-mesa-dev sudo apt-get install freeglut3-dev 2.2 编译 打开终端cd到源码所在目录执行configure程序并make这里以编译release版本为例 ./configure -prefix /opt/qt5.12.7 -opensource -release -nomake tests -skip qtvirtualkeyboard 接着执行make 命令make -j42.3 遇到的问题 编译过程遇到了一些问题记录如下 1问题一 /usr/bin/ld.gold错误cannot find -lclip2tri /usr/bin/ld.gold错误cannot find -lpoly2tri /usr/bin/ld.gold错误cannot find -lclipper该问题的原因是qtlocation模块未编译完整重新执行 make -j4 module-qtlocation 命令 可消除此错误也可以在执行configure命令的时候添加 -skip qtlocation 来跳过编译。 2问题二 xcb-xfixes development package not found 这个问题的解决方式是安装对应的软件包执行下面的命令来安装安装之后重新执行 make -j4。 sudo apt-get install libxcb-util0-dev2.4 安装 除此之外还有其他一些小问题根据错误提示就能解决没记录下来。 make 结束之后执行 sudo make install 命令会将编译好的Qt开发环境安装到之前设置的目录下 /opt/qt5.12.7 。 3.编译qtwebengine qtwebengine是后期需要引入echarts时才编译的编译过程中也遇到了一些奇怪的问题特在此记录下来备忘。qtwebengine需要用到qmake及Qt的一些核心库因此必须先确保第3节中的qt编译完成。 3.1 安装依赖库 sudo apt-get install bison build-essential gperf flex libasound2-dev\ libcups2-dev libdrm-dev libegl1-mesa-dev libnss3-dev libpci-dev\ libpulse-dev libudev-dev nodejs libxtst-dev gyp ninja-build\ libssl-dev libxcursor-dev libxcomposite-dev libxrandr-dev在安装 libnss3-dev 时报错大概意思是版本不对使用sudo apt-get install libnss3-dev xxxversion ,安装成功。错误如下 ibnss3-dev : 依赖: libnss3 ( 2:3.49.1-1kylin1.5) 但是 2:3.49.1-1kylin1.6 正要被安装解决方法安装指定版本的依赖包 sudo apt-get install libnss32:3.49.1-1kylin1.5 3.2 编译 打开终端 cd 到 src/qtwebengine 目录下执行命令 ../qtbase/bin/qmake qtwebengine.pro3.3 遇到的问题 gperf not found 执行完qmake 命令后报错gperf not found以为gperf 没有安装成功再次使用apt-get 安装缺少的依赖sudo apt-get install gperf 安装完成后需要将configure命令生成的缓存清除掉然后重新执行configure 命令并再次执行qmake命令如下 rm config.cache ./configure -prefix /opt/qt5.12.7 -opensource -release -nomake tests -skip qtvirtualkeyboard ../qtbase/bin/qmake qtwebengine.pro make -j4X11/Xlib-xcb.h 找不到 不出意外开始编译了经过漫长的等待编译又出错了这次遇到的是fatal error X11/Xlib-xcb.h 文件不存在。第一感觉是缺少对应的库经过一番查找发现需要安装 libx11-dev 于是执行 sudo apt-get install libx11-dev成功安装后仍然报错。通过find命令查找该头文件确实没有找到 find /usr -name Xlib-xcb.h 。 我耐着性子查询了很多资料还是没能解决问题这时只剩下最后一条路了那就是下载libx11-dev源码从libx11地址下载系统libX11版本对应的libx11-dev源码后与当前系统/usr/lib/include/X11 目录进行比较发现系统重确实少了Xlib-xcb.h 文件而下载的源码中刚好有这个文件于是将 Xlib-xcb.h 复制到 /usr/lib/include/X11 目录下重新执行 make -j4 继续编译。libXlib-xcb.so 找不到 又是漫长的等待过后报了一个错这次是 libXlib-xcb.so 找不到通过find命令发现在 /usr/lib/arm-linux-gnueabihf/ 目录下有这个库根据报错信息提示在/usr/lib/aarch64-linux-gnu/ 目录下创建了一个 软连接 ln -s /usr/lib/arm-linux-gnueabihf/libXlib-xcb.so libXlib-xcb.so, 接着再次执行make -j4 ,这次没有提示libXlib-xcb.so 找不到而是提示libXlib-xcb.so 不兼容。libXlib-xcb.so 不兼容 针对这个问题我打算重新编译libXlib 库。首先安装libtool 和 autoconfig sudo apt-get install libtool autoconf切换到libXlib 源码根目录下 执行 ./autogen.shconfigure.ac:24: error: must install xorg-macros 1.15 or later before running autoconf/autogen下载对应的 rpm 安装包下载地址 sudo rpm -ivh xorg-x11-util-macros-1.19.3-4.el9.noarch.rpm --nodeps --force安装后再次执行 ./autogen.sh make 编译结束后会生成libXlib-xcb.so 把库拷贝到/usr/lib 目录下 删除之前创建的 /uar/lib/aarch64-linux-gnu 目录下的软连接重新创建对应的软连接然后回到qtwebengine 根目录下再次 执行 make -j4 open CFI at the end of file; missing .cfi_endproc directive 这个问题是qtwebengine 编译过程中由于占用内存太多而系统内存不足导致的报错。我用的设备内存是8G交换空间是9G为了解决这个问题将交换空间增加了20G最终才编译成功。 以下是增加交换空间用到的几个命令 #创建swap文件 mkdir -p /var/cache/swap sudo dd if/dev/zero of/var/cache/swap/swap0 bs1G count20 #转换swap文件 sudo mkswap -f /var/cache/swap/swap0 #激活swap文件 sudo swapon /var/cache/swap/swap0 #卸载 sudo swapoff /var/cache/swap/swap0 #永久生效 sudo vim /etc/fstab #写入以下内容: /var/cache/swap/swap0 none swap defaults 0 0再次执行make -j4这次成功生成了 libQt5WebEngine 等几个qtwebengine 用到的库。 3.4 安装 在qtwebengine 根目录下执行sudo make install ,生成的库会自动安装到/opt/qt5.12.7目录下。 4.配置开发环境 首先在软件商店中下载并安装QtCreator安装完成之后配置QtVersion 、编译器、Kits等。可以参考这篇文章配置链接 5.测试 新建一个项目运行测试。这里遇到一个问题程序可正常编译运行但是源码文件确报错 unexpected class name这是因为缺少一个软件包通过安装这个软件包解决了此问题安装命令如下 sudo apt-get install libclang-common-8-dev安装完成后重启QtCreater不会再出现上面的问题了。 6.程序无法输入中文的问题 经过查询发现是插件问题自己编译的qt开发环境中缺少插件 libfcitxplatforminputcontextplugin.so这里有两个办法解决这个问题一个是下载源码自己编译该插件另一个是在系统中找到这个插件并拷贝到对应的插件目录中。这里采用第二种方式解决了该问题如果第二种方式不能解决那就尝试用第一种方式自己编译插件吧。 总结 从零开始搭建麒麟系统arm平台下的Qt开发环境还是挺折磨人的在这个过程中会遇到很多新的问题只有自己动手实践一遍才能真正体会。我把完整的qt环境上传到git上了如果你也刚好需要而又不想折腾的话可以直接下载使用。下载地址 以上就是本篇的所有内容了欢迎评论区留言讨论
http://www.dnsts.com.cn/news/237817.html

相关文章:

  • 个人网站备案注意事项网页站点规划
  • 找做外墙油漆网站中国建设人才服务信息网是不是假冒网站
  • 行业 专业 网站建设wordpress 速度慢
  • 网站建设是专业培训学校招生方案
  • 建网站 是否 数据库网站建设 中企动力板材生态板
  • 滨州的网站开发杭州网站开发招聘
  • 做剧情网站侵权吗站酷高高手
  • 牛什么网站建设旅游网站开发的国内外现状
  • 仿做网站网络直播平台搭建
  • 自己做的网站怎么放图片企业vi包括哪些内容
  • 怎么验证网站备案密码是否正确前端培训学校
  • 遵义做企业网站html创建站点的步骤
  • 中国建设银行的网站设计青之峰做网站
  • 湖南长沙又检出1例阳性seo和sem
  • 我要浏览国外网站怎么做公司建设一个网站有什么好处
  • 网站建设全网站建设发文章几点发比较合适
  • 谷德设计网站在线装修设计软件免费版
  • 网站建网站建设专业wordpress怎样搭建
  • 网站建设毕业设计摘要325建筑人才网招聘
  • 塑胶加工东莞网站建设技术支持福州网站建设公司中小企业
  • 网站建设管理经验做法网站架构设计师月薪多少
  • 阿里云做网站需要些什么软件国内vps推荐
  • 网站开发需要解决的问题如何制作3d效果图
  • 成都住建厅官方网站如何开发网站平台开发
  • 申请网站做自己的产品wordpress 带水印
  • 百度行业网站怎么做做网站的计划概要
  • 下载学校网站模板下载安装重养网站建设
  • 中园建设银行网站wordpress主题制作入门
  • 视频网站点击链接怎么做域名买好了怎么建网站
  • 在哪个网站做视频赚钱不用下载直接进入的app