risc-v openocd for windows 编译日记
在网上各种找编译 riscv openocd windows可执行文件的方法,各种碰壁,两个多星期终于有个满意的结果☺。
用来编译的host:ubuntu 16.4
//下载riscv-openocd
git clone https://github.com/riscv/riscv-openocd.git
//进入riscv-openocd根目录
cd riscv-openocd
// 下载libusb1.0,这里包含了windows下libusb的dll,交叉编译会用到
wget https://github.com/libusb/libusb/releases/download/v1.0.22/libusb-1.0.22.7z
//解压libusb,如果没安装7z,sudo apt install p7zip-full
7z x -olibusb libusb-1.0.22.7z
//把libusb-1.0.dll复制到src
cp ./libusb/MinGW32/dll/libusb-1.0.dll ./src
//添加环境变量,告诉编译器去哪找libusb
export LIBUSB1_FLAGS="$LIBUSB1_FLAGS -I${PWD}/libusb/include/libusb-1.0"
export CPPFLAGS="$CPPFLAGS -I${PWD}/libusb/include/libusb-1.0"
export CPPFLAGS="$CPPFLAGS -D__USE_MINGW_ANSI_STDIO=1"
export LDFLAGS="$LDFLAGS -L${PWD}/libusb/MinGW32/dll"
//执行bootstrap,根据提示缺什么装什么
./bootstarp
//接着执行configure,没有安装i686-w64-mingw32提前安装
./configure --host=i686-w64-mingw32 --prefix=/home/xxx/myopenocd_output
//make,等待结果
make
//myopenocd_output下便是最终的文件,开始去windows下验证吧!
make install
cp ./libusb/MinGW32/dll/libusb-1.0.dll /home/xxx/myopenocd_output/bin