[vox-tech] inline keyword solves "undefined reference" issue
Jeff Newmiller
jdnewmil at dcn.davis.ca.us
Sun Jun 6 22:26:40 PDT 2010
Seems more likely that you haven't included the declarations for the C routines in your cpp file. Would need to see more context to diagnose.
"Hai Yi" <yihai2004 at gmail.com> wrote:
>Hello all:
>
>I created a class FFMpegMgr and a method init(); inside init() I just put
>three ffmpeg api there:
>avcodec_register_all();
>avdevice_register_all();
> av_register_all();
>
>The source file ffmpegmgr.cpp look like this:
>
> void FFMpegMgr::init() {
> avcodec_register_all();
> avdevice_register_all();
> av_register_all();
>
>}
>
>Now I got a "undefined reference to avcodec_register_all" error.
>
>if I put that body in the class declaration or add a "inline" keyword, that
>problem was gone and the compilation succeeded.
>
>question is, do those three functions, which are C functions defined in
>avcodec.h, have to be used only in the inline functions in C++?
>
>Sorry if it appear naive - I've been out of touch with C/C++ for a while.
>
>Thanks!
>Hai
>_______________________________________________
>vox-tech mailing list
>vox-tech at lists.lugod.org
>http://lists.lugod.org/mailman/listinfo/vox-tech
---------------------------------------------------------------------------
Jeff Newmiller The ..... ..... Go Live...
DCN:<jdnewmil at dcn.davis.ca.us> Basics: ##.#. ##.#. Live Go...
Live: OO#.. Dead: OO#.. Playing
Research Engineer (Solar/Batteries O.O#. #.O#. with
/Software/Embedded Controllers) .OO#. .OO#. rocks...1k
---------------------------------------------------------------------------
Sent from my phone. Please excuse my brevity.
More information about the vox-tech
mailing list