Not really, I created the tar bar exactly as the md instructed. However, the downloaded matlab folder does not have that file in the first place.
Search Criteria
Package Details: matlab 9.14.0.2337262-1
Package Actions
Git Clone URL: | https://aur.archlinux.org/matlab.git (read-only, click to copy) |
---|---|
Package Base: | matlab |
Description: | A high-level language for numerical computation and visualization |
Upstream URL: | https://www.mathworks.com |
Keywords: | computation matlab numerical visualization |
Licenses: | custom |
Provides: | matlab-bin |
Submitter: | ido |
Maintainer: | None |
Last Packager: | Rubo |
Votes: | 40 |
Popularity: | 0.000567 |
First Submitted: | 2015-08-15 09:33 (UTC) |
Last Updated: | 2023-09-19 12:20 (UTC) |
Dependencies (2)
- matlab-metaAUR
- gendesk (make)
Required by (11)
- carnot
- digital_rf-git (optional)
- diplib-git (optional)
- gurobi (optional)
- gurobi81 (optional)
- jupyter-matlab_kernel (optional)
- libmole (optional)
- matlab-segymat (optional)
- python-matlabengine
- vitis (optional)
- vivado (optional)
Sources (3)
Latest Comments
« First ‹ Previous 1 .. 6 7 8 9 10 11 12 13 14 15 16 .. 26 Next › Last »
Hork commented on 2021-01-28 19:06 (UTC)
silverbluep commented on 2021-01-28 16:26 (UTC)
I assume this is a problem with the way you created the tar file; did you follow the instructions as exactly stated in the README provided by the repo? I would delete the one you have and recreate the needed files.
Hork commented on 2021-01-28 10:47 (UTC) (edited on 2021-01-28 10:49 (UTC) by Hork)
I straced that matlab/bin/glnxa64/install_unix
, stat("/tmp/makepkg/matlab/src/matlab/sys/java/jre/glnxa64/jre/lib/security/jssecacerts", 0x7fffe1f6baf0) = -1 ENOENT (No such file or directory)
is what I suspect wrong. Do you have this file in your downloaded matlab folder?
silverbluep commented on 2021-01-27 19:44 (UTC) (edited on 2021-01-27 19:47 (UTC) by silverbluep)
What is that installer? I can't help if you are not being specific. The installer for MATLAB does not print to stdout; and that's on mathworks nothing I can do. There should be some installer log somewhere; but I don't know where the installer puts it. Your problem is not due to python; because anything to do with python is printed on stdout when you run makepkg.
You don't need to do any chrooting; install dependencies, bring together the neccessary files and mimic the PKGBUILD steps (on your home directory; NOT on your main system.) Be sure to read the README.md in the repo, and make sure you are not using ANY aur helper.
Hork commented on 2021-01-27 17:30 (UTC)
That is the thing, I don't actually know whats wrong with that installer, it does not have any log. I don't even know how to debug this, I might need to do some chroot to mimic makepkg and go through build steps one by one.
silverbluep commented on 2021-01-26 19:55 (UTC) (edited on 2021-01-26 19:59 (UTC) by silverbluep)
that is not very specific; what issue are you having? Either way; make sure you rebuild the aur dependencies and jupyter-matlab_kernel-git again so that everything is using python 3.9 (you need to rebuild python-dependent aur packages again; even if their pkgbuild are not updated)
I built this package just fine; with the up to date versions of dependencies. And everything works. So curious as to what is not working.
Hork commented on 2021-01-26 18:39 (UTC)
I still have that python issue, with latest pkgbuild.
Andy2 commented on 2021-01-22 20:27 (UTC)
Hi,
I ran into the same Python issue and I "backported" the Python 3.8 faking for Python 3.9. Matlab installed and I was able to start a Matlab engine from an iPython shell, so I would suspect it works.
I even installed the Update 3 as root after Matlab told me I could do that from the little bell icon menu and it still works.
Patch:
diff --git a/PKGBUILD b/PKGBUILD
index b6a40eb..87f79b8 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -150,22 +150,53 @@ build() {
# cause the installation to be non-interactive
"${srcdir}/${pkgname}/install" -inputFile "${srcdir}/${pkgname}/installer_input.txt"
+ # Create spoofing for Python API
+ # https://aur.archlinux.org/packages/matlab-engine-for-python/
+ cd "${srcdir}/build/extern/engines/python"
+ # Getting appropriate python version for spoofing
+ _matminor="$(find "${srcdir}/build/extern/engines/python" \
+ -name 'matlabengineforpython3*.so' |
+ sort |
+ sed 's|.*matlabengineforpython3_\([0-9]\)\.so|\1|g' |
+ tail -1)"
+ echo 'import sys' > "${srcdir}/sitecustomize.py"
+ echo "sys.version_info = (3, ${_matminor}, 0)" >> "${srcdir}/sitecustomize.py"
+
# Build the python API
cd "${srcdir}/build/extern/engines/python"
- python setup.py build
+ PYTHONPATH="${srcdir}" python setup.py build
}
package() {
# Package the python API
cd "${srcdir}/build/extern/engines/python"
- python setup.py install --root="${pkgdir}" --optimize 1 --skip-build
- # Fix erronous referances in the _arch.txt files
+ PYTHONPATH="${srcdir}" python setup.py install --root="${pkgdir}" --optimize 1 --skip-build
+
+ # Spoofing trick to fool matlab into believing python 3.9 is supported
+ _matminor="$(find "${srcdir}/build/extern/engines/python" \
+ -name 'matlabengineforpython3*.so' |
+ sort |
+ sed 's|.*matlabengineforpython3_\([0-9]\)\.so|\1|g' |
+ tail -1)"
+ _prefix="$(python -c 'import sys; print(sys.prefix)')"
+ _pytminor="$(python -c 'import sys; print(sys.version_info.minor)')"
+
+ # Correct file names
+ if [[ "${_pytminor}" != "${_matminor}" ]]; then
+ mv "${pkgdir}/${_prefix}/lib/python3".{"${_matminor}","${_pytminor}"}
+ _egginfo="$(ls "${pkgdir}/${_prefix}/lib/python3.${_pytminor}/site-packages/"*"-py3.${_matminor}.egg-info")"
+ mv "${_egginfo}" "${_egginfo%py3."${_matminor}".egg-info}py3.${_pytminor}.egg-info"
+ sed -i "s|sys.version_info|(3, $_matminor, 0)|" \
+ "${pkgdir}/${_prefix}/lib/python3.${_pytminor}/site-packages/matlab/engine/__init__.py"
+ fi
+
+ # Fix erronous references in the _arch.txt files
_prefix="$(python -c 'import sys; print(sys.prefix)')"
errstr="${srcdir}/build/extern/engines/python/"
trustr="${instdir}/extern/engines/python/"
for _dir in \
"${srcdir}/build/extern/engines/python/build/lib/matlab/engine" \
- "${pkgdir}/${_prefix}/lib/python3.8/site-packages/matlab/engine" \
+ "${pkgdir}/${_prefix}/lib/python3.${_pytminor}/site-packages/matlab/engine" \
; do
sed -i "s|${errstr}|${trustr}|" "${_dir}/_arch.txt"
done
silverbluep commented on 2021-01-06 03:10 (UTC)
@hawath; when I last updated the package; gcc8 was not in AUR and I do not have any intention to package that. It seems gcc8 was submitted to AUR a month after I installed the package. I'll also change the gcc version when I fix the python issue.
Pinned Comments
Rubo commented on 2022-09-25 13:31 (UTC) (edited on 2022-09-25 13:32 (UTC) by Rubo)
Hi, I'm tackling the problem with the add-ons installation, where the installer can't write to
/usr/local/MATLAB/R2022b
. I think we should avoid manualchmod
s orchown
s, as it would be easy to mess up with the permissions, so I created amatlab
group withrwx
permissions, which owns the tree starting at/usr/local/MATLAB/R2022b
. The PKGBUILD sets up the correct permissions, so after installing MATLAB, you should just add yourself to that group, re-login and then you should be able to install add-ons. So far I'm able to start the installer, download the add-on archive, but when I get toPerforming post-installation tasks. This may take a few minutes...
, an error occurs, and the installer logsEnd - Unsuccessful Exception: java.lang.InterruptedException
without further information.If anyone wants to help me resolve this issue, here is the repo: https://github.com/Rubo3/matlab-aur/tree/addons.
Rubo commented on 2022-09-16 13:52 (UTC) (edited on 2022-09-16 20:26 (UTC) by Rubo)
I updated the PKGBUILD to MATLAB R2022b. Sorry it took so long. Here are the main changes:
namcap
(thanks @sukanka), and are now managed via the matlab-meta meta package, now it's really easy to play around with them, as you don't have to rebuild the entire MATLAB package (thanks @bbaserdem). I still don't know the exact dependencies needed by MATLAB, as I don't use all its toolkits and whatnots. As always, please tell me if you find something.install.log
, under the same directory of the PKGBUILD, so that you can check whether something went wrong even if it didn't fail (e.g. when you need a new license or installation key because the major version changed).python-matlabengine
to its own repo, which is built from upstream and works for the latest MATLAB versions. Currently it supports Python 3.9 and 3.10. If you have other needs, you can find the installation instructions here. Since the source files are still provided in your local MATLAB installation under$_instdir/extern/engines/python
, building it and packaging it here was really just a convenience. I would like to know how many users of this PKGBUILD really need to spoof their Python version, so that we can reason about putting back that extra logic in the other PKGBUILD.silverbluep commented on 2020-09-21 16:39 (UTC) (edited on 2021-02-03 18:13 (UTC) by silverbluep)
READ THE README FILE IN THE REPO. NO AUR HELPERS SUPPORTED. ONLY ARCHLINUX AS OS IS SUPPORTED. YOU SHOULD BE BUILDING THIS PACKAGE USING MAKEPKG, NOTHING ELSE WILL BE SUPPORTED. Please only post issues here AFTER you followed the README.md. located at the root of this repo: https://aur.archlinux.org/cgit/aur.git/tree/README.md?h=matlab Due to a lot of comments; my spam filter is removing AUR notifications which keeps me from responding timely to issues in packaging, please don't post if you don't do some troubleshooting yourself. If your skill level is not up to troubleshooting (or following simple instructions as laid out by the readme), just install matlab locally, without using this package.