View Issue Details

IDProjectCategoryView StatusLast Update
0005548ardourbugspublic2020-04-19 20:16
Reportermarcelbonnet Assigned Tomarcelbonnet  
PrioritynormalSeverityblockReproducibilityalways
Status closedResolutionfixed 
Product Version3.0 
Summary0005548: Evoral does not compile with CLANG while building ARDOUR-3 (template visibility)
DescriptionIn file included from ../libs/evoral/src/Sequence.cpp:27:
 /usr/home/mvox/devel/ardour3-3.1/libs/pbd/pbd/compose.h:118:8:

 call to function 'operator<<' that is neither visible in the template
 definition nor found by argument-dependent lookup

 os << obj;



 /usr/home/mvox/devel/ardour3-3.1/libs/pbd/pbd/compose.h:218:7:

 in instantiation of function template specialization
 'StringPrivate::Composition::arg<Evoral::Note<double> >' requested here

 c.arg(o1).arg(o2);



 ../libs/evoral/src/Sequence.cpp:844:15: in instantiation of function

 template specialization 'string_compose<Evoral::Note<double>, int>'
 requested here

 warning << string_compose ("erased note %1 not ...



 /usr/home/mvox/devel/ardour3-3.1/libs/evoral/evoral/Note.hpp:109:15:

 'operator<<' should be declared prior to the call site or in an associated
 namespace of one of its arguments

 std::ostream& operator<<(std::ostream& o, const Evoral::Note<Time>& n) {



 1 error generated.
 : Leaving directory `/usr/home/mvox/devel/ardour3-3.1/build'
 Build failed

 -> task in 'libevoral' failed (exit status 1):

 {task 688448812: cxx Sequence.cpp -> Sequence.cpp.2.o}

 ['clang++', '-I/usr/home/mvox/devel/ardour3-3.1', '-O0', '-g', '-fshow-column', '-I/usr/local/include', '-DWAF_BUILD', '-DARCH_X86', '-msse', '-mfpmath=sse', '-DUSE_XMMINTRIN', '-Wall', '-Wpointer-arith', '-Wcast-qual', '-Wcast-align', '-Woverloaded-virtual', '-DBOOST_SYSTEM_NO_DEPRECATED', '-D_LARGEFILE64_SOURCE', '-D_FILE_OFFSET_BITS=64', '-DSTDC_LIMIT_MACROS', '-DSTDC_FORMAT_MACROS', '-DENABLE_NLS', '-DHAVE_FFTW3', '-fPIC', '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', '-I/usr/home/mvox/devel/ardour3-3.1/build/libs/evoral', '-I/usr/home/mvox/devel/ardour3-3.1/libs/evoral', '-I/usr/home/mvox/devel/ardour3-3.1/build/libs/evoral/src', '-I/usr/home/mvox/devel/ardour3-3.1/libs/evoral/src', '-I/usr/home/mvox/devel/ardour3-3.1/build/libs/evoral/src/libsmf', '-I/usr/home/mvox/devel/ardour3-3.1/libs/evoral/src/libsmf', '-I/usr/home/mvox/devel/ardour3-3.1/build/libs/pbd', '-I/usr/home/mvox/devel/ardour3-3.1/libs/pbd', '-I/usr/local/include/glibmm-2.4', '-I/usr/local/lib/glibmm-2.4/include', '-I/usr/local/include/glib-2.0', '-I/usr/local/include', '-I/usr/local/include/sigc++-2.0', '-I/usr/local/lib/sigc++-2.0/include', '-I/usr/local/include/libxml2', '-I/usr/local/include/uuid', '-I/usr/local/include/giomm-2.4', '-I/usr/local/lib/giomm-2.4/include', '-I/usr/home/mvox/devel/ardour3-3.1/build', '-DINTERNAL_SHARED_LIBS=1', '-DJACK_SESSION=1', '-DHAVE_GLIB=1', '-DHAVE_GTHREAD=1', '-DHAVE_GLIBMM=1', '-DHAVE_SNDFILE=1', '-DHAVE_GIOMM=1', '-DHAVE_CURL=1', '-DHAVE_LO=1', '-DHAVE_DLOPEN=1', '-DPHONE_HOME=1', '-DFREESOUND=1', '-DENABLE_NLS=1', '-DWINDOWS_KEY="Mod4><Super"', '-DIS_OSX=0', '-DCONFIG_ARCH="i386"', '-DHAVE_XML=1', '-DHAVE_SIGCPP=1', '-DHAVE_UUID=1', '-DHAVE_EXECINFO=1', '-DHAVE_POSIX_MEMALIGN=1', '-DHAVE_LIBS_PBD=1', '-DHAVE_JACK=1', '-DHAVE_LIBS_MIDIPP2=1', '-DHAVE_LIBS_EVORAL=1', '-DHAVE_FFTW3=1', '-DHAVE_FFTW3F=1', '-DHAVE_LIBS_VAMP_SDK=1', '-DHAVE_LIBS_QM_DSP=1', '-DHAVE_AUBIO=1', '-DHAVE_LIBS_VAMP_PLUGINS=1', '-DHAVE_LIBS_TAGLIB=1', '-DHAVE_LIBS_LIBLTC=1', '-DHAVE_LIBS_RUBBERBAND=1', '-DHAVE_CONTROL_PROTOCOL=1', '-DHAVE_FRONTIER=1', '-DHAVE_GENERIC_MIDI=1', '-DHAVE_MACKIE=1', '-DHAVE_OSC=1', '-DHAVE_POWERMATE=1', '-DHAVE_TRANZPORT=1', '-DHAVE_WIIMOTE=1', '-DBUILD_POWERMATE=1', '-DHAVE_LIBS_SURFACES=1', '-DHAVE_2IN2OUT=1', '-DHAVE_1IN2OUT=1', '-DHAVE_VBAP=1', '-DHAVE_LIBS_PANNERS=1', '-DHAVE_LIBS_TIMECODE=1', '-DHAVE_LRDF=1', '-DHAVE_SAMPLERATE=1', '-DHAVE_LV2=1', '-DHAVE_NEW_LV2=1', '-DHAVE_SERD=1', '-DHAVE_SORD=1', '-DHAVE_SRATOM=1', '-DHAVE_LILV=1', '-DHAVE_SUIL=1', '-DLV2_SUPPORT=1', '-DHAVE_OGG=1', '-DHAVE_FLAC=1', '-DHAVE_RUBBERBAND=1', '-DUSE_RUBBERBAND=1', '-DCURRENT_SESSION_FILE_VERSION=3001', '-DHAVE_SYS_STATVFS_H=1', '-DHAVE_JACK_SESSION=1', '-DHAVE_UNISTD=1', '-DHAVE_JACK_ON_INFO_SHUTDOWN=1', '-DHAVE_JACK_VIDEO_SUPPORT=1', '-DHAVE_BOOST_SCOPED_PTR_HPP=1', '-DHAVE_BOOST_PTR_CONTAINER_PTR_LIST_HPP=1', '-DHAVE_LIBS_ARDOUR=1', '-DHAVE_GTKMM=1', '-DHAVE_GTK=1', '-DHAVE_LIBS_GTKMM2EXT=1', '-DHAVE_LIBS_CLEARLOOKS_NEWER=1', '-DHAVE_BOOST_FORMAT_HPP=1', '-DHAVE_LIBS_AUDIOGRAPHER=1', '-DHAVE_GNOMECANVAS=1', '-DHAVE_GNOMECANVASMM=1', '-DHAVE_X11=1', '-DHAVE_FONTCONFIG=1', '-DHAVE_BOOST_SHARED_PTR_HPP=1', '-DHAVE_BOOST_WEAK_PTR_HPP=1', '-DHAVE_GTK2_ARDOUR=1', '-DHAVE_EXPORT=1', '-DHAVE_MIDI_MAPS=1', '-DHAVE_MCP=1', '-DHAVE_PATCHFILES=1', '-DPACKAGE="libevoral"', '-DEVORAL_MIDI_XML=1', '../libs/evoral/src/Sequence.cpp', '-c', '-o', 'libs/evoral/src/Sequence.cpp.2.o']
* Error code 1
Additional InformationClang is more strict than other popular compilers, and may reject incorrect code that other compilers allow. It looks like a common compatibility and portability issues that requires a fix. Unfortunately, I tried but could not produce a fix.
TagsNo tags attached.

Activities

marcelbonnet

2013-06-25 20:49

reporter   ~0015050

It applies to Ardour 3.1

paul

2013-07-12 02:03

administrator   ~0015091

you'll need to find your own fix for this. i don't have any intention of worrying about clang myself.

AxeTota

2013-07-17 02:27

reporter   ~0015127

A resolution (workaround) was incorporated in master for this. You should safely be able to compile with clang now.

Its a workaround because it clear as day disobeys code style by including an evoral header before pbd headers. Should this become a separate report?

marcelbonnet

2013-07-25 14:41

reporter   ~0015180

[SOLVED] THANKS, IT WORKED.

 Ardour 3.3 (tough I first noticed the compiler error in 3.1) was compiled with clang thanks AxeTota patch:

 #if __clang__
 #include "evoral/Note.hpp"
 #endif

 in libs/evoral/src/Sequence.cpp

system

2020-04-19 20:16

developer   ~0023248

Issue has been closed automatically, by Trigger Close Plugin.
Feel free to re-open with additional information if you think the issue is not resolved.

Issue History

Date Modified Username Field Change
2013-06-25 20:45 marcelbonnet New Issue
2013-06-25 20:49 marcelbonnet Note Added: 0015050
2013-07-12 02:03 paul Note Added: 0015091
2013-07-17 02:27 AxeTota Note Added: 0015127
2013-07-25 14:41 marcelbonnet Note Added: 0015180
2013-07-25 14:41 marcelbonnet Status new => resolved
2013-07-25 14:41 marcelbonnet Resolution open => fixed
2013-07-25 14:41 marcelbonnet Assigned To => marcelbonnet
2020-04-19 20:16 system Note Added: 0023248
2020-04-19 20:16 system Status resolved => closed