When I am building the SFunction I am building with Microsoft Visual C++ 6.0 I am getting S function builder LINK : fatal error LNK1181: cannot open input file "kernel32.lib". When I checked the path C:\Program Files\Microsoft Visual Studio\VC98\Lib I found "kernel32.lib" Can any one suggest me how to resolve this error.Any additional setting I have to do?
Please follow the below steps and you can resolve the issue.
When you run >> mex -setup command on your command window, file mexopts.bat placed in the path "C:\Documents and Settings\users\Application Data\MathWorks\MATLAB\R2011a" gets updated.
If you open this file with wordpad, you can observe the below instruction under the section "General Parameters" set VSINSTALLDIR=C:\Program Files\Microsoft Visual Studio\VC98\
Just modify the instruction as shown below and save the file
set VSINSTALLDIR=C:\Program Files\Microsoft Visual Studio\
Now try to build the SFunction. The error will be resolved. This is a temporary solution. Next time you run the >> mex -setup command, the error reappears :)
Now you can repeat the above steps once again to get rid of the issue
I'm having the same issue running R2013b on Windows 7 with the Windows 7 SDK.
The line in mexopts.bat is: set VSINSTALLDIR=C:\Program Files (x86)\Microsoft Visual Studio 10.0
There doesn't seem to be anything obvious to change it to. I've looked around online and haven't found anything useful. Any suggestions?
If you're having this issue LNK1181: cannot open input file "kernel32.lib" with mex with any other lib, you might need to clean up your current configuration file: C:\Documents and Settings\users\Application Data\MathWorks\MATLAB\R2013a (i.e. create a backup and then delete this file) and re-execute:
in Matlab to get a clean configuration.
If resetting your config and selecting the other compilers available on your computer, you might also consider upgrading to a newer Visual Studio also or Windows SDK (also including a compiler), there are incompatibilities with older versions and reexecuting this mex -setup to select your fresh compiler.