apik/mr

Issues compiling Mathematica interface on Fedora 25

vsht opened this issue · 2 comments

vsht commented

On Fedora 25 there seem to be issues compiling the Mathematica interface to work with version 11. The problem is that in the makefile we have

LDMATH =  -lML64i4 -lstdc++ -lpthread -lm -lrt -ldl -luuid

which leads to the following output

http://pastebin.com/GsABy6BG

Notice that before I used

./configure --enable-math10 --with-mcc-path=/usr/local/Wolfram/Mathematica/11.0/SystemFiles/Links/MathLink/DeveloperKit/Linux-x86-64/CompilerAdditions

The workaround is to replace the LDMATH line with

LDMATH =  -lML64i4 -lstdc++ -lpthread -lm -lrt -ldl -l:libuuid.so.1

and then everything compiles just fine

http://pastebin.com/ZRTFD7XX

and runs without any problems

math < mr.m
Mathematica 11.0.1 for Linux x86 (64-bit)
Copyright 1988-2016 Wolfram Research, Inc.

In[1]:= MR - Matching and Running Mathmatica interface
To see available functions use Names["mr`*"]
Andrey Pikelner <pikelner@theor.jinr.ru>

In[2]:= In[2]:= 
                                                                         2
Out[2]= 1 + 185.3545315192623202 aEW[173] - 19207.76644304067531 aEW[173]  + 
 
>    563.1886634134386928 aEW[173] aQCD[173]

In[3]:=

I was just wondering if one could include some sort of workaround to the autoconf script so that everything would work RedHat/Fedora out of the box?

My Fedora is a pretty much standard version, no weird changes in libraries or pathes

#uname -a
Linux elektron 4.9.13-201.fc25.x86_64 #1 SMP Tue Mar 7 23:47:11 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

Cheers,
Vladyslav

apik commented

Is it true that you have two different versions of libUUID installed and MathLink libraries libML64i4 need to be linked exactly with libuuid.so.1?

I tried to compile for Mathematica 11 on Ubuntu 12.04 with standard libuuid and everything compiles well

vsht commented

It appears that the problem is resolved after installing uuid-devel, i.e. now everything compiles out-of-the-box. I find it a bit surprising that I could compile without, because usually one cannot simply include libraries without having installed the corresponding *-devel package.

Anyhow, the problem was clearly on my side, so I close the issue here.