Difference between revisions of "Mathematica"

From ArchWiki
Jump to: navigation, search
m (Style applied.)
m (Added troubleshooting of errors due to incompatibilities with system libraries. Seems to be a common problem now.)
 
(26 intermediate revisions by 10 users not shown)
Line 1: Line 1:
 
[[Category:Mathematics and science]]
 
[[Category:Mathematics and science]]
 
[[it:Mathematica]]
 
[[it:Mathematica]]
{{stub}}
+
[[ja:Mathematica]]
{{Article summary start}}
+
[[zh-hans:Mathematica]]
{{Article summary text|Mathematica is a commercial program used in scientific, engineering and mathematical fields. Here we explain how to install it.}}
+
{{Related articles start}}
{{Article summary heading|Related}}
+
{{Related|Scientific Applications}}
{{Article summary wiki|Scientific Applications}}
+
{{Related|Sage-mathematics}}
{{Article summary wiki|Sage-mathematics}}
+
{{Related|Matlab}}
{{Article summary wiki|Matlab}}
+
{{Related articles end}}
{{Article summary heading|Resources}}
 
{{Article summary link|Official site|http://www.wolfram.com/mathematica/}}
 
{{Article summary link|Official Support|http://www.wolfram.com/support/}}
 
{{Article summary end}}
 
  
{{Accuracy|Many informations here may be outdated.}}
+
[http://www.wolfram.com/mathematica/ Mathematica] is a commercial program used in scientific, engineering and mathematical fields. Here we explain how to install it.
  
 
== Installation ==
 
== Installation ==
 +
 +
Since Mathematica is a non-free application and upgrades may incur costs, this section lists instructions for different available versions.
  
 
=== Mathematica 6 ===
 
=== Mathematica 6 ===
Line 21: Line 19:
 
==== Mounting iso ====
 
==== Mounting iso ====
  
One way to mount the Mathematica .iso is to create ''/media/iso'' and add the following line to the fstab:
+
One way to mount the Mathematica {{ic|.iso}} is to create a {{ic|/media/iso}} mount directory and add the following line to the [[fstab]]:
 
  /''location/of/mathematica.iso'' /media/iso iso9660 exec,ro,user,noauto,loop=/dev/loop0  0 0
 
  /''location/of/mathematica.iso'' /media/iso iso9660 exec,ro,user,noauto,loop=/dev/loop0  0 0
 
Now you can mount it with:
 
Now you can mount it with:
  mount /media/iso
+
  # mount /media/iso
  
 
==== Running the Installer ====
 
==== Running the Installer ====
Line 37: Line 35:
  
 
Add the directories containing Type1 and BDF fonts to your FontPath.
 
Add the directories containing Type1 and BDF fonts to your FontPath.
 
==== Troubleshooting ====
 
 
If you have font rendering problems where certain symbols do not show up (i.e. "/" appears as a square), try uninstalling {{Pkg|font-mathematica}}.
 
 
Also, try [http://mathematica.stackexchange.com/questions/1158/invisible-conjugate-glyph-in-the-linux-frontend this] solution.
 
  
 
=== Mathematica 7 ===
 
=== Mathematica 7 ===
Line 58: Line 50:
 
  # ln -s /etc/xdg/menus/applications-merged /etc/xdg/menus/kde-applications-merged
 
  # ln -s /etc/xdg/menus/applications-merged /etc/xdg/menus/kde-applications-merged
  
=== Mathematica 8.0.4.0 ===
+
=== Mathematica 8 ===
 +
 
 +
An issue with Mathematica 8 is a reproducible crash when performing WolframAlpha[] functions. By default, Mathematica is configured to detect the system's proxy settings when configuring how to connect to the internet to fetch data. A "bug" exists that will eventually crash Mathematica when the calling library is used. A workaround is to avoid this library call altogether by configuring Mathematica to "directly connect" to the internet. (''Edit > Preferences > Internet Connectivity > Proxy Settings''). This bug has been reported to Wolfram.
 +
 
 +
=== Mathematica 10 ===
 +
 
 +
[[Install]] {{AUR|mathematica}} (need historical version). The {{ic|Mathematica_10.XX.YY_LINUX.sh}} installation script is required; you will need to download this separately from Wolfram.com, your university, etc. You will also need an activation key.
 +
 
 +
=== Mathematica 11 ===
 +
 
 +
[[Install]] {{AUR|mathematica}}. Obtain {{ic|Mathematica_11.XX.YY_LINUX.sh}} from Wolfram Research, along with an activation key. Successful install may throw non-critical errors: xdg-icon-resource, mkdir, xdg-desktop-menu.
 +
 
 +
Mathematica 11 automatically creates a document folder 'Wolfram Mathematica' in [https://reference.wolfram.com/language/ref/$UserDocumentsDirectory.html $UserDocumentsDirectory], which is set by Mathematica according to [[XDG user directories]].
 +
 
 +
== Troubleshooting ==
 +
 
 +
=== Missing symbols ===
 +
 
 +
If you have font rendering problems where certain symbols do not show up (i.e. {{ic|/}} appears as a square), try uninstalling {{Pkg|font-mathematica}}.
 +
 
 +
Also, try [http://mathematica.stackexchange.com/questions/1158/invisible-conjugate-glyph-in-the-linux-frontend this] solution. It also states the issue is fixed with Mathematica version 9.
 +
 
 +
Try having applications use anti-aliasing.
 +
For KDE: ''System Settings > Application Appearance > Fonts > Use anti-aliasing (Enabled)''
 +
 
 +
=== HiDPI / Retina Screens ===
 +
 
 +
If you have a [[HiDPI]] screen, such as an Apple Retina display, and the main text in Mathematica looks small when you open it, this can be fixed:
 +
 
 +
* Go to ''Edit → Preferences''
 +
* From the ''Advanced'' tab, click ''Open Option Inspector''
 +
* In the tree on the right, go to ''Formatting Options → Font Options → Font Properties''
 +
* Change the value for ''"ScreenResolution"'' to double its current setting, e.g. 72 → 144. You can also use <code>xdpyinfo | grep resolution</code> to get a more precise number (which will need to be doubled).
  
On 64-bit machines, two known issues are present; but solutions are provided.
+
=== Conflicts with system libraries ===
The second issue is present on 64-bit installs: but not yet confirmed on a 32-bit arch setup.
 
  
The first issue assumes you are trying to use nVidia, CUDA and OpenCL libraries within Mathematica.
+
The Mathematica package includes a number of it's own libraries, located in <INSTALL_DIR>/SystemFiles/Libraries/Linux-x86-64. They may lead to some compatibility issues and fallback to the system versions of some of these libraries may be necessary.
  
The 64-bit archlinux nVidia and opencl driver packages install libraries in {{ic|/usr/lib}}, not in {{ic|/usr/lib64}} as does nVidia's binary installer. This is not a problem: {{ic|/usr/lib}} is the correct location for 64-bit libraries on a 64-bit arch system. However, a 64-bit install of Mathematica will assume the drivers are installed in {{ic|/usr/lib64}}; other distributions that Mathematica has been tested on have their drivers in that location. The easiest method to overcome this is to make a symlink from {{ic|/usr/lib64}} to {{ic|/usr/lib}}. Mathematica will be able to find nVidia, CUDA, and OpenCL libraries this way without further tweaking.
+
==== Symbol lookup error: /usr/lib/libfontconfig.so.1: undefined symbol: FT_Done_MM_Var ====
  
A second, separate but partial solution, is to set the following environment variables:
+
Force Mathematica to use the system version of the freetype library.
  
  export NVIDIA_DRIVER_LIBRARY_PATH=/usr/lib/libnvidia-tls.so
+
  # cd <INSTALL_DIR>/SystemFiles/Libraries/Linux-x86-64
 +
# mv libfreetype.so.6 libfreetype.so.6.old
  
export CUDA_LIBRARY_PATH=/usr/lib/libcuda.so
+
==== Mathematica/11.3/SystemFiles/Libraries/Linux-x86-64/libz.so.1: version `ZLIB_1.2.9' not found (required by /usr/lib/libpng16.so.16) ====
  
This second method, however, still will not permit Mathematica to find the OpenCL libraries in {{ic|/usr/local}} as Mathematica seems hardwired to find them in {{ic|/usr/lib64}}.
+
Force Mathematica to use the system version of the zlib library.
  
The second issue with Mathematica 8 in 64-bit archlinux (may also affect 32-bit environments; but not tested) is a reproducible crash when performing WolframAlpha[] functions. By default, Mathematica is configured to detect the system's proxy settings when configuring how to connect to the internet to fetch data. A "bug" exists that will eventually crash Mathematica when the calling library is used. A workaround is to avoid this library call altogether by configuring Mathematica to "directly connect" to the internet. (''Edit > Preferences > Internet Connectivity > Proxy Settings''). This bug has been reported to Wolfram.
+
# cd <INSTALL_DIR>/SystemFiles/Libraries/Linux-x86-64
 +
# mv libz.so.1 libz.so.1.old
  
=== Mathematica 9 ===
+
== See also ==
  
[[pacman|Install]] {{AUR|mathematica}} from the [[AUR]]. The ''Mathematica_9.0.1_LINUX.sh'' installation script is required.
+
* [http://www.wolfram.com/mathematica/ Official site]
 +
* [http://www.wolfram.com/support/ Official Support]

Latest revision as of 20:47, 11 June 2018

Mathematica is a commercial program used in scientific, engineering and mathematical fields. Here we explain how to install it.

Installation

Since Mathematica is a non-free application and upgrades may incur costs, this section lists instructions for different available versions.

Mathematica 6

Mounting iso

One way to mount the Mathematica .iso is to create a /media/iso mount directory and add the following line to the fstab:

/location/of/mathematica.iso /media/iso iso9660 exec,ro,user,noauto,loop=/dev/loop0   0 0

Now you can mount it with:

# mount /media/iso

Running the Installer

You can start the installer by navigating to:

/Unix/Installer

Run MathInstaller with:

sh ./MathInstaller
Note: If you do not place the "sh" in front, then you will get an error about a bad interpreter.

Fonts

Add the directories containing Type1 and BDF fonts to your FontPath.

Mathematica 7

Mathematica 7 is much easier to install.

tar xf Mathematica-7.0.1.tar.gz
cd Unix/Installer
./MathInstaller

Follow instructions.

For KDE users, the Mathematica icon may appear in the Lost & Found category. To solve this, execute the following as root:

# ln -s /etc/xdg/menus/applications-merged /etc/xdg/menus/kde-applications-merged

Mathematica 8

An issue with Mathematica 8 is a reproducible crash when performing WolframAlpha[] functions. By default, Mathematica is configured to detect the system's proxy settings when configuring how to connect to the internet to fetch data. A "bug" exists that will eventually crash Mathematica when the calling library is used. A workaround is to avoid this library call altogether by configuring Mathematica to "directly connect" to the internet. (Edit > Preferences > Internet Connectivity > Proxy Settings). This bug has been reported to Wolfram.

Mathematica 10

Install mathematicaAUR (need historical version). The Mathematica_10.XX.YY_LINUX.sh installation script is required; you will need to download this separately from Wolfram.com, your university, etc. You will also need an activation key.

Mathematica 11

Install mathematicaAUR. Obtain Mathematica_11.XX.YY_LINUX.sh from Wolfram Research, along with an activation key. Successful install may throw non-critical errors: xdg-icon-resource, mkdir, xdg-desktop-menu.

Mathematica 11 automatically creates a document folder 'Wolfram Mathematica' in $UserDocumentsDirectory, which is set by Mathematica according to XDG user directories.

Troubleshooting

Missing symbols

If you have font rendering problems where certain symbols do not show up (i.e. / appears as a square), try uninstalling font-mathematica.

Also, try this solution. It also states the issue is fixed with Mathematica version 9.

Try having applications use anti-aliasing. For KDE: System Settings > Application Appearance > Fonts > Use anti-aliasing (Enabled)

HiDPI / Retina Screens

If you have a HiDPI screen, such as an Apple Retina display, and the main text in Mathematica looks small when you open it, this can be fixed:

  • Go to Edit → Preferences
  • From the Advanced tab, click Open Option Inspector
  • In the tree on the right, go to Formatting Options → Font Options → Font Properties
  • Change the value for "ScreenResolution" to double its current setting, e.g. 72 → 144. You can also use xdpyinfo | grep resolution to get a more precise number (which will need to be doubled).

Conflicts with system libraries

The Mathematica package includes a number of it's own libraries, located in <INSTALL_DIR>/SystemFiles/Libraries/Linux-x86-64. They may lead to some compatibility issues and fallback to the system versions of some of these libraries may be necessary.

Symbol lookup error: /usr/lib/libfontconfig.so.1: undefined symbol: FT_Done_MM_Var

Force Mathematica to use the system version of the freetype library.

# cd <INSTALL_DIR>/SystemFiles/Libraries/Linux-x86-64
# mv libfreetype.so.6 libfreetype.so.6.old

Mathematica/11.3/SystemFiles/Libraries/Linux-x86-64/libz.so.1: version `ZLIB_1.2.9' not found (required by /usr/lib/libpng16.so.16)

Force Mathematica to use the system version of the zlib library.

# cd <INSTALL_DIR>/SystemFiles/Libraries/Linux-x86-64
# mv libz.so.1 libz.so.1.old

See also