This is an old revision of the document!
https://www.ondrovo.com/a/20170107-stm8-getting-started/
https://stm8-binutils-gdb.sourceforge.io/
openocd
 # sudo apt-get install automake libtool
 
 # git clone git:
repo.or.cz/openocd.git
  - # cd openocd
  - # ./bootstrap
  - # ./configure
  - # make
  - # sudo make install
sdcc
  - Get sources from https://sourceforge.net/projects/sdcc/files/
  - # sudo apt-get install libboost-dev gputils
  - # ./configure
  - # make
  - # sudo make install
stm8-binutils
  - Get sources from https://sourceforge.net/projects/stm8-binutils-gdb/files/
  - # ./patch_binutils.sh
  - # ./configure_binutils.sh
  - # cd binutils-2.3
  - # make
  - # sudo make install
stm8-flash
  - # git clone https://github.com/vdudouyt/stm8flash.git
  - # cd stm8flash/
  - # make
  - # sudo cp stm8flash /usr/bin/
st-link permissions
<code>
# /etc/udev/rules.d/49-stlinkv2.rules
# stm32 discovery boards, with onboard st/linkv2
# ie, STM32L, STM32F4.
# STM32VL has st/linkv1, which is quite different
SUBSYSTEMS==“usb”, ATTRS{idVendor}==“0483”, ATTRS{idProduct}==“3748”, \
    MODE:=“0666”, \
    SYMLINK+=“stlinkv2_%n”
SUBSYSTEMS==“usb”, ATTRS{idVendor}==“0483”, ATTRS{idProduct}==“374b”, \
    KERNEL!=“sd*”, KERNEL!=“sg*”, KERNEL!=“tty*”, SUBSYSTEM!=“bsg”, \
    MODE:=“0666”, \
    SYMLINK+=“stlinkv2_%n”
SUBSYSTEMS==“usb”, ATTRS{idVendor}==“0483”, ATTRS{idProduct}==“374b”, \
    KERNEL==“sd*”, MODE:=“0666”, \
    SYMLINK+=“stlinkv2_disk”
SUBSYSTEMS==“usb”, ATTRS{idVendor}==“0483”, ATTRS{idProduct}==“374b”, \
    KERNEL==“sg*”, MODE:=“0666”, \
    SYMLINK+=“stlinkv2_raw_scsi”
SUBSYSTEMS==“usb”, ATTRS{idVendor}==“0483”, ATTRS{idProduct}==“374b”, \
    SUBSYSTEM==“bsg”, MODE:=“0666”, \
    SYMLINK+=“stlinkv2_block_scsi”
SUBSYSTEMS==“usb”, ATTRS{idVendor}==“0483”, ATTRS{idProduct}==“374b”, \
    KERNEL==“tty*”, MODE:=“0666”, \
    SYMLINK+=“stlinkv2_console”
# If you share your linux system with other users, or just don't like the
# idea of write permission for everybody, you can replace MODE:=“0666” with
# OWNER:=“yourusername” to create the device owned by you, or with
# GROUP:=“somegroupname” and control access using standard unix groups.
</code>
 
 
      
      
      Back to top