本文主要是介绍compiler錯誤訊息與解決方式(MATLAB),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
compiler錯誤訊息與解決方式以下為MathWorks所提出的compiler錯誤訊息與解決方式
整理出來請大家參考一下
[color=red]Error: An error occurred while shelling out to mex/mbuild (error code = errorno). Unable to build executable (specify the -v option for more information).[/color] The Compiler reports this error if mbuild or mex generates an error.
[color=red]Error: An error occurred writing to file "filename": reason. [/color] The file could not be written. The reason is provided by the operating system. For example, you may not have sufficient disk space available to write the file.
[color=red]Error: Cannot recompile M-file "filename" because it is already in library "libraryname".[/color] A procedure already exists in a library that has the same name as the M-file that is being compiled. For example:
mcc -x sin.m % Incorrect
[color=red]Error: Cannot write file "filename" because MCC has already created a file with that name, or a file with that name was specified as a command line argument. [/color] The Compiler has been instructed to generate two files with the same name. For example:
mcc -W lib:liba liba -t % Incorrect
[color=red]Error: Could not check out a Compiler license. [/color] No additional Compiler licenses are available for your workgroup.
[color=red]Error: Could not find license file "filename".[/color] (Windows only) The license.dat file could not be found in <MATLAB>/bin.
[color=red]Error: Could not run mbuild. The MATLAB C/C++ Math Library must be installed in order to build stand-alone applications.[/color] Install the MATLAB C/C++ Math Library.
[color=red]Error: File: "filename" not found.[/color] A specified file could not be found on the path. Verify that the file exists and that the path includes the file's location. You can use the -I option to add a directory to the search path
[color=red]Error: File: "filename" is a script M-file which cannot be compiled with the current Compiler. [/color] The MATLAB Compiler cannot compile script M-files. To learn how to convert script M-files to function M-files, see Converting Script M-Files to Function M-Files.
[color=red]Error: File: filename Line: # Column: # != is not a MATLAB operator. Use ~= instead. [/color] Use the MATLAB relational operator ~= (not equal).
[color=red]Error: File: filename Line: # Column: # () indexing must appear last in an index expression. [/color] If you use ordinary array indexing () to index into an expression, it must be last in the index expression. For example, you can use X(1).value and X{2}(1), but you cannot use X.value(1) or X(1){2}.
[color=red]Error: File: filename Line: # Column: # A CONTINUE may only be used within a FOR or WHILE loop.[/color] Use Continue to pass control to the next iteration of a for or while loop.
[color=red]Error: File: filename Line: # Column: # A function declaration cannot appear within a script M-file. [/color] There is a function declaration in the file to be compiled, but it is not at the beginning of the file. Scripts cannot have any function declarations; function M-files must start with a function.
[color=red]Error: File: filename Line: # Column: # Assignment statements cannot produce a result.[/color] An assignment statement cannot be used in a place where an expression, but not a statement, is expected. In particular, this message often identifies errors where an assignment was used, but an equality test was intended. For example:
if x == y, z = w; end % Correct
if x = y, z = w; end % Incorrect
[color=red]Error: File: filename Line: # Column: # A variable cannot be made storageclass1 after being used as a storageclass2.[/color] You cannot change a variable's storage class (global/local/persistent). Even though MATLAB allows this type of change in scope, the Compiler does not.
[color=red]Error: File: filename Line: # Column: # An array for multiple LHS assignment must be a vector.[/color] If the left-hand side of a statement is a multiple assignment, the list of left-hand side variables must be a vector. For example:
[p1, p2, p3] = myfunc(a)% Correct
[p1; p2; p3] = myfunc(a)% Incorrect
[color=red]Error: File: filename Line: # Column: # An array for multiple LHS assignment cannot be empty.[/color] If the left-hand side of a statement is a multiple assignment, the list of left-hand side variables cannot be empty. For example:
[p1, p2, p3] = myfunc(a)% Correct
[ ] = myfunc(a)% Incorrect
[color=red]Error: File: filename Line: # Column: # An array for multiple LHS assignment cannot contain token.[/color] If the left-hand side of a statement is a multiple assignment, the vector cannot contain this token. For example, you cannot assign to constants.
[p1] = myfunc(a)% Correct
[3] = myfunc(a)% Incorrect
[color=red]Error: File: filename Line: # Column: # Expected a variable, function, or constant, found "string".[/color] There is a syntax error in the specified line. See the online MATLAB Function Reference pages.
[color=red]Error: File: filename Line: # Column: # Expected one of , ; % or EOL, got "string".[/color] There is a syntax error in the specified line. See the online MATLAB Function Reference pages.
[color=red]Error: File: filename Line: # Column: # Functions cannot be indexed using {} or . indexing.[/color] You cannot use the cell array constructor, {}, or the structure field access operator, ., to index into a function.
[color=red]Error: File: filename Line: # Column: # Indexing expressions cannot return multiple results.[/color] There is an assignment in which the left-hand side takes multiple values, but the right-hand side is not a function call but rather a structure access. For example:
[x, y] = f(z) % Correct
[x, y] = f.z % Incorrect
[color=red]Error: File: filename Line: # Column: # Invalid multiple left-hand-side assignment.[/color] For example, you try to assign to constants
[] = sin(1);% Incorrect
[color=red]Error: File: filename Line: # Column: # MATLAB assignment cannot be nested. [/color] You cannot use a syntax such as x = y = 2. Use y = 2, x = y instead.
[color=red]Error: File: filename Line: # Column: # Missing operator, comma, or semicolon. [/color] There is a syntax error in the file. Syntactically, an operator, a comma, or a semicolon is expected, but is missing. For example:
if x == y, z = w; end % Correct
if x == y, z = w end % Incorrect
[color=red]Error: File: filename Line: # Column: # Missing variable or function.[/color] An illegal name was used for a variable or function. For example:
x % Correct
_x % Incorrect
[color=red]Error: File: filename Line: # Column: # Only functions can return multiple values.[/color] In this example, foo must be a function, it cannot be a variable.
[a, b] = foo;
[color=red]Error: File: filename Line: # Column: # "string1" expected, "string2" found. [/color] There is a syntax error in the specified line. See the online MATLAB Function Reference pages accessible from the Help browser.
[color=red]Error: File: filename Line: # Column: # The end operator can only be used within an array index expression. [/color] You can use the end operator in an array index expression such as sum(A( :, end)). You cannot use the end operator outside of such an expression, for example: y = 1 + end.
[color=red]Error: File: filename Line: # Column: # The name "parametername" occurs twice as an input parameter.[/color] The variable names specified on the function declaration line must be unique. For example:
function foo(bar1, bar2)% Correct
function foo(bar, bar)% Incorrect
[color=red]Error: File: filename Line: # Column: # The name "parametername" occurs twice as an output parameter.[/color] The variable names specified on the function declaration line must be unique. For example:
function [bar1, bar2] = foo% Correct
function [bar, bar] = foo% Incorrect
[color=red]Error: File: filename Line: # Column: # The "operatorname" operator may only produce a single output.[/color] The primitive operator produces only a single output. For example:
x = 1:10; % Correct
[x, y] = 1:10; % Incorrect
[color=red]Error: File: filename Line: # Column: # The PERSISTENT declaration must precede any use of the variable variablename.[/color] In the text of the function, there is a reference to the variable before the persistent declaration.
[color=red]Error: File: filename Line: # Column: # The single colon operator ( : ) can only be used within an array index expression.[/color] You can only use the : operator by itself as an array index. For example: A( : ) = 5; is okay, but y = :; is not.
[color=red]Error: File: filename Line: # Column: # The variable variablename was mentioned more than once as an input. [/color] The argument list has a repeated variable. For example:
function y = myfun(x, x) % Incorrect
[color=red]Error: File: filename Line: # Column: # The variable variablename was mentioned more than once as an output.[/color] The return value vector has a repeated variable. For example:
function [x, x] = myfun(y) % Incorrect
[color=red]Error: File: filename Line: # Column: # This statement is incomplete. Variable arguments cannot be made global or persistent.[/color] The variables varargin and varargout are not like other variables. They cannot be declared either global or persistent. For example:
global varargin % Incorrect
[color=red]Error: File: filename Line: # Column: # Variable argument (varargin) must be last in input argument list.[/color] The function call must specify the required arguments first followed by varargin. For example:
function [out1, out2] = example1(a, b, varargin)% Correct
function [out1, out2] = example1(a, varargin, b)% Incorrect
[color=red]Error: File: filename Line: # Column: # Variable argument (varargout) must be last in output argument list.[/color] The function call must specify the required arguments first followed by varargout. For example:
function [i, j, varargout]= ex2(x1, y1, x2, y2, val)% Correct
function [i, varargout, j]= ex2(x1, y1, x2, y2, val)% Incorrect
[color=red]Error: File: filename Line: # Column: # variablename has been declared both as GLOBAL and PERSISTENT.[/color] Declare variables as either global or persistent.
[color=red]Error: Found illegal whitespace character in command line option: "string". The strings on the left and right side of the space should be separate arguments to MCC.[/color] For example:
mcc('-A', 'none')% Correct
mcc('-A none')% Incorrect
[color=red]Error: Improper usage of option -optionname. Type "mcc -?" for usage information.[/color] You have incorrectly used a Compiler option. For more information about Compiler options, see MATLAB Compiler Option Flags or type mcc -? at the command prompt.
[color=red]Error: "languagename" is not a known language.[/color] The dialect option was given a language argument for which there is no support yet. For example:
mcc -m -D japanese sample.m % Correct
mcc -m -D german sample.m % Incorrect
[color=red]Error: libraryname library not found.[/color] MATLAB has been installed incorrectly.
[color=red]Error: MEX-File "mexfilename" cannot be compiled into P-Code. [/color] Only M-files can be compiled into P-code; MEX-files cannot be compiled into P-code.
[color=red]Error: No source files were specified (-? for help).[/color] You must provide the Compiler with the name of the source file(s) to compile.
[color=red]Error: On UNIX, the name of an MLIB-file must begin with the letters "lib". 'filename' does not adhere to this rule.[/color] The mlib file specified on the command line does not start with the letters "lib" and the file being compiled uses procedures in that library.
[color=red]Error: "optionname" is not a valid -option option argument.[/color] You must use an argument that corresponds to the option. For example:
mcc -L Cpp ...% Correct
mcc -L COBOL ...% Incorrect
[color=red]Error: Out of memory.[/color] Typically, this message occurs because the Compiler requests a larger segment of memory from the operating system than is currently available. Adding additional memory to your system could alleviate this problem.
[color=red]Error: Previous warning treated as error. [/color] When you use the -w error option, this error displays immediately after a warning message.
[color=red]Error: The argument after the -option option must contain a colon. [/color] The format for this argument requires a colon. For more information, see MATLAB Compiler Option Flags or type mcc -? at the command prompt.
[color=red]Error: The environment variable MATLAB must be set to the MATLAB root directory. [/color] On UNIX, the MATLAB and LM_LICENSE_FILE variables must be set. The mcc shell script does this automatically when it is called the first time.
[color=red]Error: The file filename cannot be written.[/color] When generating an mlib file, the Compiler cannot write out the mlib file.
[color=red]Error: The license manager failed to initialize (error code is errornumber).[/color] You do not have a valid Compiler license or no additional Compiler licenses are available.
[color=red]Error: The option -option is invalid in modename mode (specify -? for help). [/color] The specified option is not available.
[color=red]Error: The option -option must be immediately followed by whitespace (e.g. "proper_example_usage").[/color] These options require additional information, so they cannot be combined.
-A, -B, -d, -f, -F, -I, -L, -M, -o, -T, -u, -W, -x, -y, -Y, -z
For example, you can use mcc -vc, but you cannot use mcc -Ac annotation:all.
Error: The options specified will not generate any output files.[color=red]
Please use one of the following options to generate an executable output file:
-x (generates a MEX-file executable using C)
-m (generates a stand-alone executable using C)
-p (generates a stand-alone executable using C++)
-S (generates a Simulink MEX S-function using C)
-B sgl (generates a stand-alone graphics library executable using C (requires the SGL))
-B sglcpp (generates a stand-alone graphics library executable using C++ (requires the SGL))
-B pcode (generates a MATLAB P-code file)
Or type mcc -? for more usage information.[/color] Use one of these options or another option that generates an output file(s). See MATLAB Compiler Option Flags or type mcc -? at the command prompt for more information.
[color=red]Error: The specified file "filename" cannot be read.[/color] There is a problem with your specified file. For example, the file is not readable because there is no read permission.
[color=red]Error: The -option option cannot be combined with other options. [/color] The -V2.0 option must appear separate from other options on the command line. For example:
mcc -V2.0 -L Cpp ...% Correct
mcc -V2.0L Cpp ...% Incorrect
[color=red]Error: The -optionname option requires an argument [/color] (e.g. "proper_example_usage"). You have incorrectly used a Compiler option. For more information about Compiler options, see MATLAB Compiler Option Flags or type mcc -? at the command prompt.
[color=red]Error: This version of MCC does not support the creation of C++ MEX code. [/color] You cannot create C++ MEX functions with the current Compiler.
[color=red]Error: Unable to open file "filename":<string>. [/color] There is a problem with your specified file. For example, there is no write permission to the output directory, or the disk is full.
[color=red]Error: Unable to set license linger interval (error code is errornumber). [/color] A license manager failure has occurred. Contact Technical Support at The MathWorks with the full text of the error message.
[color=red]Error: Uninterpretable number of inputs set on command line "commandline".[/color] When generating a Simulink S-function, the inputs specified on the command line was not a number. For example:
mcc -S -u 2 sample.m % Correct
mcc -S -u a sample.m % Incorrect
[color=red]Error: Uninterpretable number of outputs set on command line "commandline".[/color] When generating a Simulink S-function, the outputs specified on the command line was not a number. For example:
mcc -S -y 2 sample.m % Correct
mcc -S -y a sample.m % Incorrect
[color=red]Error: Uninterpretable width set on command line "commandline".[/color] The argument to the page width option was not interpretable as a number.
[color=red]Error: Unknown annotation option: optionname.[/color] An invalid string was specified after the -A option. For a complete list of the valid annotation options, see MATLAB Compiler Option Flags or type mcc -? at the command prompt.
[color=red]Error: Unknown typesetting option: optionname.[/color] The valid typesetting options available with -F are expression-indent:n, list, page-width, and statement-indent:n.
[color=red]Error: Unknown warning enable/disable string: warningstring.[/color] -w enable:, -w disable:, and -w error: require you to use one of the warning string identifiers listed in the Warning Messages.
[color=red]Error: Unrecognized option: -option.[/color] The option is not one of the valid options for this version of the Compiler. See MATLAB Compiler Option Flags for a complete list of valid options for MATLAB Compiler 3.0 or type mcc -? at the command prompt.
[color=red]Error: Use "-V2.0" to specify desired version.[/color] You specified -V without a version number. You must use -V2.0 if you specify a version number.
[color=red]Error: versionnumber is not a valid version number. Use "-V2.0".[/color] If you specify a Compiler version number, it must be -V2.0. The default is -V2.0.
这篇关于compiler錯誤訊息與解決方式(MATLAB)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!