Project: chromium Issues People Development process History Sign in
New issue
Advanced search Search tips
Issue 111392 media/audio/pulse/pulse_output.cc compilation error
Starred by 7 users Reported by sl1pk...@gmail.com, Jan 25, 2012 Back to list
Status: Fixed
Owner: scherkus@chromium.org
Closed: May 2012
Components:
OS: Linux
Pri: 3
Type: Bug

Blocking:
issue 32757

Restricted
  • Only users with Commit permission may comment.


Sign in to add a comment
Chrome Version       : 18.0.1017.2
OS Version: Archlinux 64bits
URLs (if applicable) :
Other browsers tested:
  Add OK or FAIL after other browsers where you have tested this issue:
     Safari 5:
  Firefox 4.x:
     IE 7/8/9:

What steps will reproduce the problem?
1.install pulseaudio 1.1-2 from extra repository
2.install Nacl SDK from https://commondatastorage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/trunk.112997/naclsdk_linux.tgz
3. compile

What is the expected result?
compile


What happens instead?
fail fuild


Please provide any additional information below. Attach a screenshot if
possible.

   nacl-g++ /home/sl1pkn07/aplicaciones/chromium-dev/src/chromium-build/out/Release/obj.target/ppruntime_lib/geni/newlib-x86-64/ppruntime_lib/plugin_ppb_audio.o
In file included from ./base/memory/weak_ptr.h:63:0,
                 from ./media/audio/pulse/pulse_output.h:25,
                 from media/audio/pulse/pulse_output.cc:5:
./base/logging.h: In function 'std::string* logging::CheckEQImpl(const t1&, const t2&, const char*) [with t1 = scoped_refptr<base::MessageLoopProxy>, t2 = MessageLoop*, std::string = std::basic_string<char>]':
media/audio/pulse/pulse_output.cc:129:3:   instantiated from here
./base/logging.h:556:1: error: no match for 'operator==' in 'v1 == v2'
./base/logging.h:556:1: note: candidates are:
./base/logging.h:556:1: note: operator==(MessageLoop*, MessageLoop*) <built-in>
./base/logging.h:556:1: note:   no known conversion for argument 1 from 'const scoped_refptr<base::MessageLoopProxy>' to 'MessageLoop*'
./base/logging.h:556:1: note: operator==(base::MessageLoopProxy*, base::MessageLoopProxy*) <built-in>
./base/logging.h:556:1: note:   no known conversion for argument 2 from 'MessageLoop* const' to 'base::MessageLoopProxy*'
./base/memory/scoped_ptr.h:203:6: note: template<class C> bool operator==(C*, const scoped_ptr<C>&)
./base/memory/scoped_ptr.h:315:6: note: template<class C> bool operator==(C*, const scoped_array<C>&)
./base/memory/scoped_ptr.h:441:6: note: template<class C, class FP> bool operator==(C*, const scoped_ptr_malloc<C, FP>&)
  CXX(target) out/Release/obj.target/media/media/base/byte_queue.o
./base/logging.h:556:1: warning: control reaches end of non-void function [-Wreturn-type]
make: *** [out/Release/obj.target/media/media/audio/pulse/pulse_output.o] Error 1

use this pkgbuild:

http://paste.kde.org/192848/

UserAgentString: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.18 (KHTML, like Gecko) Chrome/18.0.1010.1 Safari/535.18


 
Comment 1 by sl1pk...@gmail.com, Jan 25, 2012
fuild? :S 

sorry :S
Comment 2 by imasaki@chromium.org, Jan 25, 2012
Labels: nomedia
Comment 3 by nullnix....@gmail.com, Jan 28, 2012
Confirmed:


In file included from ./base/memory/weak_ptr.h:63:0,
                 from ./media/audio/pulse/pulse_output.h:25,
                 from media/audio/pulse/pulse_output.cc:5:
./base/logging.h: In function 'std::string* logging::CheckEQImpl(const t1&, const t2&, const char*) [with t1 = scoped_refptr<base::MessageLoopProxy>, t2 = MessageLoop*, std::string = std::basic_string<char>]':
media/audio/pulse/pulse_output.cc:129:3:   instantiated from here
./base/logging.h:555:1: error: no match for 'operator==' in 'v1 == v2'
./base/logging.h:555:1: note: candidates are:
./base/logging.h:555:1: note: operator==(MessageLoop*, MessageLoop*) <built-in>
./base/logging.h:555:1: note:   no known conversion for argument 1 from 'const scoped_refptr<base::MessageLoopProxy>' to 'MessageLoop*'
./base/logging.h:555:1: note: operator==(base::MessageLoopProxy*, base::MessageLoopProxy*) <built-in>
./base/logging.h:555:1: note:   no known conversion for argument 2 from 'MessageLoop* const' to 'base::MessageLoopProxy*'
./base/memory/scoped_ptr.h:224:6: note: template<class C> bool operator==(C*, const scoped_ptr<C>&)
./base/memory/scoped_ptr.h:336:6: note: template<class C> bool operator==(C*, const scoped_array<C>&)
./base/memory/scoped_ptr.h:462:6: note: template<class C, class FP> bool operator==(C*, const scoped_ptr_malloc<C, FP>&)
./base/logging.h:555:1: warning: control reaches end of non-void function [-Wreturn-type]
make: *** [out/Release/obj.target/media/media/audio/pulse/pulse_output.o] Error 1
make: *** Waiting for unfinished jobs....

This is caused by r118272's change of AudioManagerBase::getMessageLoop() to return a scoped_refptr<base::MessageLoopProxy> rather than a MessageLoop *. The DCHECK_EQ calls in pulse_output.c should have been fixed up by that change, but were not.

Patch attached (generated by git, sorry, but the gist should be clear nonetheless).

