Kurokami
New Member
Hey
Long-time user of the software, first-time plugin developer.
I am not sure if there is a better tutorial out there for C++ plugin Dev for OBS, but I've been following this tutorial.
I was able to complete setting up OBS on my system to compile ( Using Visual Studio 2013 Ultimate) but I ran into a snag with hooking up directories.
I created a separate C++ project, empty, for my plugin. I followed the changes to the configuration, but admittedly I'm new to these types of modifications. Particularly, I'm unsure of what I need to input in locations such as Include Directories.
The tutorial says to put:
$(WindowsSDK80Path)Include\um;$(WindowsSDK80Path)Include\shared;$(DXSDK_DIR)Include;$(OBSSourcePath);$(IncludePath)
After I finish modifying all the values the tutorial says to, I attempt to compile - just to make sure it is running properly - and I get the following Error List:
Could someone point me in the right direction? It looks like I messed up something in the linker, but It also looks like I may have made a mistake with the OutputFile property val.
Here is output from the attempted build.
Build started 8/25/2015 1:24:31 PM.
1>Project "C:\Users\K.Field\documents\visual studio 2013\Projects\TimerPlugin\TimerPlugin\TimerPlugin.vcxproj" on node 2 (Build target(s)).
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppBuild.targets(1193,5): warning MSB8012: TargetPath(C:\Users\K.Field\documents\visual studio 2013\Projects\TimerPlugin\Debug\TimerPlugin.dll) does not match the Linker's OutputFile property value (C:\Users\K.Field\documents\visual studio 2013\Projects\TimerPlugin\TimerPlugin\rundir\plugins\TimerPlugin.dll). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
1>Link:
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\link.exe /ERRORREPORT:PROMPT /OUT:"rundir/plugins/TimerPlugin.dll" /INCREMENTAL /NOLOGO /LIBPATH:OBSApi/Debug OBSApi.lib strmiids.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"C:\Users\K.Field\documents\visual studio 2013\Projects\TimerPlugin\Debug\TimerPlugin.pdb" /SUBSYSTEM:WINDOWS /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"C:\Users\K.Field\documents\visual studio 2013\Projects\TimerPlugin\Debug\TimerPlugin.lib" /MACHINE:X86 /DLL Debug\main.obj
1>LINK : fatal error LNK1104: cannot open file 'OBSApi.lib'
1>Done Building Project "C:\Users\K.Field\documents\visual studio 2013\Projects\TimerPlugin\TimerPlugin\TimerPlugin.vcxproj" (Build target(s)) -- FAILED.
Build FAILED.
Time Elapsed 00:00:00.41
Long-time user of the software, first-time plugin developer.
I am not sure if there is a better tutorial out there for C++ plugin Dev for OBS, but I've been following this tutorial.
I was able to complete setting up OBS on my system to compile ( Using Visual Studio 2013 Ultimate) but I ran into a snag with hooking up directories.
I created a separate C++ project, empty, for my plugin. I followed the changes to the configuration, but admittedly I'm new to these types of modifications. Particularly, I'm unsure of what I need to input in locations such as Include Directories.
The tutorial says to put:
$(WindowsSDK80Path)Include\um;$(WindowsSDK80Path)Include\shared;$(DXSDK_DIR)Include;$(OBSSourcePath);$(IncludePath)
After I finish modifying all the values the tutorial says to, I attempt to compile - just to make sure it is running properly - and I get the following Error List:

Could someone point me in the right direction? It looks like I messed up something in the linker, but It also looks like I may have made a mistake with the OutputFile property val.
Here is output from the attempted build.
Build started 8/25/2015 1:24:31 PM.
1>Project "C:\Users\K.Field\documents\visual studio 2013\Projects\TimerPlugin\TimerPlugin\TimerPlugin.vcxproj" on node 2 (Build target(s)).
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppBuild.targets(1193,5): warning MSB8012: TargetPath(C:\Users\K.Field\documents\visual studio 2013\Projects\TimerPlugin\Debug\TimerPlugin.dll) does not match the Linker's OutputFile property value (C:\Users\K.Field\documents\visual studio 2013\Projects\TimerPlugin\TimerPlugin\rundir\plugins\TimerPlugin.dll). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
1>Link:
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\link.exe /ERRORREPORT:PROMPT /OUT:"rundir/plugins/TimerPlugin.dll" /INCREMENTAL /NOLOGO /LIBPATH:OBSApi/Debug OBSApi.lib strmiids.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"C:\Users\K.Field\documents\visual studio 2013\Projects\TimerPlugin\Debug\TimerPlugin.pdb" /SUBSYSTEM:WINDOWS /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"C:\Users\K.Field\documents\visual studio 2013\Projects\TimerPlugin\Debug\TimerPlugin.lib" /MACHINE:X86 /DLL Debug\main.obj
1>LINK : fatal error LNK1104: cannot open file 'OBSApi.lib'
1>Done Building Project "C:\Users\K.Field\documents\visual studio 2013\Projects\TimerPlugin\TimerPlugin\TimerPlugin.vcxproj" (Build target(s)) -- FAILED.
Build FAILED.
Time Elapsed 00:00:00.41