Domanda

Come posso determinare se sto utilizzando una versione a 32 bit o 64 bit di matlab?

Ho alcuni file messicani precompilati che richiedono percorsi diversi a seconda del matlab a 32/64 bit.

È stato utile?

Soluzione 2

Seguendo i suggerimenti di ScottieT812 e dwj, inserisco la mia soluzione per guadagnare punti.

La funzione computer restituisce l'architettura su cui sto correndo. così:

switch computer
    case 'GLNX86'
        display('32-bit stuff')
    case 'GLNXA64'
        display('64-bit stuff')
    otherwise
        display('Not supported')
end

funziona per me

Altri suggerimenti

La domanda tra 32 e 64 bit è davvero un'aringa rossa. Se ho capito bene, vuoi determinare quale set di file MEX compilati sono necessari in modo da poter impostare il percorso in modo appropriato. Per questo, puoi usare la funzione mexext :

>> help mexext
 MEXEXT MEX filename extension for this platform, or all platforms. 
    EXT = MEXEXT returns the MEX-file name extension for the current
    platform. 

    ALLEXT = MEXEXT('all') returns a struct with fields 'arch' and 'ext' 
    describing MEX-file name extensions for all platforms.

    There is a script named mexext.bat on Windows and mexext.sh on UNIX
    that is intended to be used outside MATLAB in makefiles or scripts. Use
    that script instead of explicitly specifying the MEX-file extension in
    a makefile or script. The script is located in $MATLAB\bin.

    See also MEX, MEXDEBUG.

Funziona davvero? Quale versione di Matlab stai usando?

Per quanto ne so, le piattaforme a 64 bit finiscono con "64" non 86. Dal sito matlab http://www.mathworks.com/access/helpdesk/ help / techdoc / ref / computer.html Non penso che il computer restituirà mai GLNXA86 ma GLNXA64 invece.

Quindi questa domanda è specifica per GNU Linux versione a 32 bit o 64 bit.

Se stai testando una piattaforma a 64 bit, probabilmente dovrai testare gli ultimi 2 caratteri per trovare "64" cioè qualcosa come

if regexp(computer,'..,'match','64'),
   % setup 64bit options
else,
   % 32bit options
end
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top