Create GStreamer plugin in VisualStudio 2015
David Ing
ding at panopto.com
Wed Nov 28 16:16:39 UTC 2018
Also I had problems including the Windows Driver Kit (which I didn't need
for my plugin). If you need to include it then good luck (I never figured
it out).
On Wed, Nov 28, 2018 at 8:08 AM David Ing <ding at panopto.com> wrote:
> I did some preliminary plugin development on VS 2015, so I can probably
> help you out with that.
>
>
> After VS 2010 the MSVC Runtime was fractured into a bunch of separate
> libs, so things have changed which prevents the VS 2010 property sheets
> from working properly. If you are using VS 2015 then you want to avoid all
> of the property sheets in the installation folder ...
>
> %GSTREAMER_1_0_ROOT_X86_64%\share\vs\2010\msvc
>
> ... where my environment variables are:
>
> GSTREAMER_1_0_ROOT_X86_64=C:\dev\gstreamer\%GST_VERSION%\x86_64
> GST_VERSION=1.14.3
>
> Fortunately, all of the property sheets in the following folder work fine:
>
> %GSTREAMER_1_0_ROOT_X86_64%\share\vs\2010\libs
>
>
> Here is an example of a property sheet that works with VS 2015 (where I am
> consuming gst-editing-services):
>
>
> https://github.com/adaviding/gstreamer-playground/blob/master/ges-slide-composition/props/x86_64.props
>
>
> I'm not sure if the following clauses are really necessary if you simply
> allow visual studio to include the default property sheets for a given
> build.
>
> Under Debug: <AdditionalDependencies
> >libucrtd.lib;libcmtd.lib;libvcruntimed.lib;libcpmtd.lib;msvcprtd.lib;%(AdditionalDependencies)</
> AdditionalDependencies>
>
> Under Release: <AdditionalDependencies
> >libucrt.lib;libcmt.lib;libvcruntime.lib;libcpmt.lib;msvcprt.lib;iphlpapi.lib;%(AdditionalDependencies)</
> AdditionalDependencies>
>
>
> In the example above, I made the mistake of starting from the VS 2010
> property sheets under the "msvc" folder and then I fixed what was broken
> (it wasn't easy). If I were to do it over, I would just start with a
> normal VS 2015 C++ project and include at least the following property
> sheets (for plugin development):
>
> gstreamer-1.0.props
>
> gstreamer-base-1.0.props
>
> gstreamer-pbutils-1.0.props
>
> I believe that by including the property sheets above, you will resolve
> the error regarding GST_PLUGIN_DEFINE and VERSION.
>
> If you run into linker errors (can't find a particular symbol) then try
> searching the *.lib files for that symbol (perhaps I was using a hex
> editor, or perhaps I was using the `grep` command from GitBash ... I can't
> remember). Once you figure out which *.lib file defines the given symbol
> then you can find the property sheet that goes with that *.lib file, and
> include it into your project.
>
> On Wed, Nov 28, 2018 at 3:12 AM Sharden <vickarchuck at yandex.ru> wrote:
>
>> Hello everyone!
>> I am trying to create a plugin from official Plugins Writer's Guide -
>> https://gstreamer.freedesktop.org/data/doc/gstreamer/head/pwg/pwg.pdf .
>> I cannot use make_element for creating my own plugin from gstplugin.c/h
>> files (from
>> https://cgit.freedesktop.org/gstreamer/gst-template/tree/gst-plugin/src)
>> but
>> I saw what it does on Linux machine and replaced everything myself. I
>> replaced all "gstplugin" entries with "mynewplugin". I also tried to use
>> gsttransform files from the same page.
>> I added proprties included in the gstreamer sdk - gstreamer-1.0.props and
>> tried to build the dll file. It showed me an error in macros
>> GST_PLUGIN_DEFINE: VERSION - undeclared identifier.
>> Also Visual Stufio itself starts to behave strangely - intellisene always
>> parses something and I am not able to close VS as it does nothing when I
>> try
>> to close it. Looks like the prop files which were designed for VS 2010
>> does
>> not work for 2015.
>> Does anyone has an experience of writing plugin via Windows on VS 2015?
>> Any
>> help will do!
>>
>>
>>
>> --
>> Sent from: http://gstreamer-devel.966125.n4.nabble.com/
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20181128/098032c8/attachment-0001.html>
More information about the gstreamer-devel
mailing list