Link error on Debian (Raspberry Pi)
Added by Jan Mrázek about 9 years ago
Hello,
I am trying to build the newest Tvheadend from source on Raspberry Pi. I think I have all the neccessary libraries, however I cannot link it together:
/tmp/tvheadend/build.linux/src/plumbing/transcoding.o: In function `create_video_filter': /tmp/tvheadend-build/tvheadend/src/plumbing/transcoding.c:1115: undefined reference to `avfilter_graph_parse_ptr' /tmp/tvheadend-build/tvheadend/src/plumbing/transcoding.c:1093: undefined reference to `av_int_list_length_for_size'
What am I doing wrong?
Replies (7)
RE: Link error on Debian (Raspberry Pi) - Added by Prof Yaffle about 9 years ago
If you've built it previously, try removing libav_static or running make distclean first
RE: Link error on Debian (Raspberry Pi) - Added by Jan Mrázek about 9 years ago
I tried running it and it didn't help. Where is the libav_static directory located? I cannot find it in the root of the sources...
This is the list of ffmpeg related libraries on my system:
libavcodec 56.60.100 libavutil 54.31.100 libavformat 56.40.101 libavfilter 5.40.101 libavresample 2.1.0
RE: Link error on Debian (Raspberry Pi) - Added by Prof Yaffle about 9 years ago
Apologies - I leapt to a conclusion.
If you're relying on the libraries on your system, you're likely to end up with problems. Try building with static ffmpeg, and then you'll download and build a more recent version - that's what will appear in libav_static in the root of your git clone.
You need to add AUTOBUILD_CONFIGURE_EXTRA="--enable-libffmpeg_static" if you're building a deb, or otherwise add this to configure ... I run on an Intel 64 platform, so don't know what the options would be, I'm afraid.
RE: Link error on Debian (Raspberry Pi) - Added by Jan Mrázek about 9 years ago
I tried to remove all the FFmpeg related libraries and compile them from source. Even the configure scirpt complained there's no libavresample, it generated Makefile and compiled just fine.
RE: Link error on Debian (Raspberry Pi) - Added by Icarus XinHong about 9 years ago
Looks like I have the same error. How did you solve it ? (beginner)
src/plumbing/transcoding.c: In function ‘create_video_filter’:
src/plumbing/transcoding.c:1093:3: error: implicit declaration of function ‘av_opt_set_int_list’ [-Werror=implicit -function-declaration]
src/plumbing/transcoding.c:1115:3: error: implicit declaration of function ‘avfilter_graph_parse_ptr’ [-Werror=imp licit-function-declaration]
cc1: all warnings being treated as errors
Makefile:562: recipe for target '/home/pi/temp/tvheadend/build.linux/src/plumbing/transcoding.o' failed
make: *** [/home/pi/temp/tvheadend/build.linux/src/plumbing/transcoding.o] Error 1
RE: Link error on Debian (Raspberry Pi) - Added by Jan Mrázek about 9 years ago
I uninstalled all the FFmpeg related libraries (list is on FFmpeg github).
Then I cloned https://github.com/FFmpeg/FFmpeg, `./configure && make`, `sudo make install`. Then I reconfigured Tvheadend ignoring all the errors.
RE: Link error on Debian (Raspberry Pi) - Added by Icarus XinHong about 9 years ago
Thanks for the tip, it's working