依赖项

依赖项

我在 Windows 8.1 64 位主机上的 virtualbox 上使用 ubuntu 14.04 64 位。

我必须构建一些项目,并且该项目使用 cmake 系统。我需要为德州仪器 cc430f5137 交叉编译我的项目,为此我需要 msp430 gcc。

我下载了上述的 msp430-gcc-full-linux-installer-3.2.3.0.run 文件这里

当我下载时我做了

sudo chmod +x msp430-gcc-full-linux-installer-3.2.3.0.run

然后当我输入

./msp430-gcc-full-linux-installer-3.2.3.0.run

或者

sudo ./msp430-gcc-full-linux-installer-3.2.3.0.run

什么也没有发生并且我在终端上收到了一条新线路。

如果我输入

sh ./msp430-gcc-full-linux-installer-3.2.3.0.run

或者

sudo sh ./msp430-gcc-full-linux-installer-3.2.3.0.run

然后我收到以下错误

./msp430-gcc-full-linux-installer-3.2.3.0.run: 1: ./msp430-gcc-full-linux-installer-3.2.3.0.run: Syntax error: "(" Unexpected

即使我双击文件目录中的 .run 文件,也不会发生任何事情

我是 Linux 新手,这是我第一次这样做。我搜索过互联网,但没有找到任何有用的东西。

请帮助我设置 msp430 gcc 工具链

谢谢

我的问题太具体了,不符合我的需要,但请不要将其标记为太具体而关闭。

答案1

首先,我认为问题与 VirtualBox 或主机系统没有明确关系。我在尝试在 Ubuntu 14.04 64 位上运行 3.05.00.00 编译器安装程序(不是完整安装程序)时遇到了这个问题。

