mirror of
https://github.com/rcore-os/rCore.git
synced 2024-11-25 01:16:18 +04:00
replace gnu binutils with cargo-binutils
This commit is contained in:
parent
358fa09f6d
commit
e12074c936
@ -36,8 +36,8 @@ matrix:
|
||||
|
||||
install:
|
||||
- if [ $ARCH = riscv32 ] || [ $ARCH = riscv64 ]; then
|
||||
[ $TRAVIS_OS_NAME = linux ] && export FILE="riscv64-unknown-elf-gcc-8.1.0-2019.01.0-x86_64-linux-ubuntu14";
|
||||
[ $TRAVIS_OS_NAME = osx ] && export FILE="riscv64-unknown-elf-gcc-8.1.0-2019.01.0-x86_64-apple-darwin";
|
||||
[ $TRAVIS_OS_NAME = linux ] && export FILE="riscv64-unknown-elf-gcc-8.2.0-2019.02.0-x86_64-linux-ubuntu14";
|
||||
[ $TRAVIS_OS_NAME = osx ] && export FILE="riscv64-unknown-elf-gcc-8.2.0-2019.02.0-x86_64-apple-darwin";
|
||||
wget https://static.dev.sifive.com/dev-tools/$FILE.tar.gz;
|
||||
tar xf $FILE.tar.gz;
|
||||
export PATH=$PATH:$PWD/$FILE/bin;
|
||||
@ -103,7 +103,8 @@ install:
|
||||
|
||||
|
||||
before_script:
|
||||
- rustup component add rust-src
|
||||
- rustup component add rust-src llvm-tools-preview
|
||||
- (test -x $HOME/.cargo/bin/cargo-objdump || cargo install cargo-binutils)
|
||||
- (test -x $HOME/.cargo/bin/cargo-xbuild || cargo install cargo-xbuild)
|
||||
- if [ $ARCH = x86_64 ]; then
|
||||
(test -x $HOME/.cargo/bin/bootimage || cargo install bootimage);
|
||||
|
11
README.md
11
README.md
@ -6,7 +6,7 @@ Rust version of THU [uCore OS Plus](https://github.com/chyyuu/ucore_os_plus).
|
||||
|
||||
Going to be the next generation teaching operating system.
|
||||
|
||||
Supported architectures: x86_64, RISCV32/64, AArch64, MIPS (planned)
|
||||
Supported architectures: x86_64, RISCV32/64, AArch64, MIPS32
|
||||
|
||||
Tested boards: QEMU, HiFive Unleashed, x86_64 PC (i5/i7), Raspberry Pi 3B+
|
||||
|
||||
@ -18,7 +18,7 @@ Tested boards: QEMU, HiFive Unleashed, x86_64 PC (i5/i7), Raspberry Pi 3B+
|
||||
|
||||
### Environment
|
||||
|
||||
* [Rust](https://www.rust-lang.org) toolchain at nightly-2019-02-16
|
||||
* [Rust](https://www.rust-lang.org) toolchain at nightly-2019-03-05
|
||||
* Cargo tools: [cargo-xbuild](https://github.com/rust-osdev/cargo-xbuild)
|
||||
* [QEMU](https://www.qemu.org) >= 3.1.0
|
||||
* [bootimage](https://github.com/rust-osdev/bootimage) (for x86_64)
|
||||
@ -32,7 +32,8 @@ See [Travis script](./.travis.yml) for details.
|
||||
### How to run
|
||||
|
||||
```bash
|
||||
$ rustup component add rust-src
|
||||
$ rustup component add rust-src llvm-tools-preview
|
||||
$ cargo install cargo-binutils
|
||||
$ cargo install cargo-xbuild --force
|
||||
$ cargo install bootimage --version 0.5.7 --force
|
||||
```
|
||||
@ -40,9 +41,9 @@ $ cargo install bootimage --version 0.5.7 --force
|
||||
```bash
|
||||
$ git clone https://github.com/rcore-os/rCore.git --recursive
|
||||
$ cd rCore/user
|
||||
$ make sfsimg arch={riscv32,riscv64,x86_64,aarch64} # requires x86_64-linux-musl-gcc or musl-gcc
|
||||
$ make sfsimg arch={riscv32,riscv64,x86_64,aarch64,mipsel} # requires $(arch)-linux-musl-gcc
|
||||
$ cd ../kernel
|
||||
$ make run arch={riscv32,riscv64,x86_64,aarch64} mode=release
|
||||
$ make run arch={riscv32,riscv64,x86_64,aarch64,mipsel} mode=release
|
||||
$ make run arch=x86_64 mode=release pci_passthru=0000:00:00.1 # for ixgbe real nic, find its pci (bus, dev, func) first
|
||||
```
|
||||
|
||||
|
@ -216,16 +216,11 @@ ifeq (,$(shell which $(prefix)ld))
|
||||
endif
|
||||
endif
|
||||
|
||||
ld := $(prefix)ld
|
||||
objdump := $(prefix)objdump
|
||||
objcopy := $(prefix)objcopy
|
||||
cc := $(prefix)gcc
|
||||
as := $(prefix)as
|
||||
gdb := $(prefix)gdb
|
||||
strip := $(prefix)strip
|
||||
objdump := cargo objdump -- -arch-name=$(subst _,-,$(arch))
|
||||
objcopy := cargo objcopy -- --binary-architecture=$(subst _,-,$(arch))
|
||||
strip := cargo strip --
|
||||
dtc := dtc
|
||||
export CC = $(cc)
|
||||
|
||||
hostcc := gcc
|
||||
|
||||
.PHONY: all clean build asm doc debug kernel sfsimg install run justrun runnet justrunnet runui justrunui runtest justruntest
|
||||
|
Loading…
Reference in New Issue
Block a user