-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Homebrew installation guide #5013
Comments
感谢你对 OI Wiki 的关注!记得在 Issue 中表达清楚自己的意思哦~ |
这个建议自行查阅资料吧,因为macos的受众群体不广,homebrew也和OI没有太大关系。 仅作为个人观点。 |
这倒是
是这样,但虽然事实上诸如 Git、LaTeX 的使用之类与 OI 也并没有直接关系,但是在工具软件中亦有介绍。 那是否有必要比如在编译器条目之中 macOS 安装 GCC 的位置增加安装 Homebrew 的命令(但是这样给人感觉页面的层级关系有问题)。 还有一种方案是为每个系统的包管理单独开专题, 个人观点,待讨论。 |
如果有梯子确实是一行命令,没有梯子的话光是安装脚本都 |
@wxh06 啊?所以要从代理的配置开始讲吗 |
这种事情还是自己解决吧.. |
不讲代理啊,用镜像加文本替换啊。 |
我的设想是可以比如开 macOS 系统安装软件的专题之类的东西,因为现在 OI Wiki 上面关于 macOS 的基本上就是看自己造化( |
这..应该有这种主题的网站,但是我感觉oiwiki和这个的交集会比较小 |
我主要的点在于 WSL 有专题但没有 macOS 环境搭建专题,作为mac批有点想补充一下相关的,如果没必要那也没关系就 close 掉了好了。 |
@wxh06 linux是因为noi会用呀。。 |
Git 和 LaTeX 在算法竞赛的应用主要是出题人出题还有选手维护模板库,论相关性的话 homebrew 肯定比不过的吧 🤔
我觉得它们应该都有自己的官方文档?🤔 |
我知道啊,但是 macOS 又没有类似 WSL 的东西啊。 |
是这样,我完全同意这个观点。
你说的对,但什么东西是没有文档的?那 OI Wiki 存在的意义是什么呢? |
我觉得 OI Wiki 至少不是搬运产品文档的站点 :) |
您说的对,我无意跟您争论这个问题,我为我刚刚比较具有攻击性语言道歉。我非常敬佩这个项目给 OIers 带来的影响,也希望它变得更好更全面。(但是我只是觉得 Vim、VS Code 配置 Code Runner 等网上都有教程,OI Wiki 仍有收录,因此我不认为“搬运产品文档”是一个有力的论据,但我完全能够理解 Homebrew 不完全与 OI 相关没必要为它单独开新的页面) 我的本意是 macOS 配置 OI 环境教程,其中 Homebrew 是不可缺的一环,而这一部分恰好 OI Wiki 没有覆盖到。 如果您觉得有必要,我可以撰写类似于 WSL 那一篇在 macOS 下搭建环境的内容。也谢谢你们今晚花费时间在这个问题上。 |
这个行为对 OIer 来说是透明的吧, 何来造成困扰呢? 在 OI 使用的范围内说 clang 是 gcc 的 complete drop-in replacement 没什么问题吧 |
是的,只要 $ gcc --version
Apple clang version 14.0.3 (clang-1403.0.22.14.1)
Target: arm64-apple-darwin22.5.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
GCC 不同版本行为也不同,以我参加 NOIP 时候使用的版本为例,GCC 4.8 版本 C++ 使用 |
事实错误,理由如下:gcc 对 OI 初学者并不是必须的你实际上可以使用apple clang作为编译器,不一定非要用gcc。作为初学者很难体验到两者的差别1。你体验到的差别更可能是由于C++标准库的实现不同,而非编译器实现不同2。 libstdc++ 也不一定需要 brew在 macOS 上还有别的包管理器,包括macports,nix。brew并不明显优于它的竞争者3。 撰写新内容
我觉得这或许是一个好主意,不过我担心你的安装方法过1年就坏了,然后没人继续维护。 或许可以自己写一篇blog,然后在OI-wiki中的资源链接收集处引流。 如果要写详细的安装教程,最好不要错误耦合无关组件,例如 “macOS的包管理器就是brew”3, Footnotes
|
参见上一条评论,这不是include path的问题,而是选取C++标准库的问题。如果你在clang使用libc++的条件下用libstdc++的头文件,改include path很可能改出奇妙行为,两个库ABI是不兼容的。 |
很遗憾我自己没有写博客的习惯,目前也没有一个稳定的博客。至于维护,虽然AFO了,以季度为频率我应该还是没有问题的吧。
受教了,我知道标准库实现和编译器实现是分开的,但我没有意识到 clang 可以直接使用 stdlibc++。
我确实属于您所说的人数众多的 brew 用户,同时我是知道 MacPorts 的(非常抱歉之前没有了解过 nix,我注意到了您是 NixOS 的团队成员),不会写出“macOS的包管理器就是brew”这种话。 也谢谢 @inclyc 您的提醒,在写的时候(如果 OI Wiki 需要这方面的贡献的话)我会注意措辞的~ |
首先非常感谢愿意贡献开源项目:heart:! 我不知道别的 OI-Wiki 编辑怎么想,但我觉得我们确实没有什么精力维护一些教程来教新手如何安装软件,并保证他们时效性(比如 OI-wiki 现在一些文章已经过时了)。 仅个人想法:可以做一个教程/资源收集页面,贴一些其他人在各种平台安装工具链的例子(例如一篇博客文章)。并且附带博客的发布时间,可以提醒教程可能过时。
跟话题无关,但是有两个有趣的事实:
比较乐的是很多地方都在默认 brew 是 macOS 上的默认包管理器,这可能是因为大家默认“一个发行版就只有一个包管理器”,至少在 Linux 世界相对普适(也有一些奇特发行版可以用多个)。
|
看完上面的讨论,我认为我们需要对工具软件是否与 OI 有关做出更精确的定义。 仅按时效性定义是不精确的,我认为真正优秀的项目值得我们去积极维护它们的简单通俗的安装教程,以供更多人理解。 我的建议是将它们分为三档:
所以我认为,我们有必要在近期对工具软件下的页面( 即https://oi.wiki/tools 下的页面)进行重新维护翻新。 如果这有讨论价值的话可以新开 issue。 |
页面英文名
/tools/homebrew/
我希望能添加的内容是
macOS 下的管理器 Homebrew 的安装与使用。在 OI Wiki 中有多处出现了使用
brew
安装软件包的命令,但没有对 Homebrew 的安装作出说明。本页内容包括:
我了解到的相关参考资料有
USTC Mirror Help: https://mirrors.ustc.edu.cn/help/brew.git.html
The text was updated successfully, but these errors were encountered: