美团、快手、去哪儿网是如何构建测试环境的?点击查看实践案例>> 了解详情
写点什么

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

  • 2010 年 4 月 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 年 4 月 28 日 01:202724
用户头像

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

关注

评论

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

架构师训练营第十周作业 - 命题作业

阿德儿

面试字节跳动定级2-2,拿32*16offer,P8大佬的算法教程给了我春天!

Java架构之路

Java 程序员 架构 面试 编程语言

php 实现单链表以及链表反转等操作

一个大红包

3月日更

华为18级工程师总结的50W字算法、LeetCode、操作系统、计算机底层刷题必备笔记

Java架构之路

Java 程序员 架构 面试 编程语言

GitHub Action + ACK:云原生 DevOps 落地利器

阿里巴巴云原生

容器 运维 云原生 k8s 应用服务中间件

Redis不是一直号称单线程效率也很高吗,为什么又采用多线程了?

数据库 redis 架构

BOE(京东方)物联网解决方案让会议更“智慧”

爱极客侠

如何写好操作类说明文档

lenka

3月日更

教你如何在Centos配置Oracle客户端运行时

happlyfox

28天写作 3月日更

干货 | 比特币就是时钟

CECBC

比特币 时间同步

第八章学习总结

Kalman

产品经理 产品经理训练

寻找被遗忘的勇气(十五)

Changing Lin

3月日更

区块链助飞机加油和支付过程更透明高效

CECBC

区块链

Web3.0时代到来 imToken借助区块链帮更多人完成价值存储和转移

CECBC

区块链

中台还没建就开始拆中台了?医疗中台何去何从?

菜根老谭

中台 医疗中台

【死磕JVM】一道面试题引发的“栈帧”!!!

牧小农

JVM Java虚拟机 运行时数据区 Java虚拟机栈 栈帧

HECO火币生态链挖矿系统开发搭建技术

薇電13242772558

数字货币 区块链生态

openpyxl 对Excel的基础操作

IT蜗壳-Tango

办公自动化 3月日更 IT蜗壳教学

互联网信贷风险与大数据 催收管理

张老蔫

28天写作

融云聊天室属性 kv

融云 RongCloud

音视频

PBAC相对于传统ABAC的优势

龙归科技

IT 架构师 权限 ABAC PBAC

邀请领好礼!米家显示器挂灯、雷蛇烈焰神虫送给你!

滴滴云

Web 安全之 CSRF

架构精进之路

Web 安全 3月日更

【315特别放送】TcaplusDB致力于给用户提供安全放心有保障的数据服务

TcaplusDB

数据库 后端 TcaplusDB Tcaplus

架构师训练营第六周作业 - 命题作业

阿德儿

本科毕业,六年Java开发经验,阿里技术三面+HR面,拿下38*16薪资P7offer

Java架构之路

Java 程序员 架构 面试 编程语言

使用 Arthas 排查 SpringBoot 诡异耗时的 Bug

阿里巴巴云原生

Java 开发者 云原生 中间件 Arthas

第八章作业

Kalman

产品经理 产品经理训练

Redis 在项目中合理使用经验总结

Java小咖秀

redis

Wireshark 数据包分析学习笔记Day12

穿过生命散发芬芳

Wireshark 数据包分析 3月日更

「Linux」各目录详解

我是程序员小贱

面试 3月日更

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