Package Details: stm32cubeide 1.15.0-1

Git Clone URL: https://aur.archlinux.org/stm32cubeide.git (read-only, click to copy)
Package Base: stm32cubeide
Description: Integrated Development Environment for STM32
Upstream URL: https://www.st.com/en/development-tools/stm32cubeide.html
Keywords: arm cortex cortex-m cube cubeide stm32
Licenses: custom:SLA0048
Submitter: kumen
Maintainer: kumen
Last Packager: kumen
Votes: 36
Popularity: 1.46
First Submitted: 2019-05-02 15:05 (UTC)
Last Updated: 2024-03-27 15:45 (UTC)

Pinned Comments

kumen commented on 2023-03-19 13:14 (UTC) (edited on 2023-03-19 13:17 (UTC) by kumen)

STM32CubeIDE is now run by executing stm32cubeide_wayland official script. If you have issues related to run environment, try to edit /usr/share/applications/stm32cubeide.desktop file and uncomment one of commented out Exec=... lines and comment out currently used one. After making changes to stm32cubeide.desktop run update-desktop-database as root to apply changes.

Discussion about this Eclipse issues is here: https://github.com/eclipse-platform/eclipse.platform.swt/issues/158

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 9 10 11 12 .. 14 Next › Last »

fenugrec commented on 2022-12-07 20:30 (UTC) (edited on 2022-12-08 00:04 (UTC) by fenugrec)

@Sabu, yes, that's why I said "because /tmp is mounted noexec", which is generally recommended. I don't know which part of stm32cube or java is configured to dump executable stuff into /tmp , hence my question for fixes / workarounds that don't involve reconfiguring my system.

[EDIT] I'm on my way to finding a workaround, I think - https://stackoverflow.com/a/10108362

it involves changing the java.io.tmpdir var when starting stm32cubeide.

[EDIT 2] Found a workaround, possibly ugly : invoke stm32cube ide prefixed with "_JAVA_OPTIONS=-Djava.io.tmpdir=/path_to_executable_tmpdir stm32cubeide"

I will probably modify the .desktop file on my machines.

Sabu commented on 2022-12-07 18:49 (UTC)

@fenugrec, it's mostly a permissions issue. See the first answer: https://stackoverflow.com/questions/13502156/what-are-possible-causes-of-failed-to-map-segment-from-shared-object-operation It's also described here under point (d) "the fact that a segment could be read from a file doesn't mean it could be mmaped with the right protection (eg. executable) or that it could be be mmaped at the address required" --> https://unix.stackexchange.com/questions/496292/what-does-a-failed-to-map-segment-from-shared-object-error-mean

fenugrec commented on 2022-12-07 18:09 (UTC)

Hi, I'm getting some errors because by default /tmp is mounted noexec :

Failed to load native library:sqlite-3.34.0-d9b6997b-eb3d-4e7c-b2c4-abe6cdf75789-libsqlitejdbc.so. osinfo: Linux/x86_64                                                                                  
java.lang.UnsatisfiedLinkError: /tmp/sqlite-3.34.0-d9b6997b-eb3d-4e7c-b2c4-abe6cdf75789-libsqlitejdbc.so: /tmp/sqlite-3.34.0-d9b6997b-eb3d-4e7c-b2c4-abe6cdf75789-libsqlitejdbc.so: failed to map segment from shared object

