include files

11 次查看(过去 30 天)
Natalia
Natalia 2011-4-2
Hello! Help me please.I want to use Ogre3D in mex (for s-function). http://www.ogre3d.org/ But my .cpp file contains OGRE's include files which Matlab doesn't see. In Visual Studio it can be adjusted in properties of solution. http://s001.radikal.ru/i196/1104/e6/e04d2a5746f8.jpg Is it possible to make so in Matlab? I will be grateful for any answer.Thank you.

采纳的回答

Jarrod Rivituso
Jarrod Rivituso 2011-4-2
When you use the mex function, you should be able to use the -I flag to specify the include directories.
Is that what you are looking for?
  5 个评论
Jarrod Rivituso
Jarrod Rivituso 2011-4-2
Hi Natalia,
You need to put both the include path and the source files. So, for instance...
mex -IC:\OgreSDK\samples\include mymexfile.c
Walter Roberson
Walter Roberson 2011-4-4
getenv() requires the name of an environment variable as its input, such as
getenv('OGRE_HOME')
to verify that OGRE_HOME is set.

请先登录,再进行评论。

更多回答(2 个)

Natalia
Natalia 2011-4-2
I should do this operation for each folder? Or it is enough to add a folder which includes all the others?
In Visual Studio it looks:
Code
+ Configuration Properties
General
* Output Directory: $(OGRE_HOME)\bin\$(ConfigurationName)
* Intermediate Directory: $(OGRE_HOME)\obj\$(ConfigurationName)
Debugging
* Command: $(OGRE_HOME)\bin\$(ConfigurationName)\$(TargetFileName)
* Working Directory: $(OGRE_HOME)\bin\$(ConfigurationName)
C++
General
* Additional Include Directories: ..\include;$(OGRE_HOME)\include;$(OGRE_HOME)\samples\include
Linker
General
* Additional Library Directories: "$(OGRE_HOME)\lib"
Input
* Additional Dependencies: OgreMain_d.lib OIS_d.lib
  1 个评论
Jarrod Rivituso
Jarrod Rivituso 2011-4-2
Yes, you will need to add each include path and the library directories. Use the -l and -L flags to add library paths (-l) and actual library files (-L).
Again, the documentation has a table of all supported compiler switches:
http://www.mathworks.com/help/techdoc/ref/mex.html

请先登录,再进行评论。


Natalia
Natalia 2011-4-2
mex -IC:\OgreSDK\samples\include ExampleApplication.h
C:\PROGRA~1\MATLAB\R2010B\BIN\MEX.PL: Error: 'ExampleApplication.h' not found.
??? Error using ==> mex at 208
Unable to complete successfully.
I do not understand why there is an error...
And if I have 1000 include files.... I should specify all of them? By the way, simstruc.h I shouldn't specify a file, is it mean there are default folders in matlab?
  3 个评论
Natalia
Natalia 2011-4-5
Thank you! Your answers as always the most exact and clear for me :)
Kaustubha Govind
Kaustubha Govind 2011-4-5
Glad to be of help. :)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Write C Functions Callable from MATLAB (MEX Files) 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by