The installation of the wengophone 2.0 rc2 fails : wengophone/src/presentation/qt/QtAbout.cpp:36:21: avcodec.h: No such file or directory wengophone/src/presentation/qt/QtAbout.cpp: In constructor `QtAbout::QtAbout(QWidget*)': wengophone/src/presentation/qt/QtAbout.cpp:69: error: `avcodec_version' was not declared in this scope wengophone/src/presentation/qt/QtAbout.cpp:69: warning: unused variable 'avcodec_version' scons: *** [release-symbols/wengophone/src/presentation/qt/QtAbout.o] Error 1 scons: building terminated because of errors. you'll find attached the whole output this is my emerge --info Portage 2.1-r2 (default-linux/x86/2005.1, gcc-3.4.6, glibc-2.3.6-r4, 2.6.17-gentoo-r4-sea i686) ================================================================= System uname: 2.6.17-gentoo-r4-sea i686 Intel(R) Pentium(R) M processor 1400MHz Gentoo Base System version 1.12.4 app-admin/eselect-compiler: [Not Present] dev-lang/python: 2.4.3-r1 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: [Not Present] dev-util/confcache: [Not Present] sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2 sys-devel/binutils: 2.16.1-r3 sys-devel/gcc-config: 1.3.13-r3 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=pentium-m -Os -pipe -fomit-frame-pointer -ffast-math -fforce-addr -ftracer -momit-leaf-frame-pointer -fno-unroll-loops " CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/splash /etc/terminfo" CXXFLAGS="-march=pentium-m -Os -pipe -fomit-frame-pointer -ffast-math -fforce-addr -ftracer -momit-leaf-frame-pointer -fno-unroll-loops -fvisibility-inlines-hidden" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig ccache distlocks fixpackages metadata-transfer sandbox sfperms strict" GENTOO_MIRRORS="http://www.die.unipd.it/pub/Linux/distributions/gentoo-sources http://cdn.mirror.garr.it/mirrors/gentoo http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo" LANG="it_IT@euro" LC_ALL="it_IT@euro" LINGUAS="it" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="x86 X a52 aac aalib acpi acpi4linux aim alsa asf audiofile avi bash-completion bitmap-fonts bzip2 cairo candy caps cdparanoia cdr cpudetection crypt cscope css cups curl dbus directfb dri dts dvd dvdr dvdread encode exif fame fbcon ffmpeg flac fontconfig foomaticdb ftp geoip gif gphoto2 gpm gstreamer gtk gtk2 hal icq idn ieee1394 imagemagick imap imlib jabber java javascript jbig jpeg jpeg2k kde kdeenablefinal kdexdeltas lcms live logitech-mouse logrotate lzo mad matroska mime mjpeg mmx mmxext mng mozsvg mp3 mp4 mpeg mplayer musepack musicbrainz ncurses nls nocd nptl nsplugin nvidia ogg oggvorbis openal opengl oscar pam pcmcia pdf pdflib png pnp posix ppds qt quicktime rar readline real sasl sdl slang sndfile sse sse2 ssl startup-notification svg svga symlink sysfs theora threads tiff truetype truetype-fonts type1-fonts unicode usb v4l v4l2 vcd vidix vorbis wifi win32codecs wmf wxwindows x264 xanim xface xine xosd xpm xscreensaver xv xvid xvmc yv12 zeroconf zlib elibc_glibc input_devices_keyboard input_devices_mouse kernel_linux linguas_it userland_GNU video_cards_nvidia video_cards_nv video_cards_vesa video_cards_fbdev" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Created attachment 94260 [details] the whole output of the installation
please try with a newer ~arch version of ffmpeg. I will upgrade the dep when that works.
Reproducable on amd64. Same error.
Same probleme here with latest ffmpeg ebuild :/ avcodec.h is present (/usr/include/ffmpeg/avcodec.h) with both ffmpeg p20051216 and p20060530.
Created attachment 94270 [details, diff] fix for the avcodec.h error This patch fixes the problem for me. Seems as if wengophone doesn't know where to search for ffmpeg's header files.
I do not have the problem here but nevertheless I added the patch to cvs. Hope it fixes it for you all.
Created attachment 94296 [details, diff] correct ALL wrong includes in the wengophone sources Even using the first patch the emerge stops again due to avcodec.h problem . So I corrected every include in the sources, and things goes a little bit better but with the corrected include, another error appear :/ release-symbols/wengophone/src/presentation/qt/QtAbout.o: In function `QtAbout::QtAbout(QWidget*)': QtAbout.cpp:(.text+0xa17): undefined reference to `avcodec_version' release-symbols/wengophone/src/presentation/qt/QtAbout.o: In function `QtAbout::QtAbout(QWidget*)': QtAbout.cpp:(.text+0x1d8b): undefined reference to `avcodec_version' release-symbols/wifo/phapi/libphapi.so: undefined reference to `img_resample_init' release-symbols/wifo/phapi/libphapi.so: undefined reference to `avcodec_init' release-symbols/wifo/phapi/libphapi.so: undefined reference to `avcodec_close' release-symbols/wifo/phapi/libphapi.so: undefined reference to `img_convert' release-symbols/wifo/phapi/libphapi.so: undefined reference to `avcodec_find_decoder' release-symbols/wifo/phapi/libphapi.so: undefined reference to `avcodec_find_encoder' release-symbols/wifo/phapi/libphapi.so: undefined reference to `av_free' release-symbols/wifo/phapi/libphapi.so: undefined reference to `img_resample_close' release-symbols/wifo/phapi/libphapi.so: undefined reference to `avcodec_decode_video' release-symbols/wifo/phapi/libphapi.so: undefined reference to `img_resample' release-symbols/wifo/phapi/libphapi.so: undefined reference to `avpicture_fill' release-symbols/wifo/phapi/libphapi.so: undefined reference to `av_malloc' release-symbols/wifo/phapi/libphapi.so: undefined reference to `avcodec_encode_video' release-symbols/wifo/phapi/libphapi.so: undefined reference to `avpicture_get_size' release-symbols/wifo/phapi/libphapi.so: undefined reference to `avcodec_alloc_frame' release-symbols/wifo/phapi/libphapi.so: undefined reference to `avcodec_alloc_context' release-symbols/wifo/phapi/libphapi.so: undefined reference to `avcodec_open' release-symbols/wifo/phapi/libphapi.so: undefined reference to `avcodec_register_all' collect2: ld returned 1 exit status scons: *** [release-symbols/wengophone/src/presentation/qt/qtwengophone] Error 1 scons: building terminated because of errors. I'll try to update ffmpeg hoping to solve.
I reopen the bug since the proposed patch doesn't work and my patch, that correct EVERY include avcodec.h pointed out another problem. I'm using this ffmpeg version media-video/ffmpeg-0.4.9_p20051216 USE="a52 aac dts encode ieee1394 imlib mmx ogg sdl theora threads truetype v4l vorbis xvid zlib -debug -doc -network -oss -test"
Even using ~x86 ffmpeg package I got the same error specified in comment #7
My problem looks different with wengophone-2.0_rc2, but is related to avcodec.h: g++ -Os -mtune=i686 -pipe -pthread -fno-common -Wall -Irelease-symbols/libs/pixertool/include -Ilibs/pixertool/include -Irelease-symbols/libs/util/cutil/include -Ilibs/util/cutil/include -c -o release-symbols/libs/pixertool/src/pixertool.o libs/pixertool/src/pixertool.cpp In file included from libs/pixertool/src/pixertool.cpp:22: libs/pixertool/include/pixertool/ffmpeg-pixertool.h:25:21: avcodec.h: No such file or directory In file included from libs/pixertool/src/pixertool.cpp:22: libs/pixertool/include/pixertool/ffmpeg-pixertool.h:61: error: variable or field `pix_fill_avpicture' declared void libs/pixertool/include/pixertool/ffmpeg-pixertool.h:61: error: `AVPicture' was not declared in this scope libs/pixertool/include/pixertool/ffmpeg-pixertool.h:61: error: `dst' was not declared in this scope libs/pixertool/include/pixertool/ffmpeg-pixertool.h:61: error: expected primary-expression before '*' token libs/pixertool/include/pixertool/ffmpeg-pixertool.h:61: error: `src' was not declared in this scope libs/pixertool/include/pixertool/ffmpeg-pixertool.h:61: error: initializer expression list treated as compound expression libs/pixertool/include/pixertool/ffmpeg-pixertool.h:77: error: `AVPicture' has not been declared libs/pixertool/include/pixertool/ffmpeg-pixertool.h:77: error: ISO C++ forbids declaration of `img_src' with no type libs/pixertool/src/pixertool.cpp: In function `piximage* pix_alloc(pixosi, unsigned int, unsigned int)': libs/pixertool/src/pixertool.cpp:44: error: `avcodec_init' was not declared in this scope libs/pixertool/src/pixertool.cpp:50: error: `av_malloc' was not declared in this scope libs/pixertool/src/pixertool.cpp:44: warning: unused variable 'avcodec_init' libs/pixertool/src/pixertool.cpp:50: warning: unused variable 'av_malloc' libs/pixertool/src/pixertool.cpp: In function `void pix_free(piximage*)': libs/pixertool/src/pixertool.cpp:58: error: `av_free' was not declared in this scope libs/pixertool/src/pixertool.cpp:58: warning: unused variable 'av_free' libs/pixertool/src/pixertool.cpp: In function `unsigned int pix_size(pixosi, unsigned int, unsigned int)': libs/pixertool/src/pixertool.cpp:65: error: `avpicture_get_size' was not declared in this scope libs/pixertool/src/pixertool.cpp:65: warning: unused variable 'avpicture_get_size' libs/pixertool/src/pixertool.cpp: In function `pixerrorcode pix_convert(int, piximage*, piximage*)': libs/pixertool/src/pixertool.cpp:94: error: `AVPicture' was not declared in this scope libs/pixertool/src/pixertool.cpp:94: error: expected `;' before "avp_source" libs/pixertool/src/pixertool.cpp:95: error: `avp_source' was not declared in this scope libs/pixertool/src/pixertool.cpp:95: error: `avpicture_fill' was not declared in this scope libs/pixertool/src/pixertool.cpp:96: error: `avp_target' was not declared in this scope libs/pixertool/src/pixertool.cpp:103: error: `PIX_FMT_YUV420P' was not declared in this scope libs/pixertool/src/pixertool.cpp:103: warning: unused variable 'PIX_FMT_YUV420P' libs/pixertool/src/pixertool.cpp:116: error: `PIX_FMT_YUV420P' was not declared in this scope libs/pixertool/src/pixertool.cpp:116: warning: unused variable 'PIX_FMT_YUV420P' libs/pixertool/src/pixertool.cpp:121: error: `ImgReSampleContext' was not declared in this scope libs/pixertool/src/pixertool.cpp:121: error: `resample_context' was not declared in this scope libs/pixertool/src/pixertool.cpp:122: error: `img_resample_init' was not declared in this scope libs/pixertool/src/pixertool.cpp:128: error: expected `;' before "avp_tmp_target" libs/pixertool/src/pixertool.cpp:131: error: `avpicture_get_size' was not declared in this scope libs/pixertool/src/pixertool.cpp:131: error: `av_malloc' was not declared in this scope libs/pixertool/src/pixertool.cpp:132: error: `avp_tmp_target' was not declared in this scope libs/pixertool/src/pixertool.cpp:136: error: `img_resample' was not declared in this scope libs/pixertool/src/pixertool.cpp:137: error: `img_resample_close' was not declared in this scope libs/pixertool/src/pixertool.cpp:143: error: `img_convert' was not declared in this scope libs/pixertool/src/pixertool.cpp:145: error: `av_free' was not declared in this scope libs/pixertool/src/pixertool.cpp:145: warning: unused variable 'av_free' libs/pixertool/src/pixertool.cpp:143: warning: unused variable 'img_convert' libs/pixertool/src/pixertool.cpp:148: error: `av_free' was not declared in this scope libs/pixertool/src/pixertool.cpp:121: warning: unused variable 'ImgReSampleContext' libs/pixertool/src/pixertool.cpp:122: warning: unused variable 'img_resample_init' libs/pixertool/src/pixertool.cpp:131: warning: unused variable 'avpicture_get_size' libs/pixertool/src/pixertool.cpp:131: warning: unused variable 'av_malloc' libs/pixertool/src/pixertool.cpp:136: warning: unused variable 'img_resample' libs/pixertool/src/pixertool.cpp:137: warning: unused variable 'img_resample_close' libs/pixertool/src/pixertool.cpp:148: warning: unused variable 'av_free' libs/pixertool/src/pixertool.cpp:154: error: `img_convert' was not declared in this scope libs/pixertool/src/pixertool.cpp:154: warning: unused variable 'img_convert' libs/pixertool/src/pixertool.cpp:161: error: `av_free' was not declared in this scope libs/pixertool/src/pixertool.cpp:161: warning: unused variable 'av_free' libs/pixertool/src/pixertool.cpp:89: warning: unused variable 'len_target' libs/pixertool/src/pixertool.cpp: In function `uint8_t* _nv12_to_yuv420p(uint8_t*, unsigned int, unsigned int)': libs/pixertool/src/pixertool.cpp:171: error: `av_malloc' was not declared in this scope libs/pixertool/src/pixertool.cpp:171: warning: unused variable 'av_malloc' scons: *** [release-symbols/libs/pixertool/src/pixertool.o] Error 1 scons: building terminated because of errors. --- $ find / -name 'avcodec.h' 2>/dev/null /usr/include/ffmpeg/avcodec.h --- media-video/ffmpeg-0.4.9_p20051216 USE="a52 aac dts encode mmx ogg sdl theora truetype vorbis xvid zlib -debug -doc -ieee1394 -imlib -network -oss -test -threads -v4l"
(In reply to comment #10) > In file included from libs/pixertool/src/pixertool.cpp:22: > libs/pixertool/include/pixertool/ffmpeg-pixertool.h:25:21: avcodec.h: No such > file or directory it's again the wrong include bug. Try to use my patch, rename it ffmpeg-include.patch and then put that file into /usr/portage/net-im/wengophone/files Then exec ebuid wengophone-2.0_rc2.ebuild digest to recalculate hashes and try to rebuild. In this way includes should be corrected. Let us know what happen then to you
As you are all using stable (correct me if I am wrong) the problem must be in some package that has a lower version in stable than in ~arch. Does pkg-config --cflags --libs libavcodec work correctly for you?
(In reply to comment #11) > it's again the wrong include bug. Try to use my patch, rename it > ffmpeg-include.patch and then put that file into > /usr/portage/net-im/wengophone/files The patch is already in my portage tree. The problem is related to another file than wengophone/src/presentation/qt/QtAbout.cpp, so the Wengophone "package" needs further work.
Created attachment 94316 [details, diff] New ffmpeg-include.patch Added the following to the patch: --- libs/pixertool/include/pixertool/ffmpeg-pixertool.h.old 2006-08-15 16:28:06.599233250 +0200 +++ libs/pixertool/include/pixertool/ffmpeg-pixertool.h 2006-08-15 16:28:21.732179000 +0200 @@ -22,7 +22,7 @@ #include <pixertool/pixertool.h> -#include <avcodec.h> +#include <ffmpeg/avcodec.h> #ifdef __cplusplus extern "C" {
Yet another problem. Will fix it in a short while. gcc -Os -mtune=i686 -pipe -pthread -fno-common -Wall -Irelease-symbols/libs/pixertool/include -Ilibs/pixertool/include -Irelease-symbols/libs/util/cutil/include -Ilibs/util/cutil/include -c -o release-symbols/libs/pixertool/src/ffmpeg/ffmpeg-pixertool.o libs/pixertool/src/ffmpeg/ffmpeg-pixertool.c libs/pixertool/src/ffmpeg/ffmpeg-pixertool.c:22:21: avcodec.h: No such file or directory scons: *** [release-symbols/libs/pixertool/src/ffmpeg/ffmpeg-pixertool.o] Error 1 scons: building terminated because of errors.
care to answer my question before proceeding with patching the wrong files? The question was Does "pkg-config --cflags --libs libavcodec" work correctly for you. Looking at the emerge output you might see a * Applying 004_external-ffmpeg.patch ... [ ok ] this patch not working correctly for you is the culprit - not the files specifying wrong includes. Thus it would make sense to debug the patch instead of hacking around elsewhere.
(In reply to comment #12) > As you are all using stable (correct me if I am wrong) the problem must be in > some package that has a lower version in stable than in ~arch. Does pkg-config > --cflags --libs libavcodec work correctly for you? > $ pkg-config --cflags --libs libavcodec Package theora was not found in the pkg-config search path. Perhaps you should add the directory containing `theora.pc' to the PKG_CONFIG_PATH environment variable Package 'theora', required by 'libavcodec', not found
(In reply to comment #17) > (In reply to comment #12) > > As you are all using stable (correct me if I am wrong) the problem must be in > > some package that has a lower version in stable than in ~arch. Does pkg-config > > --cflags --libs libavcodec work correctly for you? > > > > $ pkg-config --cflags --libs libavcodec > Package theora was not found in the pkg-config search path. > Perhaps you should add the directory containing `theora.pc' > to the PKG_CONFIG_PATH environment variable > Package 'theora', required by 'libavcodec', not found > By the way, yes I'm running a stable system. "revdep-rebuild" doesn't report any errors concerning ffmpeg or similar.
it would be good to know about your media-libs/libtheora version, if you have it installed and if updating does any good for pkg-config. Thanks.
(In reply to comment #19) > it would be good to know about your media-libs/libtheora version, if you have > it installed and if updating does any good for pkg-config. Thanks. > $ emerge -qp libtheora [ebuild R ] media-libs/libtheora-1.0_alpha3
(In reply to comment #20) > (In reply to comment #19) > > it would be good to know about your media-libs/libtheora version, if you have > > it installed and if updating does any good for pkg-config. Thanks. > > > > $ emerge -qp libtheora > [ebuild R ] media-libs/libtheora-1.0_alpha3 > Like always, I replied too fast. :/ I have now recompiled libtheora and it didn't make a difference. :(
...and if updating does any good for pkg-config. Thanks. please do what I said and update it to media-libs/libtheora-1.0_alpha6-r1 and after that try again pkg-config --cflags --libs libavcodec If pkg-config will work I would bet that wengophone will compile, too. Thanks for your patience
(In reply to comment #22) > ...and if updating does any good for pkg-config. Thanks. > > please do what I said and update it to media-libs/libtheora-1.0_alpha6-r1 and > after that try again pkg-config --cflags --libs libavcodec > > If pkg-config will work I would bet that wengophone will compile, too. > > Thanks for your patience > You were right. It did help to compile the latest unstable version. Now it looks like this: $ pkg-config --cflags --libs libavcodec -I/usr/include/ffmpeg -lavcodec -lmp3lame -lxvidcore -ldts -lfaad -lfaac -lz -ldl -lvorbisenc -ltheora -lavutil -lvorbis -lm -logg I'll try to compile Wengophone again without my crazy hacks/patch. ;) Will let you know how it goes in a while.
wengophone-2.0_rc2 compiles just fine now. Thanks for all the help. :)
I negotiated a bit with the stable people and video herd and marked it stable, thanks for the bug!
*** Bug 146544 has been marked as a duplicate of this bug. ***