(this is when trying to run the "new STM32 project" wizard. Ideas for a workaround , without changing perms on /tmp ?

semes commented on 2022-12-06 12:28 (UTC) (edited on 2022-12-06 12:32 (UTC) by semes)

Maintainer: semes to cope kumen update date:2022.12.6
Url to down:https://www.st.com/zh/development-tools/stm32cubeide.html#overview
Contributor: nightuser nightuser.android@gmail.com

pkgname="stm32cubeide" pkgver=1.11.0 _pkgver_ext=1.11.0_13638_20221122_1308 _pkg_file_name=en.st-stm32cubeide_1.11.0_13638_20221122_1308_amd64.sh.zip

Down_url:https://www.st.com/content/ccc/resource/technical/software/sw_development_suite/group0/0c/78/32/f9/97/af/49/e3/stm32cubeide_lnx/files/st-stm32cubeide_1.11.0_13638_20221122_1308_amd64.sh.zip/jcr:content/translations/en.st-stm32cubeide_1.11.0_13638_20221122_1308_amd64.sh.zip

pkgrel=1 pkgdesc="Integrated Development Environment for STM32" arch=("x86_64") makedepends=('xdg-user-dirs' 'imagemagick') depends=('java-runtime' 'glibc' 'libusb' 'webkit2gtk' 'arm-none-eabi-gdb') optdepends=('jlink-software-and-documentation' 'stlink') conflicts=() url="https://www.st.com/en/development-tools/stm32cubeide.html" license=('Commercial') options=(!strip)

_DOWNLOADS_DIR=xdg-user-dir DOWNLOAD if [ ! -f ${PWD}/${_pkg_file_name} ]; then if [ -f $_DOWNLOADS_DIR/${_pkg_file_name} ]; then ln -sfn $_DOWNLOADS_DIR/${_pkg_file_name} ${PWD} else msg2 "" msg2 "Package not found!" msg2 "The package can be downloaded here: ${url}" msg2 "Please remember to put a downloaded package ${_pkg_file_name} into the build directory ${PWD} or $_DOWNLOADS_DIR" msg2 "" fi fi

source=("local://${_pkg_file_name}" "99-jlink.rules.patch" "https://www.st.com/resource/en/license_agreement/dm00218346.pdf") sha256sums=('9bfd5402344607f4f307f24a6a2165a20342695e43d62edd0dd8c266c651a79a' '0f3f69f7c980a701bf814e94595f5acb51a5d91be76b74e5b632220cfb0e7bb3' 'SKIP')

prepare(){ mkdir -p build sh "${srcdir}/"st-stm32cubeide_${_pkgver_ext}_amd64.sh --quiet --noexec --nox11 --target "${srcdir}/build"

mkdir -p "${srcdir}/build/stlink-server"
sh "${srcdir}/build/"st-stlink-server.*.install.sh --quiet --noexec --nox11 --target "${srcdir}/build/stlink-server"

mkdir -p "${srcdir}/build/stlink-udev"
sh "${srcdir}/build/"st-stlink-udev-rules-*-linux-noarch.sh --quiet --noexec --nox11 --target "${srcdir}/build/stlink-udev"

mkdir -p "${srcdir}/build/jlink-udev"
sh "${srcdir}/build/"segger-jlink-udev-rules-*-linux-noarch.sh --quiet --noexec --nox11 --target "${srcdir}/build/jlink-udev"

}

package() { cd "$srcdir"

msg2 'Installing STM32CubeIDE'
install -d -m755 "${pkgdir}/opt/${pkgname}"
tar zxf "./build/st-stm32cubeide_${_pkgver_ext}_amd64.tar.gz" -C "${pkgdir}/opt/${pkgname}"

msg2 'Installing stlink server'
install -d -m755 "${pkgdir}/usr/bin/"
cp "${srcdir}/build/stlink-server/stlink-server" "${pkgdir}/usr/bin/"
chmod 0755 "${pkgdir}/usr/bin/stlink-server"
chown root:root "${pkgdir}/usr/bin/stlink-server"

msg2 'Instalation of STlink udev rules skipped'
#msg2 'Installing STlink udev rules'
#install -d -m755 "${pkgdir}/usr/lib/udev/rules.d/"
#install -D -o root -g root -m 644 -t "${pkgdir}/usr/lib/udev/rules.d/" "$srcdir/build/stlink-udev/fileset/"*.rules

msg2 'Instalation of JLink udev rules skipped'
#msg2 'Installing JLink udev rules'
#install -d -m755 "${pkgdir}/usr/lib/udev/rules.d/"
#install -D -o root -g root -m 644 -t "${pkgdir}/usr/lib/udev/rules.d/" "$srcdir/build/jlink-udev/"*.rules
#patch -i "${srcdir}/99-jlink.rules.patch" "${pkgdir}/usr/lib/udev/rules.d/99-jlink.rules"

msg2 'Instalation of binary file'
install -Dm755 /dev/stdin "${pkgdir}/usr/bin/${pkgname}" <<END
!/bin/sh

/opt/stm32cubeide/stm32cubeide "\$@" END

msg2 'Installing desktop shortcut and icon'
convert "${pkgdir}/opt/stm32cubeide/icon.xpm" "${srcdir}/${pkgname}.png"
install -Dm 644 "${srcdir}/${pkgname}.png" "${pkgdir}/usr/share/pixmaps/${pkgname}.png"
install -Dm644 /dev/stdin "$pkgdir/usr/share/applications/${pkgname}.desktop" <<END

[Desktop Entry] Name=STM32CubeIDE Comment=STM32CubeIDE 1.10.1 GenericName=STM32CubeIDE Exec=env GDK_BACKEND=x11 stm32cubeide %F Icon=stm32cubeide Path=/opt/stm32cubeide/ Terminal=false StartupNotify=true Type=Application Categories=Development END

msg2 'Replace GDB by system'
rm "${pkgdir}/opt/stm32cubeide/plugins/"com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32*/tools/bin/arm-none-eabi-gdb
rm "${pkgdir}/opt/stm32cubeide/plugins/"com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32*/tools/bin/arm-none-eabi-gdb-add-index
ln -s /usr/bin/arm-none-eabi-gdb "${pkgdir}/opt/stm32cubeide/plugins/"com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32*/tools/bin
ln -s /usr/bin/arm-none-eabi-gdb-add-index "${pkgdir}/opt/stm32cubeide/plugins/"com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32*/tools/bin

msg2 'Instalation of license file'
install -d -m755 "${pkgdir}/usr/share/licenses/${pkgname}/"
install -D -o root -g root -m 644 -t "${pkgdir}/usr/share/licenses/${pkgname}/" "${srcdir}/dm00218346.pdf"

}

makepkg --printsrcinfo > .SRCINFO
vim: set ts=8 sw=8 tw=0 noet:

semes commented on 2022-12-06 12:07 (UTC) (edited on 2022-12-06 12:09 (UTC) by semes)

你需要自己去注册st账户和下载通用stmcubeide安装程序,并且修改pkgbuild相应的内容才能正常安装,所以包没有过期,原因是通用安装包的大小近乎1gb

Sabu commented on 2022-09-17 22:25 (UTC)

@xiretza: As shown above in the list of dependencies, you should have xdg-user-dirs installed.

xiretza commented on 2022-09-17 08:14 (UTC) (edited on 2022-09-17 08:18 (UTC) by xiretza)

Fails with:

PKGBUILD: line 19: xdg-user-dir: command not found

Please either remove this whole _DOWNLOADS_DIR logic (PKGBUILDs really aren't supposed to touch anything outside of $srcdir), or at least guard the xdg-user-dir invocation so it doesn't cause errors before makedepends are installed.

oe1tkt commented on 2022-05-27 17:06 (UTC) (edited on 2022-05-27 17:07 (UTC) by oe1tkt)

With v1.9.0, you must

1.) download the software file manually from https://www.st.com/en/development-tools/stm32cubeide.html selecting Generic Linux Installer and install it into the same folder where you find the PKGBUILD. Unfortunately the filename has changed, so additionally you have to edit the PKGBUILD file,

2.) change the line in PKGBUILD to:

_pkg_file_name=en.st-stm32cubeide_1.9.0_12015_20220302_0855_amd64.sh.zip

3.) makepkg -si

tuankiet65 commented on 2022-03-24 12:20 (UTC)

I don't have a J-Link so I can't say anything about that, sorry.

kumen commented on 2022-03-09 15:58 (UTC) (edited on 2022-03-09 15:58 (UTC) by kumen)

I was thinking about replacing integrated J-link for jlink-software-and-documentation. What do you think about that?
It was working fine in version v1.8.0 of IDE.