Cargo是否依赖于从源头构建货物本身?

时间:2017-03-24 16:16:20

标签: rust rust-cargo

Cargo README声明如下:

  

从源

编译      

Cargo需要构建以下工具和包:

     
      
  • python
  •   
  • curl(在Unix上)
  •   
  • cmake
  •   
  • OpenSSL标头(仅适用于Unix,这是ubuntu上的libssl-dev包)
  •   
  • cargorustc
  •   
     

首先,您需要查看此存储库

git clone --recursive https://github.com/rust-lang/cargo 
cd cargo
     

已安装cargo,您只需运行:

cargo build --release
     

否则,您也可以使用更传统的方法:

./configure
make
make install

它表明Cargo是构建Cargo的依赖项,但似乎也表明如果没有安装Cargo,则以./configure开头的方法应该有效。

当我克隆该回购并运行./configure时,我收到错误

...
configure: found cmake
configure: found make
configure: recreating config.tmp
configure: 
configure: processing ./configure args
configure: 
configure: CFG_PREFIX           := /usr/local 
configure: CFG_LOCAL_RUST_ROOT  :=  
configure: CFG_CARGO            := cargo 
configure: CFG_RUSTC            := rustc 
configure: CFG_RUSTDOC          := rustdoc 
configure: CFG_CARGO            :=  
configure: error: needed, but unable to find any of: CFG_CARGO cargo

这是否意味着我无法在没有安装货物的情况下从货源建造货物?也许缺少对configure的争论?

我从源代码构建了Rust,因为我不是此系统上的特权用户,并且已在我的用户目录中安装。

1 个答案:

答案 0 :(得分:1)

根据此处的讨论Issue 3772

  

确实是货物需要编译货物。在将来的Rust版本中,我们将有--enable-extended,它将编译Cargo以及Rust。

但是可以找到一些货物引导脚本。例如:https://github.com/dhuseby/cargo-bootstrap