是否有任何USB棒可运行,无安装,跨平台软件框架(带GUI)?

有没有人知道一个好的软件开发框架或类似的具有以下属性?

>跨平台:应该可以在XP,Vista,OSX和普通版本的Linux(如Ubuntu和Kubuntu)上运行.
>无安装:可以从U盘运行软件,无需将任何东西复制到主机.
>有良好的GUI支持(这就是为什么this question没有给出合适的答案,据我所知).
>许可许可,如LGPL或BSD等.

其中较软的要求是为最常见的后端功能(例如套接字,文件IO等)提供一组抽象(通常需要一些特定于平台的适应性),并支持诸如Python或C之类的良好语言学习一个新的(通常不是perl)通常很有趣.

我认为可能的候选人是Qt 4.5或更高版本(但IFAIK Qt软件不会运行在Vista,没有任何安装(?)),一些wxWidgets或也许wxPython解决方案,也许gtkmm.我发现的例子有一个或另一个要求失败.这并不意味着没有这样的例子,只是意味着我没有找到任何的.所以我想知道有没有人知道现有的解决方案吗?

一些澄清;

>“框架”我的意思是像Qt或者gtkmm或者python这样的一个widget包.
>这是关于能够在多个平台上运行成品,从棍子运行,没有安装,它不是关于拥有便携式开发环境.
>它不是一个启动棒.
>如果需要,必须为不同的目标专门构建软件是确定的.

我看到的用例是,您有一些您依赖的软件(如项目规划,信息管理,分析工具或类似软件):

>不依赖互联网连接可用.
>在不同的主机上运行,​​它不是真的可以安装任何东西.
>由用户通过物理介质(例如U盘)移动.
>在不同的操作系统上运行,如Windows,Vista,Ubuntu,OSX.
>对这些不同的主机上的相同数据进行工作(数据可以存储在主机上或在主机上).
>并不是真的限制了捆绑框架的大小(除非是几GB,这不是真正的现实).

只要软件的行为相同,并且可以在不同的目标上运行时在相同的数据上工作,也可以在棒上并行安装.

关于用例的另一种看法是,我有五台新安装的Vista,XP,OSX,Ubuntu和Kubuntu的机器分别在我面前.我想,无需在机器上安装任何新功能,就可以在这五台机器中的每台机器上运行相同的软件从一个U盘(符合上述GUI要求等)(尽管如有必要,可以从不同的捆在棍子上).

这可能吗?

编辑:
我已经尝试了一些使用一些小部件和一个sqlite数据库的Qt应用程序.很容易让它在ubuntu dist和osx上工作.对于windows xp和vista,我不得不将QtCored4.dll,QtGuid4.dll,QtSqld4.dll和mingwm10.dll复制到分发目录(这是调试代码),我将qsqlited4.dll复制到一个名为“sqldrivers”的文件夹中目录.

您提到 wxWidgets,但将其拒绝至少有一个要求.

我不知道你的要求是什么,wxWidgets以什么方式不适合你,但是IMO确实满足了他们的要求:

Cross platform: it should be runnable on XP, Vista, OSX and common versions of Linux.

它在这些平台上运行,但是“常见版本的Linux”不够好,因为您无法确定将安装wxGTK(不应静态链接)所需的GUI库.然而,这对于其他解决方案来说也是一个问题,除非你打算把所有东西都放在棍子上.

No installation: Be able to run the software from a USB stick without having to copy anything to the host machine.

看到前面的一点,你需要指定在Linux上需要哪些库.另外,您可以在构建时指定不使用某些系统提供的库(例如,用于图形,压缩,正则表达式),而是使用wxWidgets内部库.

Have good GUI support

检查.

Permissive licensing such as LGPL or BSD or such.

检查.您也可以将wxWidgets静态链接到您的应用程序中.

supporting a good language such as Python or C++

支持两者,并且还绑定其他语言.

having a set of abstractions for the most common backend functionality, such as sockets, file IO, and so on

它有一些这样的抽象,但您也可以链接到其他跨平台的库.

我们使用wxWidgets for FlameRobin,Firebird SQL服务器的图形化管理程序.它具有Windows,Linux和Mac OS X的活动端口,并且已经为至少一些BSD变体和Solaris编译.它肯定是从Windows上的一个棒运行,我没有尝试过Linux或Mac OS X,但我不明白为什么它不应该在那里.

相关文章
相关标签/搜索