Ah I see. xdg-user-dirs
is used even before installation of makedepends from PKGBUILD. Is that correct?
Search Criteria
Package Details: stm32cubeide 1.18.0-1
Package Actions
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 cubeide embedded ide st stm32 |
Licenses: | custom:SLA0048 |
Submitter: | kumen |
Maintainer: | kumen |
Last Packager: | kumen |
Votes: | 37 |
Popularity: | 0.007896 |
First Submitted: | 2019-05-02 15:05 (UTC) |
Last Updated: | 2025-03-11 15:32 (UTC) |
Dependencies (9)
- glibc (glibc-gitAUR, glibc-linux4AUR, glibc-eacAUR)
- libusb (libusb-gitAUR)
- ncurses5-compat-libsAUR
- stlink-serverAUR
- webkit2gtk (webkit2gtk-imgpasteAUR)
- imagemagick (imagemagick-gitAUR, imagemagick-full-gitAUR, imagemagick-fullAUR) (make)
- arm-none-eabi-gdb (optional)
- jlink-software-and-documentationAUR (optional)
- stlink (stlink-gitAUR) (optional)
Required by (0)
Sources (7)
Latest Comments
« First ‹ Previous 1 .. 4 5 6 7 8 9 10 11 12 13 14 .. 16 Next › Last »
kumen commented on 2023-01-09 18:28 (UTC)
xiretza commented on 2023-01-09 16:29 (UTC) (edited on 2023-01-09 16:29 (UTC) by xiretza)
How is makepkg even supposed to know it has to install the package if running the PKGBUILD requires the package to be installed? That can't possibly work.
I'm building in a clean chroot, and I'm not about to manually pre-install dependencies because of an obviously broken PKGBUILD.
Sabu commented on 2023-01-09 01:13 (UTC) (edited on 2023-01-09 01:14 (UTC) by Sabu)
@xiretza, you've already installed the package xdg-user-dirs
? If not, then your installation didn't fullfill the dependencies. See the list above with dependencies. If you've installed xdg-user-dirs
the you can run this command from the command line without any errors.
xiretza commented on 2023-01-08 21:22 (UTC)
Still fails with:
PKGBUILD: line 19: xdg-user-dir: command not found
Again, 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.
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.
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 outExec=...
lines and comment out currently used one. After making changes tostm32cubeide.desktop
runupdate-desktop-database
as root to apply changes.Discussion about this Eclipse issues is here: https://github.com/eclipse-platform/eclipse.platform.swt/issues/158