写点什么

Windows 平台的开源软件包管理系统

  • 2010-04-28
  • 本文字数:954 字

    阅读完需:约 3 分钟

通用开源应用软件发布平台(CoApp)是一个为Windows 打造的包管理系统。它为编译、构建和部署那些通常在其他操作系统——如Linux,Mac 等——上开发的开源项目提供支持。

为什么要将非Windows 开源软件移植到微软的操作系统上呢?直接原因是这些开源软件将会拥有更多新用户,从而促进项目本身的发展。另一个原因是可以加强Windows 和Linux/UNIX/Mac 社区的交流,这对大家都有好处。

将开源项目从UNIX 移植到Windows 存在很多问题,比如不同的文件系统、命令行、底层API、用户界面以及程序库。虽然 Cygwin 为 Windows 提供了一个类 UNIX 环境,但是它并不能提供在 Windows 上构建应用程序的所有东西。正确的方法是创建合适的工具来自动化大部分编译、打包和部署工作,使程序像其它 Windows 原生程序一样运行。

CoApp 项目由 Garrett Serack 发起,他目前受雇于微软全职开发这个项目,但是 CoApp 并不属于雷蒙德巨人(译者注:微软)。据项目发起人说:

微软的一些人意识到这个项目的价值——并为我提供全职工作于这个项目的机会。在我开发这个项目的同时,微软为我提供了 100% 的支持。软件的设计工作完全由我和 CoApp 社区完成,不需要接受公司内部的任何审查。这让它成为我梦想中的工作——我对这个项目充满激情,我开放源代码,并让它带我去找寻它价值。

Serack 打算利用 Windows 安装程序(MSI)和微软开发的并存(side-by-side)技术 WinSXS 来解决 DLL 问题。CoApp 将实现的其他功能有:

  • 无缝支持 64 位和 32 位系统
  • 将二进制文件,库文件和头文件放在一致的逻辑位置
  • 协调组件的共享,并允许多个项目提供和消费这些共享组件
  • 可以为库和应用程序升级和打补丁
  • 对 Windows 开发人员更加友好。不强制使用“make”构建,而是利用已有的集成开发环境
  • 对 Windows_ 管理员 _ 友好。即使它是开源的,你也不需要成为开发人员才能将开源应用安装到 Windows 上

CoApp 最重要的功能恐怕就是处理依赖关系了。CoApp 能够下载(程序)所依赖的代码和头文件,能够解决大部分配置问题,并构建一个可以在所有 Windows 上都能运行的 *.msi 包。

CoApp 开发小组计划从打包 WAMP 栈的主要部分开始,包括 Apache,PHP 和 Python,边做边学。CoApp 有一个项目网站项目网站和一个 wiki 页,目前它还处于初级阶段。

查看英文原文: A Packaging System for Open Source Projects on Windows

2010-04-28 01:203601
用户头像

发布了 63 篇内容, 共 27.6 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

回帖抽大奖——5分钟极速体验AI技术能力

百度大脑

人工智能

带你读论文丨基于视觉匹配的自适应文本识别

华为云开发者联盟

损失函数 视觉 文本识别 文档识别 视觉匹配

2B 销售系统设计需要考虑的 3 个层面

boshi

团队管理 销售管理

maven如何忽略指定的远程仓库

小江

maven nexus 迁移 java;

2021 DEMO CHINA创新中国总决赛峰会闭幕,光子晶体斩获2021 DEMO GOD

创业邦

考试试卷存储设计

guangbao

JavaScript “上层”语言

Augus

JavaScript 9月日更

iPhone13全线机型上线WeTest云手机平台

WeTest

linux之秘钥登录

入门小站

Linux

p3c 插件,是怎么检查出你那屎山的代码?

小傅哥

小傅哥 代码规范 p3m pmd 开发手册

大厂面试喜欢考算法,该怎么破?

博文视点Broadview

华为云顾炯炯:云原生应用传送网络AND的实现架构与核心技术分享

华为云开发者联盟

网络 华为云 应用传送网络 ADN 东数西算

HUAWEI雄起!顶级网络工程师总结出了这份网络协议开源笔记

Java 架构 面试 程序人生 编程语言

2021年9月数据库流行度排行解读:聊聊国产数据库可以从哪方面做到以用户为中心

墨天轮

数据库 TiDB oceanbase 国产数据库 达梦

天壤完成新一轮战略融资 加速构建数字化转型通用智能平台

InfoQ 天津

卷王本卷

FunTester

内卷 FunTester

[微服务] You built it.You fix it.

baiyutang

微服务 9月日更

一文带你了解经典的Java垃圾回收机制

华为云开发者联盟

Java JVM 对象 垃圾回收机制 垃圾收集器

什么是低代码自动化以及它如何使你受益?

低代码小观

程序员 自动化 工具 低代码 低代码开发平台

在线985,211高校查询

入门小站

工具

吃串串,数签签,这个AI神器一秒搞定

百度大脑

人工智能 EasyDL

Linux之常见的存储架构

在即

9月日更

深入理解Netty-从偶现宕机看Netty流量控制

vivo互联网技术

Java、 框架 netty

MLOps生产中的机器学习:为什么你应该关心数据和概念漂移 易筋 ARTS 打卡 Week 67

John(易筋)

ARTS 打卡计划

密码学系列之:1Password的加密基础PBKDF2

程序那些事

算法 加密解密 密码学 程序那些事

MPU:鸿蒙轻内核的任务栈的溢出检察官

华为云开发者联盟

鸿蒙 内核 任务栈 MPU 内存保护单元

两个剪辑透明化融合视频特效处理

老猿Python

Python 音视频 视频剪辑 视频特效 引航计划

Elasticsearch IK 分词扩展词典(qbit)

qbit

elastic 扩展词 分词

低代码平台的功能及其用处

低代码小观

程序员 低代码 开发工具 低代码开发平台 无代码

OceanBase 源码解读(五):租户的一生

OceanBase 数据库

数据开发 oceanbase OceanBase 开源 OceanBase 社区版 OceanBase 数据库大赛

百度信息流和搜索业务中的KV存储实践

百度Geek说

后端 搜索

Windows平台的开源软件包管理系统_.NET_Abel Avram_InfoQ精选文章