pulse-compile-fix.diff
3.0 KB View Download
Comment 4 by sl1pk...@gmail.com, Jan 28, 2012
thanks!

now compile

greetings
Confirmed on gentoo with chromium 19.0.1031.0, nacl 0_p7431 and pulseaudio 1.1-r1

  x86_64-pc-linux-gnu-g++ '-D_FILE_OFFSET_BITS=64' '-DCHROMIUM_BUILD' '-DUSE_NSS=1' '-DTOOLKIT_USES_GTK=1' '-DGTK_DISABLE_SINGLE_INCLUDES=1' '-DENABLE_REMOTING=1' '-DENABLE_P2P_APIS=1' '-DUSE_PROPRIETARY_CODECS' '-DENABLE_CONFIGURATION_POLICY' '-DENABLE_INPUT_SPEECH' '-DENABLE_NOTIFICATIONS' '-DENABLE_GPU=1' '-DENABLE_EGLIMAGE=1' '-DUSE_SKIA=1' '-DENABLE_REGISTER_PROTOCOL_HANDLER=1' '-DENABLE_WEB_INTENTS=1' '-DENABLE_PLUGIN_INSTALLATION=1' '-DMEDIA_IMPLEMENTATION' '-DUSE_PULSEAUDIO' '-D__OMX_EXPORTS' '-DU_USING_ICU_NAMESPACE=0' '-DUSE_SYSTEM_ICU' '-D__STDC_CONSTANT_MACROS' '-D__STDC_FORMAT_MACROS' '-DNDEBUG' '-DNVALGRIND' '-DDYNAMIC_ANNOTATIONS_ENABLED=0' -I. -Ithird_party/openmax/il -Iout/Release/obj/gen/openmax -Iout/Release/obj/gen/ffmpeg -Ithird_party/ffmpeg/config -Ithird_party/ffmpeg/patched-ffmpeg  -pthread -fno-exceptions -fno-strict-aliasing -Wall -Wno-unused-parameter -Wno-missing-field-initializers -fvisibility=hidden -pipe -fPIC -D_REENTRANT -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng15 -I/usr/include/libdrm -O2 -fno-ident -fdata-sections -ffunction-sections -fno-rtti -fno-threadsafe-statics -fvisibility-inlines-hidden -Wsign-compare -MMD -MF out/Release/.deps/out/Release/obj.target/media/media/base/byte_queue.o.d.raw -O2 -pipe -c -o out/Release/obj.target/media/media/base/byte_queue.o media/base/byte_queue.cc
In file included from ./base/memory/weak_ptr.h:63:0,
                 from ./media/audio/pulse/pulse_output.h:25,
                 from media/audio/pulse/pulse_output.cc:5:
./base/logging.h: In function ‘std::string* logging::CheckEQImpl(const t1&, const t2&, const char*) [with t1 = scoped_refptr<base::MessageLoopProxy>, t2 = MessageLoop*, std::string = std::basic_string<char>]’:
media/audio/pulse/pulse_output.cc:129:3:   instantiated from here
./base/logging.h:555:1: error: no match for ‘operator==’ in ‘v1 == v2’
./base/logging.h:555:1: note: candidates are: operator==(MessageLoop*, MessageLoop*) <built-in>
./base/logging.h:555:1: note:                 operator==(base::MessageLoopProxy*, base::MessageLoopProxy*) <built-in>
./base/logging.h:555:1: warning: control reaches end of non-void function
make: *** [out/Release/obj.target/media/media/audio/pulse/pulse_output.o] Error 1
make: *** Waiting for unfinished jobs....

The patch fixes the issue here too.
Comment 6 by evan@chromium.org, Feb 7, 2012
Labels: Feature-NaCl
Comment 7 by floppyma...@gmail.com, Feb 11, 2012
You are more likely to get your patch committed in a timely manner if you follow the instructions here:

http://www.chromium.org/developers/contributing-code
Comment 8 by sl1pk...@gmail.com, Mar 24, 2012
this bug still in 19.0.77.3. but fix with @nullnix.. patch
Comment 9 by sl1pk...@gmail.com, Apr 12, 2012
in 20.0.1096.1 still fails whitout patch by @nullnix. but whit patch make other bug http://crbug.com/119903

greetings
Issue 119903 has been merged into this issue.
Labels: -Area-Undefined -nomedia -Feature-NaCl Area-Internals Feature-Media
Summary: media/audio/pulse/pulse_output.cc compilation error (was: NULL)
This is not NaCl-related. The file that fails to compile is media/audio/pulse/pulse_output.cc .
Blocking: 32757
Labels: -Pri-2 Pri-3
Owner: scherkus@chromium.org
Status: Started
Project Member Comment 14 by bugdroid1@chromium.org, May 11, 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=136602

------------------------------------------------------------------------
r136602 | scherkus@chromium.org | Fri May 11 10:26:13 PDT 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/media/audio/pulse/pulse_output.cc?r1=136602&r2=136601&pathrev=136602

Fix PulseAudio compile failures when use_pulseaudio=1.

BUG= 111392 
TEST=none

Review URL: https://chromiumcodereview.appspot.com/10332119
------------------------------------------------------------------------
Status: Fixed
thanks for the heads up!

things should compile now
Comment 16 Deleted
Project Member Comment 17 by bugdroid1@chromium.org, Oct 13, 2012
Blocking: -chromium:32757 chromium:32757
Labels: Restrict-AddIssueComment-Commit
This issue has been closed for some time. No one will pay attention to new comments.
If you are seeing this bug or have new data, please click New Issue to start a new bug.
Project Member Comment 18 by bugdroid1@chromium.org, Mar 10, 2013
Labels: -Area-Internals -Feature-Media Cr-Internals Cr-Internals-Media
Sign in to add a comment