No subject
Fri Feb 4 07:13:50 PST 2011
I pulled in all the latest changes from the git repository and ran into a
couple small problems in vcl (may be in other modules too, but they'll be
similar issues if so).
Firstly, since the move to boost::unordered_set from (if I remember
correctly) hash_map we have things like this cropping up:
Compiling: vcl/unx/headless/svptext.cxx
> /usr/local/src/libreoffice/clone/libs-gui/vcl/unx/headless/svptext.cxx: In
> member function 'virtual void PspKernInfo::Initialize() const':
> /usr/local/src/libreoffice/clone/libs-gui/vcl/unx/headless/svptext.cxx:197:
> error: 'class boost::unordered_set<ImplKernPairData,
> ExtraKernInfo::PairHash, ExtraKernInfo::PairEqual,
> std::allocator<ImplKernPairData> >' has no member named 'resize'
> dmake: Error code 1, while making '../../unxlngx6.pro/slo/svptext.obj'
>
Easy fix, just delete the resize statement.
Another problem, and another easy fix, is types like the following:
Compiling: vcl/unx/headless/svppspgraphics.cxx
> In file included from
> /usr/local/src/libreoffice/clone/libs-gui/vcl/unx/headless/svppspgraphics.hxx:33,
> from
> /usr/local/src/libreoffice/clone/libs-gui/vcl/unx/headless/svppspgraphics.cxx:32:
> ../../inc/vcl/fontmanager.hxx:401: error: wrong number of template
> arguments (1, should be 2)
> /usr/local/src/libreoffice/solver/330/
> unxlngx6.pro/inc/boost/detail/container_fwd.hpp:80: error: provided for
> 'template<class T, class Allocator> struct std::vector'
> ../../inc/vcl/fontmanager.hxx:658: error: wrong number of template
> arguments (1, should be 2)
> /usr/local/src/libreoffice/solver/330/
> unxlngx6.pro/inc/boost/detail/container_fwd.hpp:80: error: provided for
> 'template<class T, class Allocator> struct std::vector'
> /usr/local/src/libreoffice/clone/libs-gui/vcl/unx/headless/svppspgraphics.cxx:
> In static member function 'static void
> PspGraphics::DoGetGlyphWidths(psp::fontID, bool, Int32Vector&,
> Ucs2UIntMap&)':
> /usr/local/src/libreoffice/clone/libs-gui/vcl/unx/headless/svppspgraphics.cxx:1072:
> error: no matching function for call to
> 'psp::PrintFontManager::getGlyphWidths(psp::fontID&, bool&, std::vector<int,
> std::allocator<int> >&, std::map<short unsigned int, unsigned int,
> std::less<short unsigned int>, std::allocator<std::pair<const short unsigned
> int, unsigned int> > >&)'
> ../../inc/vcl/fontmanager.hxx:656: note: candidates are: void
> psp::PrintFontManager::getGlyphWidths(psp::fontID, bool, int&,
> std::map<short unsigned int, unsigned int, std::less<short unsigned int>,
> std::allocator<std::pair<const short unsigned int, unsigned int> > >&)
> dmake: Error code 1, while making '../../
> unxlngx6.pro/slo/svppspgraphics.obj'
>
Apparently (pointed out by JoeP) you just need to #include <vector> in order
to fix this issue, as apparently boost is somehow overriding std::vector but
explicitly including <vector> seems to fix the issue.
Chris Carpenter
--000e0cd1e5b65b84e7049b76cc21
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Hey everybody,<br><br>From talking in IRC it looks like this email is proba=
bly not really going to be needed, but just in case:<br><br>I pulled in all=
the latest changes from the git repository and ran into a couple small pro=
blems in vcl (may be in other modules too, but they'll be similar issue=
s if so).<br>
<br>Firstly, since the move to boost::unordered_set from (if I remember cor=
rectly) hash_map we have things like this cropping up:<br><br><blockquote s=
tyle=3D"margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204=
); padding-left: 1ex;" class=3D"gmail_quote">
Compiling: vcl/unx/headless/svptext.cxx<br>/usr/local/src/libreoffice/clone=
/libs-gui/vcl/unx/headless/svptext.cxx: In member function 'virtual voi=
d PspKernInfo::Initialize() const':<br>/usr/local/src/libreoffice/clone=
/libs-gui/vcl/unx/headless/svptext.cxx:197: error: 'class boost::unorde=
red_set<ImplKernPairData, ExtraKernInfo::PairHash, ExtraKernInfo::PairEq=
ual, std::allocator<ImplKernPairData> >' has no member named &=
#39;resize'<br>
dmake:=A0 Error code 1, while making '../../<a href=3D"http://unxlngx6.=
pro/slo/svptext.obj">unxlngx6.pro/slo/svptext.obj</a>'<br></blockquote>=
<br><br>Easy fix, just delete the resize statement.<br><br><br>Another prob=
lem, and another easy fix, is types like the following:<br>
<br><blockquote style=3D"margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid =
rgb(204, 204, 204); padding-left: 1ex;" class=3D"gmail_quote">Compiling: vc=
l/unx/headless/svppspgraphics.cxx<br>In file included from /usr/local/src/l=
ibreoffice/clone/libs-gui/vcl/unx/headless/svppspgraphics.hxx:33,<br>
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 from /usr/local/src/libreo=
ffice/clone/libs-gui/vcl/unx/headless/svppspgraphics.cxx:32:<br>../../inc/v=
cl/fontmanager.hxx:401: error: wrong number of template arguments (1, shoul=
d be 2)<br>/usr/local/src/libreoffice/solver/330/<a href=3D"http://unxlngx6=
.pro/inc/boost/detail/container_fwd.hpp:80">unxlngx6.pro/inc/boost/detail/c=
ontainer_fwd.hpp:80</a>: error: provided for 'template<class T, clas=
s Allocator> struct std::vector'<br>
../../inc/vcl/fontmanager.hxx:658: error: wrong number of template argument=
s (1, should be 2)<br>/usr/local/src/libreoffice/solver/330/<a href=3D"http=
://unxlngx6.pro/inc/boost/detail/container_fwd.hpp:80">unxlngx6.pro/inc/boo=
st/detail/container_fwd.hpp:80</a>: error: provided for 'template<cl=
ass T, class Allocator> struct std::vector'<br>
/usr/local/src/libreoffice/clone/libs-gui/vcl/unx/headless/svppspgraphics.c=
xx: In static member function 'static void PspGraphics::DoGetGlyphWidth=
s(psp::fontID, bool, Int32Vector&, Ucs2UIntMap&)':<br>/usr/loca=
l/src/libreoffice/clone/libs-gui/vcl/unx/headless/svppspgraphics.cxx:1072: =
error: no matching function for call to 'psp::PrintFontManager::getGlyp=
hWidths(psp::fontID&, bool&, std::vector<int, std::allocator<=
int> >&, std::map<short unsigned int, unsigned int, std::less&=
lt;short unsigned int>, std::allocator<std::pair<const short unsig=
ned int, unsigned int> > >&)'<br>
../../inc/vcl/fontmanager.hxx:656: note: candidates are: void psp::PrintFon=
tManager::getGlyphWidths(psp::fontID, bool, int&, std::map<short uns=
igned int, unsigned int, std::less<short unsigned int>, std::allocato=
r<std::pair<const short unsigned int, unsigned int> > >&=
)<br>
dmake:=A0 Error code 1, while making '../../<a href=3D"http://unxlngx6.=
pro/slo/svppspgraphics.obj">unxlngx6.pro/slo/svppspgraphics.obj</a>'<br=
></blockquote><br>Apparently (pointed out by JoeP) you just need to #includ=
e <vector> in order to fix this issue, as apparently boost is somehow=
overriding std::vector but explicitly including <vector> seems to fi=
x the issue.<br>
<br><br>Chris Carpenter<br>
--000e0cd1e5b65b84e7049b76cc21--
More information about the LibreOffice
mailing list