compiler錯誤訊息與解決方式(MATLAB)

2023-12-06 00:18

本文主要是介绍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)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/459693

相关文章

shell脚本批量导出redis key-value方式

《shell脚本批量导出rediskey-value方式》为避免keys全量扫描导致Redis卡顿,可先通过dump.rdb备份文件在本地恢复,再使用scan命令渐进导出key-value,通过CN... 目录1 背景2 详细步骤2.1 本地docker启动Redis2.2 shell批量导出脚本3 附录总

Oracle查询表结构建表语句索引等方式

《Oracle查询表结构建表语句索引等方式》使用USER_TAB_COLUMNS查询表结构可避免系统隐藏字段(如LISTUSER的CLOB与VARCHAR2同名字段),这些字段可能为dbms_lob.... 目录oracle查询表结构建表语句索引1.用“USER_TAB_COLUMNS”查询表结构2.用“a

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结

Debian系和Redhat系防火墙配置方式

《Debian系和Redhat系防火墙配置方式》文章对比了Debian系UFW和Redhat系Firewalld防火墙的安装、启用禁用、端口管理、规则查看及注意事项,强调SSH端口需开放、规则持久化,... 目录Debian系UFW防火墙1. 安装2. 启用与禁用3. 基本命令4. 注意事项5. 示例配置R

最新Spring Security的基于内存用户认证方式

《最新SpringSecurity的基于内存用户认证方式》本文讲解SpringSecurity内存认证配置,适用于开发、测试等场景,通过代码创建用户及权限管理,支持密码加密,虽简单但不持久化,生产环... 目录1. 前言2. 因何选择内存认证?3. 基础配置实战❶ 创建Spring Security配置文件

Python获取浏览器Cookies的四种方式小结

《Python获取浏览器Cookies的四种方式小结》在进行Web应用程序测试和开发时,获取浏览器Cookies是一项重要任务,本文我们介绍四种用Python获取浏览器Cookies的方式,具有一定的... 目录什么是 Cookie?1.使用Selenium库获取浏览器Cookies2.使用浏览器开发者工具

Java获取当前时间String类型和Date类型方式

《Java获取当前时间String类型和Date类型方式》:本文主要介绍Java获取当前时间String类型和Date类型方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录Java获取当前时间String和Date类型String类型和Date类型输出结果总结Java获取

C#监听txt文档获取新数据方式

《C#监听txt文档获取新数据方式》文章介绍通过监听txt文件获取最新数据,并实现开机自启动、禁用窗口关闭按钮、阻止Ctrl+C中断及防止程序退出等功能,代码整合于主函数中,供参考学习... 目录前言一、监听txt文档增加数据二、其他功能1. 设置开机自启动2. 禁止控制台窗口关闭按钮3. 阻止Ctrl +

linux批量替换文件内容的实现方式

《linux批量替换文件内容的实现方式》本文总结了Linux中批量替换文件内容的几种方法,包括使用sed替换文件夹内所有文件、单个文件内容及逐行字符串,强调使用反引号和绝对路径,并分享个人经验供参考... 目录一、linux批量替换文件内容 二、替换文件内所有匹配的字符串 三、替换每一行中全部str1为st