Distributions
› Ubuntu
› Fedora
› CentOS
中文资源站
› 网易开源镜像站
tctc4869
V2EX  ›  Linux

Linux 桌面开发用什么?

  •  
  •   tctc4869 · May 25, 2020 · 9961 views
    This topic created in 2360 days ago, the information mentioned may be changed or developed.

    已知 c++ qt,javaFX,electron,这三个做 linux 桌面开发,能否在多个不同的 linux 桌面版本,直接部署安装环安装软件安装包就能使用?而不特定的,针对性某个 linux 桌面版本修改代码再部署?

    除了这个以上方案,还有其他?

    33 replies  •  2024-08-09 15:16:46 +08:00
    tt67wq
    tt67wq
    May 25, 2020
    1
    gtk?
    tctc4869
    tctc4869
    OP
    May 25, 2020
    2
    @tt67wq 能在乌邦图或 mint 上直接部署就能运行么?
    tt67wq
    tt67wq
    May 25, 2020
    3
    @tctc4869 #2 我没试过,我感觉可以,毕竟 gnome 就是用 gtk 的,ubuntu 用的 gnome,不过听说 gtk 开发起来很头疼
    wujieyuan
    wujieyuan
    May 25, 2020
    4
    得看你软件功能什么样子的, 如果是视频播放器这种, 可以全平台通用不用管什么桌面, 如果是截图工具这种, 必须得调用系统 or 桌面 api, 那必须得适配不同的桌面, win 和 mac 好解决, linux 就麻烦了 ,各种桌面都得适配
    TangMonk
    TangMonk
    May 25, 2020
    5
    lazarus 推荐下
    superrichman
    superrichman
    May 25, 2020 via iPhone
    6
    用 qt 写,然后打包成 appimage,能在主流的 linux 环境跑起来,github 上见过一些软件是这么做的
    jin7
    jin7
    May 25, 2020
    7
    pyside2 / pyqt5
    clemente0620
    clemente0620
    May 25, 2020
    8
    C#
    tctc4869
    tctc4869
    OP
    May 25, 2020
    9
    @clemente0620 没有把
    qq7790586
    qq7790586
    May 25, 2020
    10
    linux 肯定是 qt5 啊。
    RedL0tus
    RedL0tus
    May 25, 2020 via Android
    11
    取决于你的需求。

    Linux 主要就两大流派,一个 Qt 一个 GTK 。如果你要以 GNOME/XFCE 那一堆为主的话就 GTK,要以 KDE/LxQt 为主的话。主题之类的适配一般不用担心,大家基本上都已经配好了相关的设置。

    要能跨发行版部署的话跟用啥框架关系不大,主要是后面的打包的部分。前面有朋友提到的 AppImage 是一种方法,另外的话打包上 flatpak 或者如果你用 Ubuntu 的话也可以 snap,就是最后体积肯定会比本来动态链接的大。传统一点的玩法的话就是把学习各大发行版的打包方式然后建源 /COPR/PPA 之类的,最麻烦但是也最文明(

    要省时省力就 Electron,而且 Electron 的话默认就是打成 AppImage 。只是这样的话如果是公开发行的可能会被骂,毕竟是 Electron (
    RedL0tus
    RedL0tus
    May 25, 2020 via Android
    12
    刚刚有一点忘了提了,如果还要跨到非 Linux 平台的话就不要 GTK 了,GTK 在 Linux 以外的地方... 长得挺别致的(((
    devtk
    devtk
    May 25, 2020
    13
    Qt 吧
    armoni
    armoni
    May 25, 2020
    14
    javafx 呢
    KeyboardManAnAn
    KeyboardManAnAn
    May 25, 2020
    15
    在稍微有点耐心等一等,Flutter 马上就会官方支持 Linux 桌面端了(狗头
    DoctorCat
    DoctorCat
    May 25, 2020
    16
    Qt 跨平台兼容性、表现性比较好
    kylix
    kylix
    May 25, 2020
    17
    @TangMonk lazarus +1,如果会 delphi 的话
    visli
    visli
    May 25, 2020
    18
    Delphier 也许可能会选择 Lazarus,其他人是不会的。
    TangMonk
    TangMonk
    May 25, 2020
    19
    @visli #18 但是 Lazarus 比 Qt 好学多了吧
    jin7
    jin7
    May 25, 2020
    20
    @TangMonk #19
    qt 直接用 python && QT 比 l pascal/lazarus 好学多了吧 高分屏的问题 lazarus 有解决办法?
    clino
    clino
    May 25, 2020 via Android
    21
    paoqi2048
    paoqi2048
    May 26, 2020
    22
    Qt
    tctc4869
    tctc4869
    OP
    May 26, 2020
    23
    @KeyboardManAnAn Flutter 现在编写手机应用怎么样?听说某些群的开发员说,用 Flutter 编写应用,还得自己从头绘制一些 ui 组件,如果是这样,这不是很坑爹- -。
    darknoll
    darknoll
    May 26, 2020
    24
    electron
    rainfd
    rainfd
    May 26, 2020
    25
    electron 吧,省事
    Chenamy2017
    Chenamy2017
    May 26, 2020
    26
    Qt 比较成熟,Electron 也很好,其他没了解。
    tctc4869
    tctc4869
    OP
    May 27, 2020
    27
    @rainfd 听说 electron 的程序运行所需占用内存比较大
    tctc4869
    tctc4869
    OP
    May 27, 2020
    28
    @darknoll
    @rainfd electron 内存占用大,是这样的话,用 electron 开发,需要考虑详细的内存管理优化之类的麻烦事么?
    jetkeey
    jetkeey
    Jul 18, 2023
    30
    @KeyboardManAnAn 3 年过去了,现在怎么样了呢?
    durban126
    durban126
    Sep 1, 2023
    31
    @jetkeey 我也想问
    wacxr123
    wacxr123
    Apr 23, 2024
    32
    4 年过去了,现在怎么样了呢
    cyberniuniu
    cyberniuniu
    Aug 9, 2024
    33
    gtk4 现在跨平台主题也不错,至于 qt6 ,还是主推 qml ,qtwidget 已经不更新了,就那个样了。javafx 也还行,java swing 还能在搞搞,换个好点的 laf 主题就不错
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4560 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 67ms · UTC 01:23 · PVG 09:23 · LAX 17:23 · JFK 20:23
    ♥ Do have faith in what you're doing.