JanKoWeb: Odborný SW - Matlab: error by compiling mex on Linux
"Nemusí pršet, stačí když kape..."
JanKoWeb - návody, postřehy a rady ze světa softwaru pro každého.
Recenze knih a humorná tvorba pro chvíle oddechu...
Mezinárodní den biologické rozmanitosti.

Do východu slunce 6 hodin a 14 minut (vyjde 08:09, zapadne 16:00).

"Nezbytným krokem k tomu, abyste od života získali věci, po kterých toužíte, je rozhodnout se, co vlastně chcete."

B. Stein
Galerie nemohla být načtena.
Jméno:
Číselně: čtyři a pět je
Když se něco bojíte provést, je to jasná známka, že právě tohle teď musíte udělat.
Při každém obnovení stránky se zde vypíše zpráva skriptu.

Skript je zdrojový kód interpretovaného programu.

Pohání celý tento web a rád komunikuje s návštěvníky.-)
RSS RSS zdroj článků a novinek

Matlab: error by compiling mex on Linux

Při snaze o kompilaci mex souboru jsem dostal hlášku:

Warning: You are using gcc version "4.7.3".  The version
         currently supported with MEX is "4.4.x".

(1) Packages to install (synaptic or apt-get)

sudo apt-get install gcc-4.4
sudo apt-get install g++-4.4

V MATLABu:

mex -setup

a zvolit 1.

sudo gedit ~/.matlab/R2013a/mexopts.sh

Nahradit:

CC='gcc-4.4'
CXX='g++-4.4'

Pokud obdržíme chybu typu:
error: expected expression before ‘/’ token
nahradit ještě:

#CFLAGS='-ansi -D_GNU_SOURCE'
CFLAGS='-std=c99 -D_GNU_SOURCE'

#CXXFLAGS='-ansi -D_GNU_SOURCE'
CXXFLAGS='-std=c99 -D_GNU_SOURCE'

Uložit, restartovat Matlab. Funguje na Linux Mint 15, Matlab 2013a.

Známé chyby

Když jsem podle níže uvedeného návodu postupoval poprvé, dostal jsem jen hlášku:

/usr/bin/ld: nystatin_batch_model_v7.o: relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC
nystatin_batch_model_v7.o: could not read symbols: Bad value
collect2: ld returned 1 exit status

Po dlouhém bádání, co se děje, jsem zjistil, že jsem se při přepisování překlepl a místo "CXXFLAGS" napsal "CFLAGS".

Reference: http://blogs.bu.edu/mhirsch/2013/07/matlab-r2013a-mex-on-ubuntu-13-04-64-bit/.

Poznámka: http://stackoverflow.com/questions/17000903/mex-compiling-on-64-bit-linux-usr-bin-ld-cannot-find-lstdc mi nepomohlo.

Rubrika Odborný SW | Tagy Mex, Matlab | Čt 12.06.2014 | 876x

Náhodné články

© 2008-2025 JK, kontakt, právní upozornění
Powered by Janko's RS| XHTML, CSS, RSS, analýza kódu, SEO servis, dostupnost, hosting, líbí se Vám tu?
Požadavek: 0.13139 s, generování: 0.06641 s, paměť: 1.24 MB, sql dotazů: 8, CPU: 8.91

.