Freebsd

在freebsd上同步源的正確方法

  • February 24, 2013

更新:我很高興報告@dartonw 的答案有效,我去結賬,然後 buildworld,它在大約 6 小時內成功建構。


所以我在 freebsd 中遇到了一些關於監獄的問題。我在 EC2 上執行 FreeBSD9.1 64 位作為一個小實例。我最近嘗試過:

cd /usr/src;make buildworld

經過九個小時的編譯,它給了我:

{standard input}:12044: Warning: end of file not at end of a line; newline inserted
{standard input}:12142: Error: invalid character '_' in mnemonic
c++: Internal error: Killed: 9 (program cc1plus)
Please submit a full bug report.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
*** [TransAutoreleasePool.o] Error code 1
Stop in /usr/src/lib/clang/libclangarcmigrate.
*** [all] Error code 1
Stop in /usr/src/lib/clang.
*** [all] Error code 1
Stop in /usr/src/lib.
*** [lib__L] Error code 1
Stop in /usr/src.
*** [libraries] Error code 1
Stop in /usr/src.
*** [_libraries] Error code 1
Stop in /usr/src.
*** [buildworld] Error code 1
Stop in /usr/src.

我看到這篇文章說:

Let's synchronise sources.


   # cd /usr/share/examples/cvsup/
   # cp standard-supfile /etc/freebsd-supfile

The list CVSup mirror sites is here.

但是,連結說:

警告: cvsup 已被項目棄用,不推薦使用。應該使用顛覆。

那我該怎麼辦?我在哪裡可以找到更新的文章?我應該更新我的埠集合嗎?

您可以按照與 cvsup 記錄的方式基本相同的方式使用 Subversion。簡而言之:

# portsnap update
# cd /usr/ports/devel/subversion
# make install clean

然後更新 /usr/src (假設您已安裝源):

# svn update /usr/src

如果源尚未安裝在 /usr/src 中,您可以檢查一個新的工作副本:

# svn checkout svn+ssh://svn.freebsd.org/base/head /usr/src

有關更多選項,請參閱FreeBSD 手冊中的使用 Subversion您可以在Subversion Primer中獲得有關使用 Subversion 的更多資訊。

除非您想自定義埠(即對原始碼進行本地更改),否則請使用portsnap. 它是以前由 cvsup 處理的埠管理功能的官方替代品,可能會滿足您的大部分需求。請參閱FreeBSD 手冊中的portsnap以獲得詳細但易於遵循的指南。

引用自:https://unix.stackexchange.com/questions/65862