In summary, there seems to confusion between boost::bind and std::tr1::bind in MSVC2010. I managed to find this thread which is mostly on the subject:
http://www.mail-archive.com/[email protected]/msg160615.html The messages towards the end seemed to indicate that the problem was fixed in LyX 1.6.7 (although Joost never gave final confirmation, as far as I can see). So is there something I can do to enable the fix? Thanks, Jim ----- Original Message ---- > From: Jim Oldfield <[email protected]> > To: Lyx Devel <[email protected]> > Sent: Fri, 19 November, 2010 15:21:01 > Subject: Build error on Windows - ambiguous > > Hi, > > > I'm trying to build LyX on Windows, using lyx-2.0.0beta1.tar.gz and the > instructions in INSTALL.WIN32. > > When I compile I get the error I've copied below (I just copied the start of > it). Does anyone know how to resolve it? Apologies if this has been > answered > > before, it's quite hard to search through the archives. > > One possibility: I downloaded Visual C++ 2010 Express from MS's website, but >the > > dependencies I downloaded from LyX's website lyx-windows-deps-msvc2008.zip. > Could this mismatch (2010 vs 2008) be the problem? > > Thanks, > Jim > > > Configuration > Host type: win32 > Special build flags: /nologo /EHsc /wd4819 /wd4996 /nologo /MD /O2 > C Compiler: cl > C Compiler flags: > C++ Compiler: cl > C++ Compiler LyX flags: /TP /Zc:wchar_t- > C++ Compiler flags: /TP /Zc:wchar_t- > Linker flags: /nologo > Linker user flags: /nologo > Build info: > Builing directory: #release/libs > Libraries paths: #release/libs > ..\..\lyx-windows-deps-msvc2008\lib > Boost libraries: ['included_boost_signals', > 'included_boost_regex'] > include search path: ..\..\lyx-windows-deps-msvc2008\include > Frontend: > Frontend: qt4 > Packaging: windows > LyX dir: ..\..\build-msvc > LyX files dir: C:\LyX\lyx-2.0.0beta1\build-msvc\Resources > > Building all targets recursively > scons: done reading SConscript files. > scons: Building targets ... > cl /Forelease\src\frontends\qt4\GuiAlert.obj /c > C:\LyX\lyx-2.0.0beta1\src\frontends\qt4\GuiAlert.cpp /TP /Zc:wchar_t- > /IC:\LyX\lyx-2.0.0beta1/boost /nologo /EHsc /wd4819 /wd4996 /nologo /MD /O2 > -DHAVE_CONFIG_H -DQT_NO_STL -DQT_NO_KEYWORDS -DQT_GUI_LIB > /IC:\LyX\lyx-2.0.0beta1\lyx-windows-deps-msvc2008\include /Irelease\src > /IC:\LyX\lyx-2.0.0beta1\src /IC:\LyX\lyx-2.0.0beta1\src > /IC:\LyX\lyx-2.0.0beta1\lyx-windows-deps-msvc2008\qt-4\include > /IC:\LyX\lyx-2.0.0beta1\lyx-windows-deps-msvc2008\qt-4\include\QtCore > /IC:\LyX\lyx-2.0.0beta1\lyx-windows-deps-msvc2008\qt-4\include\QtGui > /Irelease\src /IC:\LyX\lyx-2.0.0beta1\src /Irelease\src\images > /IC:\LyX\lyx-2.0.0beta1\src\images /Irelease\src\frontends > /IC:\LyX\lyx-2.0.0beta1\src\frontends /Irelease\src\frontends\qt4 > /IC:\LyX\lyx-2.0.0beta1\src\frontends\qt4 /Irelease\src\frontends\qt4\ui > /IC:\LyX\lyx-2.0.0beta1\src\frontends\qt4\ui > GuiAlert.cpp > c:\lyx\lyx-2.0.0beta1\src\frontends\qt4\InGuiThread.h(100) : error C2668: > 'boost::ref' : ambiguous call to overloaded function > C:\LyX\lyx-2.0.0beta1/boost\boost/ref.hpp(64): could be 'const > boost::reference_wrapper<T> boost::ref<P1>(T &)' > with > [ > T=const lyx::docstring, > P1=const lyx::docstring > ] > C:\Program Files (x86)\Microsoft Visual Studio > 10.0\VC\INCLUDE\xrefwrap(439): >or > > 'std::tr1::reference_wrapper<_Ty> std::tr1::ref<P1>(_Ty &)' [found using > argument-dependent lookup] > with > [ > _Ty=const lyx::docstring, > P1=const lyx::docstring > ] > while trying to match the argument list '(const lyx::docstring)' > C:\LyX\lyx-2.0.0beta1\src\frontends\qt4\GuiAlert.cpp(198) : see reference to > function template instantiation 'R > lyx::frontend::InGuiThread<R>::call<int(__cdecl *)(const lyx::docstring >&,const > > lyx::docstring &,int,int,const lyx::docstring &,const lyx::docstring &,const > lyx::docstring &,const lyx::docstring &),const lyx::docstring,const > lyx::docstring,int,int,const lyx::docstring,const lyx::docstring,const > lyx::docstring,const lyx::docstring>(F,P1 &,P2 &,P3 &,P4 &,P5 &,P6 &,P7 &,P8 >&)' > > being compiled > with > [ > R=int, > F=int (__cdecl *)(const lyx::docstring &,const lyx::docstring > &,int,int,const > lyx::docstring &,const lyx::docstring &,const lyx::docstring &,const > lyx::docstring &), > P1=const lyx::docstring, > P2=const lyx::docstring, > P3=int, > P4=int, > P5=const lyx::docstring, > P6=const lyx::docstring, > P7=const lyx::docstring, > P8=const lyx::docstring > ] > c:\lyx\lyx-2.0.0beta1\src\frontends\qt4\InGuiThread.h(100) : error C2668: > 'boost::ref' : ambiguous call to overloaded function > C:\LyX\lyx-2.0.0beta1/boost\boost/ref.hpp(64): could be 'const > boost::reference_wrapper<T> boost::ref<P1>(T &)' > with > [ > T=const lyx::docstring, > P1=const lyx::docstring > ] > C:\Program Files (x86)\Microsoft Visual Studio > 10.0\VC\INCLUDE\xrefwrap(439): >or > > 'std::tr1::reference_wrapper<_Ty> std::tr1::ref<P1>(_Ty &)' [found using > argument-dependent lookup] > with > [ > _Ty=const lyx::docstring, > P1=const lyx::docstring > ] > while trying to match the argument list '(const lyx::docstring)' > > > >
