Package Details: matlab-gcc 1:R2025a+25.1.0.2973910-1

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 (GCC runtime dependency)
Upstream URL: https://www.mathworks.com/products/matlab.html
Keywords: computation matlab numerical visualization
Licenses: custom:MATLAB EULA
Provides: matlab-gcc, matlab-gcc-release, matlab-gcc-version
Submitter: ido
Maintainer: None
Last Packager: vitaliikuzhdin
Votes: 41
Popularity: 0.30
First Submitted: 2015-08-15 09:33 (UTC)
Last Updated: 2025-07-30 20:23 (UTC)

Dependencies (5)

Required by (1)

Sources (1)

Pinned Comments

vitaliikuzhdin commented on 2025-07-16 13:12 (UTC) (edited on 2025-08-05 20:05 (UTC) by vitaliikuzhdin)

TODO:

  1. Figure out the users and permissions. Currently, /opt/MATLAB/${_release} has 777 permissions, which is obviously undesired. It might be better to create a user group and require users to manually add themselves to it for security reasons.

  2. Improve the installer. For example, the current inotify watcher spams stdout and does not account for the end of the download/installation or the width of the terminal, which results in flaky output.

  3. Figure out the dependencies. The list of Debian/RHEL dependencies is public, but it includes some seemingly unneeded packages. This might be because they are required by dependent products/add-ons. Additionally, the current logic for removing bundled dependencies should probably be rewritten. Maintaining an exhaustive list for a single release is very difficult, and these components change without notice. Moreover, the current approach may go against the Arch KISS philosophy. Ideally, we should remove only the problematic components like Qt, XCB, libtiff, gcc-libs, fontconfig, etc.

  4. Add auto-discovery for packages written for MATLAB. My plan was to use /usr/lib/MATLAB/${_release} for release-specific modules and /usr/lib/MATLAB/common for shared (mostly architecture-independent) packages. However, load order matters, and "common" modules need to specify which releases they are compatible with. This means we need to implement our own logic for discovering and loading these, likely via hooks, shell scripts, and configuration files (perhaps TOML could work?).

  5. Fix the Python components. python-matlabengine does install the Python components built against the version of Python shipped by Arch. However, some proprietary CPython components are not included and are built against ancient Python versions. This likely requires version spoofing or some alternative approach.

  6. Write and upload packages for previous MATLAB releases. It is entirely possible to have multiple releases installed simultaneously. I have a few of these packages myself, but they are drafts and not suitable for upload to the AUR.

  7. Write and upload packages for MATLAB-dependent add-ons and products. When installing MATLAB required user intervention for source access, it was acceptable to break reproducibility and manually specify required products for installation. Now that we use MPM, it would be better to separate products into individual packages. These packages would install themselves and their dependencies into a specific location, then use appdata to install only the component's files. The problem is that MATLAB often includes conflicting files that need to be combined or overwritten. Obviously, we can't allow that, so a hook must be implemented to, for example, combine *.combine@matlab-simulink and replace *.replace@matlab-documentation files with backups. Needless to say, this is challenging to implement, so the previous approach (having users specify the product list) might still be preferred.

  8. Write and upload the matlab-runtime package. I have a draft, but the problem with this package is that it installs the runtime for every available product. Ideally, for source-built packages, we would want to makedepend on matlab-$product and depend on matlab-$product-runtime. However, this is not possible without splitting the runtime packages, which poses the challenges described above. I’ll try my best to revisit this sometime later.

vitaliikuzhdin commented on 2025-07-16 12:55 (UTC)

@aoneko, @Reexys, please read the post-installation instructions. If you've lost them, you can find the same information here.

Latest Comments

« First ‹ Previous 1 .. 18 19 20 21 22 23 24 25 26 27 28 Next › Last »

noel commented on 2017-09-06 22:23 (UTC)

conflicts with texlive-bin -> /usr/bin/mex

smldis commented on 2017-09-05 15:06 (UTC) (edited on 2017-09-05 15:15 (UTC) by smldis)

For new users, notice that you have to follow the Wiki for using this pkg. right?

streckus commented on 2017-09-03 16:59 (UTC)

For Matlab 2017a, the optional dependency gcc47 can be updated to gcc49. (The corresponding AUR package also includes gfortran.)

Turtizzle commented on 2017-08-31 09:19 (UTC) (edited on 2017-09-04 09:27 (UTC) by Turtizzle)

Hi, I have minor problems installing the package with 2017a. In particular, some of the files referenced in the package() method of the PKGBUILD do not exist. Some shell output: https://pastebin.com/raw/3MN1p7iW The original content of my installer_input.txt: https://pastebin.com/raw/YNnjs3u4 The content of the installer_input.txt in the src-folder: https://pastebin.com/raw/k4SyVULs I hope you can help me out with this one, looks like a minor issue, but I don't know much about the matlab installation process... thanks. :) Edit: I finally had some time to look into it myself... solved it quite easily. I removed the "silent" option of the installer, then it told me that a license file was required. There was no license.dat available in our software repository, but a network.lic ... I renamed the file, enabled "_networkinstall" and yea, awesome.

greyltc commented on 2017-08-24 10:20 (UTC)

@progwolff, I have harfbuzz 1.4.8-1 on my system and the GUI works fine

progwolff commented on 2017-08-24 07:49 (UTC)

harfbuzz=1.4.6 is a runtime dependency. Without it, or with a higher version, the GUI fails to start.

greyltc commented on 2017-08-22 10:56 (UTC)

I've just updated this and R2017a is working alright with this package for me now. Somehow Mathworks' hardware opengl support detection is wonky. I just run `matlab -nosoftwareopengl` to work around that.

greyltc commented on 2017-08-22 09:52 (UTC)

Hey all, I've adopted this and I'll try to get it up to snuff on R2017a

kyak commented on 2017-08-22 06:44 (UTC) (edited on 2017-08-22 06:46 (UTC) by kyak)

@kahlos - Not only these dependencies are required, there are actually more required dependencies in newer releases. The fact that MATLAB launched successfully on your minimal system doesn't mean that all the vast of MATLAB toolboxes will run successfully. Some toolboxes, like Image Acquisition, requre gstreamer (not gstreamer 0.10). Some functionality, like SDI or Add-on Manager, require libselinux. Some features may require ffmpeg. And it goes on. The wiki mentiones some of these caveates - but i just wanted to caution you that the fact that you have bare X running doesn't mean all aspects of MATLAB will work successfully.

ido commented on 2017-08-21 17:06 (UTC)

@kahlos - thanks for the script. I haven't touched this package in a long time. daniel_shub is in charge as far as I know, have a look at his matlab-<YYYY[a|b]> packages, e.g. matlab-2015b.