在 TI 论坛上看到这个帖子(http://e2e.ti.com/support/development_tools/compiler/f/343/t/421764),我安装了所有 CCS 必备软件(http://processors.wiki.ti.com/index.php/Linux_Host_Support_CCSv6#Ubuntu_14.04_64bit),重新启动了电脑,终于成功了:

sudo apt-get install libc6:i386 libx11-6:i386 libasound2:i386 libatk1.0-0:i386 libcairo2:i386 libcups2:i386 libdbus-glib-1-2:i386 libgconf-2-4:i386 libgdk-pixbuf2.0-0:i386 libgtk-3-0:i386 libice6:i386 libncurses5:i386 libsm6:i386 liborbit2:i386 libudev1:i386 libusb-0.1-4:i386 libstdc++6:i386 libxt6:i386 libxtst6:i386 libgnomeui-0:i386 libusb-1.0-0-dev:i386 libcanberra-gtk-module:i386 gtk2-engines-murrine:i386 unzip

答案2

引自http://colotronics.blogspot.com/2014/08/msp430-toolchain-in-ubuntu-1404-with.html

cd ~
mkdir mspgcc_install
cd mspgcc_install

依赖项

sudo apt-get install patch ncurses-dev build-essential bison flex zlib1g-dev sed automake gawk mawk libusb-1.0.0 libusb-1.0.0-dev dos2unix srecord 

下载:

wget http://sourceforge.net/projects/mspgcc/files/mspgcc/DEVEL-4.7.x/mspgcc-20120911.tar.bz2
wget http://sourceforge.net/projects/mspgcc/files/msp430mcu/msp430mcu-20130321.tar.bz2
wget http://sourceforge.net/projects/mspgcc/files/msp430-libc/msp430-libc-20120716.tar.bz2
wget http://ftpmirror.gnu.org/binutils/binutils-2.22.tar.bz2 
wget http://ftp.gnu.org/pub/gnu/gcc/gcc-4.7.0/gcc-4.7.0.tar.bz2 
wget http://ftp.gnu.org/pub/gnu/gdb/gdb-7.2a.tar.bz2

wget http://sourceforge.net/p/mspgcc/bugs/_discuss/thread/fd929b9e/db43/attachment/0001-SF-357-Shift-operations-may-produce-incorrect-result.patch
wget http://sourceforge.net/p/mspgcc/bugs/352/attachment/0001-SF-352-Bad-code-generated-pushing-a20-from-stack.patch

GDB补丁下载

wget -O gdb.patch https://sourceware.org/git/?p=gdb.git;a=patch;h=7f62f13c2b535c6a23035407f1c8a36ad7993dec 

卸载 texinfo 5.x 并安装旧版本 4.x

wget http://ftp.br.debian.org/debian/pool/main/t/texinfo/texinfo_4.13a.dfsg.1-10_amd64.deb
sudo dpkg -r texinfo 
sudo dpkg -i texinfo_4.13a.dfsg.1-10_amd64.deb 

提炼

tar xvfj mspgcc-20120911.tar.bz2
tar xvfj binutils-2.22.tar.bz2  
tar xvfj gcc-4.7.0.tar.bz2  
tar xvfj gdb-7.2a.tar.bz2
tar xvfj msp430mcu-20130321.tar.bz2  
tar xvfj msp430-libc-20120716.tar.bz2 

创建构建文件夹

mkdir build
cd build
mkdir binutils 
mkdir gcc
mkdir gdb 
cd ..

Binutils 安装

cd binutils-2.22
patch -p1<../mspgcc-20120911/msp430-binutils-2.22-20120911.patch 
cd ../build/binutils 
../../binutils-2.22/configure --target=msp430 --prefix=/usr/local/msp430 2>&1 | tee co
make 2>&1 | tee mo
sudo make install 2>&1 | tee moi 

海湾合作委员会

cd ../../gcc-4.7.0
patch -p1 < ../mspgcc-20120911/msp430-gcc-4.7.0-20120911.patch 
patch -p1< ../0001-SF-352-Bad-code-generated-pushing-a20-from-stack.patch 
patch -p1< ../0001-SF-357-Shift-operations-may-produce-incorrect-result.patch 
./contrib/download_prerequisites
#ira-int.h replace
cd gcc
rm ira-int.h 
wget -O ira-int.h https://gcc.gnu.org/viewcvs/gcc/branches/gcc-4_7-branch/gcc/ira-int.h?revision=191605&view=co&pathrev=191605

cd ../../build/gcc 
../../gcc-4.7.0/configure --target=msp430 --enable-languages=c,c++ --prefix=/usr/local/msp430 2>&1 | tee co
make 2>&1 | tee mo

sudo make install 2>&1 | tee moi

更新路径

export PATH=/usr/local/msp430/bin/:$PATH
sudo sed -e '/^PATH/s/"$/:\/usr\/local\/msp430\/bin"/g' -i /etc/environment

检查msp430-gcc,必须返回4.7.0 20120322

msp430-gcc --version

安装 gdb

cd ../../gdb-7.2
patch -p1 < ../mspgcc-20120911/msp430-gdb-7.2a-20111205.patch
patch -p1< ../gdb.patch
cd ../build/gdb 
../../gdb-7.2/configure --target=msp430 --prefix=/usr/local/msp430 2>&1 | tee co 
make 2>&1 | tee mo
sudo make install 2>&1 | tee moi  

检查 gdb 安装:

msp430-gdb --version

必须返回 7.2

msp430mcu 和 msp430-libc

cd ../../msp430mcu-20130321/
sudo MSP430MCU_ROOT=`pwd` ./scripts/install.sh /usr/local/msp430 | tee so

cd ../msp430-libc-20120716/src/
make 2>&1 | tee mo
sudo PATH=$PATH make PREFIX=/usr/local/msp430 install 2>&1 | tee moi 
cd ../..

答案3

我在装有 Windows7 主机的虚拟机上使用 Lubuntu 16.10,首先安装了 libc6:i386,然后执行,在我的情况下,msp430-gcc-full-linux-installer-4.2.0.36.run使用终端,它根本不需要安装 CCS 就可以工作。

打开终端,您可以使用ctrl+ alt+t键,然后输入:

sudo apt-get install libc6:i386

等待它完成,然后运行你原来的命令,或者用 GUI 双击并用终端执行。

相关内容