V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
tctc4869
V2EX  ›  Linux

Linux 桌面开发用什么?

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

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

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

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