當前位置:首頁 » 編程軟體 » mips編譯器Windows

mips編譯器Windows

發布時間: 2022-08-18 18:46:01

1. C或者C++轉mips怎麼用編譯器實現謝謝!

去查編譯器的幫助文檔或者數據手冊,這里涉及到C語言和匯編語言的相互調用問題,一般編譯器都會有相關說明的,但不同編譯器的調用約定或許不同

2. 如何構建MIPS交叉編譯工具鏈

第一步 創建目錄以及環境變數
在當前用戶目錄下創建target-project文件夾,在該文件夾下創建mips-mole文件夾,在mips-mole文件夾下創建三個文件夾:build-tools,kernel,tools,最後,在build-tools文件夾下創建build-gcc,build-boot-gcc,build-glibc,build-binutils文件夾。命令如下:

$ cd ~
$ mkdir -p ./target-project/mips-mole/{kernel/,tools/,build-tools/{build-gcc,build-boot-gcc,build-glibc,build-binutils}}
$ tree ./target-project/mips-mole/

使用腳本構建環境變數
#! /bin/bash

注意修改/home/用戶名,修改正確後,使用source使腳本生效

$ cd target-project
$ chmod +x mips.sh
$ source mips.sh
可以使用echo査看相關變數名以觀察環境變數是否生效。
最後把linux-2.6.38.tar.bz2下載放置在kernel文件夾下,binutils-2.22.tar.gz,gcc-4.6.2.tar.gz,glibc-2.14.tar.gz,glibc-ports-2.14.tar.gz,gmp-5.0.4.tar.gz,mpc-0.9.tar.gz,mpfr-3.0.1.tar.gz下載放置在build-tools文件夾下。

第二步 安裝基於MIPS的linux頭文件

$ cd $PRJROOT/kernel
$ tar -xjvf linux-2.6.38.tar.bz2
$ cd linux-2.6.38
在指定路徑下創建include文件夾,用來存放相關頭文件。

$ mkdir -p $TARGET_PREFIX/include
保證linux源碼是干凈的。

$ make mrproper
生成需要的頭文件。
$ make ARCH=mips headers_check

$ make ARCH=mips INSTALL_HDR_PATH=dest headers_install
將dest文件夾下的所有文件復制到指定的include文件夾內。

$ cp -rv dest/include/* $TARGET_PREFIX/include
最後刪除dest文件夾
$ rm -rf dest
$ ls -l $TARGET_PREFIX/include

第三步 安裝binutils-2.22

$ cd $PRJROOT/build-tools
$ tar -xzvf binutils-2.22.tar.gz
$ cd build-binutils
$ ../binutils-2.22/configure --target=$TARGET --prefix=$PREFIX
$ make
$ make install

再安裝automake。

$ tar -xzvf automake-1.11.1.tar.gz
$ cd automake-1.11.1
$ ./configure
$ make
$ sudo make install
下面開始修改相關文件,主要是去掉-Werror。
$ cd $PRJROOT/build-tools/binutils-2.22/gas
$ ge dit configure
將下面內容
# Enable -Werror by default when using gcc
if test "${GCC}" = yes -a -z "${ERROR_ON_WARNING}" ; then
ERROR_ON_WARNING=yes
fi
修改為
# Enable -Werror by default when using gcc
if test "${GCC}" = yes -a -z "${ERROR_ON_WARNING}" ; then
ERROR_ON_WARNING=no
fi
但是,需要重新configure生成Makefile.in。

$ ./configure (在binutils/gas路徑下的configure)
$ make distclean (切記)
然後重新執行第三步,這次編譯可過。

第四步 安裝gcc引導器

$ cd $PRJROOT/build-tools
$ tar -xzvf gcc-4.6.2.tar.gz
$ tar -xjvf gmp-5.0.4.tar.bz2
$ mv gmp-5.0.4 ./gcc-4.6.2/gmp
$ tar -xzvf mpc-0.9.tar.gz
$ mv mpc-0.9 ./gcc-4.6.2/mpc
$ tar -xzvf mpfr-3.0.1.tar.gz
$ mv mpfr-3.0.1 ./gcc-4.6.2/mpfr
$ cd build-boot-gcc
$ ../gcc-4.6.2/configure --target=$TARGET --prefix=$PREFIX --disable-shared <br>--without-headers --with-newlib --enable-languages=c --disable-decimal-float <br>--disable-libgomp --disable-libmudflap --disable-libssp --disable-threads --disable-multilib
編譯並安裝gcc引導器、libgcc庫。

$ make all-gcc
$ make all-target-libgcc
$ make install-gcc
$ make install-target-libgcc

第五步 編譯glibc

$ cd $PRJROOT/build-tools
$ tar xzvf glibc-2.14.tar.gz
$ cd glibc-2.14
刪除Makefonfig文件中的內容-lgcc_eh。

$ cp -v Makeconfig{,.b腸花斑拘職餃辦邪暴矛k}
$ sed -e 's/-lgcc_eh//g' Makeconfig.bk > Makeconfig
$ cd ..
$ tar -xjvf glibc-ports-2.14.tar.bz2
$ mv glibc-ports-2.14 ./glibc-2.14/ports
$ cd build-glibc
$ CC=mipsel-linux--gcc ../glibc-2.14/configure --host=$TARGET --prefix="/usr" <br>--enable-add-ons --with-headers=$TARGET_PREFIX/include libc_cv_forced_unwind=yes <br>libc_cv_c_cleanup=yes
注意:此時如何設置了LD_LIBRARY_PATH環境變數會configure error,需要刪除該變數重新configure。

$ make
$ make install_root=$TARGET_PREFIX prefix=」」 install
第六步 完全安裝gcc
首先,也是很重要的是去掉libc等庫文件的絕對路徑。

$ cd $TARGET_PREFIX/lib
備份一下。

$ cp libc.so libc.so.bk
$ gedit libc.so
將原內容
GROUP ( /lib/libc.so.6 /lib/libc_nonshared.a AS_NEEDED ( /lib/ld.so.1 ) )
修改為
GROUP ( libc.so.6 libc_nonshared.a AS_NEEDED ( ld.so.1 ) )

$ cp libpthread.so libpthread.so.bk
$ gedit libpthread.so
將原內容
GROUP ( /lib/libpthread.so.0 /lib/libpthread_nonshared.a )
修改為
GROUP ( libpthread.so.0 libpthread_nonshared.a )
然後可以完全編譯gcc。

3. MIPS匯編語言什麼匯編器編譯,在哪可以下載。

linux 自帶的GCC編譯器

熱點內容
逃離塔科夫啟動器選什麼伺服器 發布:2025-02-06 21:44:48 瀏覽:289
我的世界手機版伺服器開服教程 發布:2025-02-06 21:43:01 瀏覽:270
微信娛樂源碼 發布:2025-02-06 21:34:53 瀏覽:529
編譯翻譯運行 發布:2025-02-06 21:05:20 瀏覽:200
安卓源碼版本 發布:2025-02-06 20:51:34 瀏覽:432
安卓系統網路播放器哪個好 發布:2025-02-06 20:42:02 瀏覽:818
頭條緩存的視頻格式 發布:2025-02-06 20:32:18 瀏覽:116
ftp不顯示文件夾 發布:2025-02-06 20:30:37 瀏覽:127
蘋果手機解壓怎麼打開 發布:2025-02-06 20:29:35 瀏覽:476
單片機程序存儲器 發布:2025-02-06 20:29:31 瀏覽:209