[Industry News] 根据QT开发框架的多次重新架构,deepin在酝酿新编程语言unilang
Tofloor
poster avatar
deepin
2022-09-15 10:10
Author


27B0700349773B65632BD43808648DC4.jpg
前言:

深度操作系统,通过QT5开发框架的多年使用,已经重新构建了自己的DTK开发套件,其主力软件编程开发语言仍为C++。

但是,C++编程语言存在较难学习、项目开发周期往往较长、成本较高等问题,具有沉重的历史包袱。

deepin Unilang的出现,则是为适应更有效和灵活开发桌面环境QT应用的通用目的编程语言。

QT5框架的环境安装:

支持的宿主环境为 MSYS2 MinGW32 和 Linux ,Linux 平台只支持 x86_64 宿主架构。

# Some dependencies may have been preinstalled.
# MSYS2
pacman -S --needed bash coreutils git mingw-w64-x86_64-gcc mingw-w64-x86_64-binutils mingw-w64-x86_64-libffi mingw-w64-x86_64-llvm mingw-w64-x86_64-pkgconf mingw-w64-x86_64-qt5
# Arch Linux
sudo pacman -S --needed bash coreutils git gcc binutils libffi pkgconf qt5-base
yay -S llvm70 # Or some other AUR frontend command.
# Debian (buster/bullseye)/Ubuntu (bionic-updates/focal)/Deepin
sudo apt install bash coreutils git g++ libffi-dev llvm-7-dev pkg-config qtbase5-dev

新编程语言Unilang的安装环境和运行过程

由于自己刚刚才开始接触,对其在Linux中的配置环境仍不是非常熟悉,我这里就暂时提供相应的文档链接和开源仓库链接,供大家查阅和测试。

gitee开源仓库链接:mirrors_linuxdeepin / unilang

github开源仓库链接:linuxdeepin / unilang

这两个仓库,我更建议国内的开发者在gitee中进行查阅,有中文会更方便。

结语

深度deepin的新编程语言unilang,目前是处于刚萌芽的阶段,相关文档内容也并不是非常全面,它的最终演变则是捆绑QT开发框架、或者捆绑DTK开发套件,形成SDK文件,在QtQreater编辑器中更容易集成开发环境。

最后,新编程语言unilang仍基于Linux debian的软件包管理apt,至于后期会不会移植到deepin自家的玲珑软件包软件中,也是deepin软件开发者比较在意的地方。

Reply Favorite View the author
All Replies
2 / 2
To page
方老四
deepin
2022-09-17 17:55
#21

华为、阿里、腾讯这些企业都是玩互联网长大的,你喊他们来搞桌面开发,做梦吧,没有利益的事他们不为会做的。中国的桌面Linux生态建设,只能靠龙芯和统信。我非常看好这两家公司的联合创新,会给国内Linux带来一片新天地。自主指令集有了,自主操作系统快成了,自主编程框架是必由之路。

Reply View the author
deepin
2022-09-17 18:34
#22
方老四

华为、阿里、腾讯这些企业都是玩互联网长大的,你喊他们来搞桌面开发,做梦吧,没有利益的事他们不为会做的。中国的桌面Linux生态建设,只能靠龙芯和统信。我非常看好这两家公司的联合创新,会给国内Linux带来一片新天地。自主指令集有了,自主操作系统快成了,自主编程框架是必由之路。

华为的鸿蒙系统也不错。

Reply View the author
cz012273
deepin
2022-10-09 04:49
#23

在uos系统中试了一下,运行自带的demo文件qt.txt点击第一次正常,第二次就会出错,有知道并解决该问题的大神没?confused

Reply View the author
deepin
2022-10-09 23:21
#24
cz012273

在uos系统中试了一下,运行自带的demo文件qt.txt点击第一次正常,第二次就会出错,有知道并解决该问题的大神没?confused

难道是编译问题?

Reply View the author
cz012273
deepin
2022-10-10 01:25
#25

难道是编译问题?

unilang不是解释运行吗?也尝试过运行实现同样功能的python版demo(qt.py),提示找不到pyside2功能模块,没成功。😂

Reply View the author
deepin
2022-10-10 02:16
#26
cz012273

unilang不是解释运行吗?也尝试过运行实现同样功能的python版demo(qt.py),提示找不到pyside2功能模块,没成功。😂

如果代码编译没问题,非常有可能是依赖包的问题。

Reply View the author
cz012273
deepin
2022-10-10 02:30
#27

通过插入log语句方式下断点,初步判断问题出在这句上:

QObject-connect button "clicked(bool)" ($remote-eval _dynamic self)
($lambda/e (make-environment self global) () (
logd "[slot] Callback called.";
QLabel-setText text (random.choice hello)
))

第二次运行时连接信号发生错误。

Reply View the author
deepin
2022-10-10 02:34
#28
cz012273

通过插入log语句方式下断点,初步判断问题出在这句上:

QObject-connect button "clicked(bool)" ($remote-eval _dynamic self)
($lambda/e (make-environment self global) () (
logd "[slot] Callback called.";
QLabel-setText text (random.choice hello)
))

第二次运行时连接信号发生错误。

可以在论坛里面反馈,我现在在重新学习C++,慢慢来不要急。

Reply View the author
cz012273
deepin
2022-10-10 02:50
#29

可以在论坛里面反馈,我现在在重新学习C++,慢慢来不要急。

可以,我连C++都不会呢!就是搞着玩儿。

Reply View the author
deepin
2022-10-10 03:00
#30
cz012273

可以,我连C++都不会呢!就是搞着玩儿。

没事,任何编程结果都一样。

Reply View the author
cz012273
deepin
2022-10-11 04:23
#31

将qt.py中的PySide2改成PyQt5后,用python3运行起来了,并且也没出现unilang那样的问题。看来还是unilang对系统的支持不好造成的。

Reply View the author
deepin
2022-10-11 04:31
#32
cz012273

将qt.py中的PySide2改成PyQt5后,用python3运行起来了,并且也没出现unilang那样的问题。看来还是unilang对系统的支持不好造成的。

不能因为各种原因就没有信心,这毕竟是我们自己在参与,别人也帮不了。

Reply View the author
cz012273
deepin
2022-10-11 04:45
#33

还好,相关问题已在github上向作者反馈了,希望能解决吧!

Reply View the author
deepin
2022-10-11 05:06
#34
cz012273

还好,相关问题已在github上向作者反馈了,希望能解决吧!

一般会有回复的。

Reply View the author
cz012273
deepin
2022-10-17 05:13
#35

这几天作者又开始更新了,期待功能更加完善!yeah

Reply View the author
deepin
2022-10-17 07:54
#36
cz012273

这几天作者又开始更新了,期待功能更加完善!yeah

有进度还可以。

Reply View the author
cz012273
deepin
2022-10-25 16:09
#37

经过和语言作者多次沟通交流,终于在自己本机上构建成功了!一些原来的小问题也得到了解决,向辛勤工作的“码农”们致敬!正是你们的艰苦劳动,让更多更好的软件呈现在我们面前!

Reply View the author
deepin
2022-10-25 16:26
#38
cz012273

经过和语言作者多次沟通交流,终于在自己本机上构建成功了!一些原来的小问题也得到了解决,向辛勤工作的“码农”们致敬!正是你们的艰苦劳动,让更多更好的软件呈现在我们面前!

码农的世界即将正式来临。

Reply View the author
2 / 2
To page