Linux RedHat 5 Enterprise - R2013a - LoadLibrary Error

조회 수: 1 (최근 30일)
Nathan
Nathan 2014년 4월 10일
답변: Nathan 2014년 4월 23일
Anyone have any insight on how to troubleshoot this error? This is the only command in thunk.m: loadlibrary('librefprop','header.h','mfilename','rp_proto64')
>> thunk
Error using loadlibrary (line 419)
Building librefprop_thunk_glnxa64 failed. Compiler output is:
gcc -I"/g/software/matlab/r2013a/extern/include" -D_GNU_SOURCE -fexceptions -fPIC -fno-omit-frame-pointer -pthread -I"/scratch/nkampy/refprop" -I"/scratch/nkampy/refprop" "librefprop_thunk_glnxa64.c"
-o "librefprop_thunk_glnxa64.so" -Wl,-E -shared
In file included from librefprop_thunk_glnxa64.c:23:0:
header.h:1:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'setupdll_'
header.h:2:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'setrefdll_'
In file included from librefprop_thunk_glnxa64.c:23:0:
header.h:3:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'setmixdll_'
header.h:4:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'setmoddll_'
header.h:5:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'setpathdll_'
header.h:6:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'gerg04dll_'
header.h:7:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'setktvdll_'
header.h:8:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'getktvdll_'
header.h:9:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'getfijdll_'
header.h:10:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'preosdll_'
header.h:11:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'setagadll_'
header.h:12:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'unsetagadll_'
header.h:13:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'namedll_'
header.h:14:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'pureflddll_'
header.h:15:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'setncdll_'
header.h:16:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'rpversion_'
header.h:18:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'critpdll_'
header.h:20:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'thermdll_'
header.h:21:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'therm2dll_'
In file included from librefprop_thunk_glnxa64.c:23:0:
header.h:22:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'therm3dll_'
header.h:23:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'therm0dll_'
header.h:24:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'pressdll_'
header.h:25:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'enthaldll_'
header.h:26:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'entrodll_'
header.h:27:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'cvcpdll_'
header.h:28:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'gibbsdll_'
header.h:29:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'agdll_'
header.h:30:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'residualdll_'
header.h:31:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'cp0dll_'
header.h:33:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'dpdddll_'
header.h:34:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'dpdd2dll_'
header.h:35:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'dpdtdll_'
header.h:36:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'dddpdll_'
header.h:37:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'dddtdll_'
header.h:38:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'dhd1dll_'
header.h:39:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'virbdll_'
header.h:40:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'vircdll_'
header.h:41:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'virbadll_'
header.h:42:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'vircadll_'
header.h:
Here are the first few lines of header.h:
void __cdecl setupdll_ ( long *, char [ 10000 ], char [ 255 ], char [ 3 ], long *, char [ 255 ], long , long , long , long );
void __cdecl setrefdll_ ( char [ 3 ], long *, double *, double *, double *, double *, double *, long *, char [ 255 ], long , long );
void __cdecl setmixdll_ ( char [ 255 ], char [ 255 ], char [ 3 ], long *, char [ 10000 ], double *, long *, char [ 255 ], long , long , long , long , long );
void __cdecl setmoddll_ ( long *, char [ 3 ], char [ 3 ], char [ 60 ], long *, char [ 255 ], long , long , long , long );
void __cdecl setpathdll_ ( char [ 255 ], long );

채택된 답변

Nathan
Nathan 2014년 4월 23일
The correction was to remove the __cdecl stack command all together. It turns out that linux gcc normally adds this in automatically for 64 bit systems making it redundant. (the best I could understand)

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Introduction to Installation and Licensing에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by