Compile errors while trying to build with Windows build of calligrasheetscommon

Marijn Kruisselbrink mkruisselbrink at kde.org
Thu Dec 13 20:48:09 GMT 2012


Old versions of MSVC did not include a definition of atanh (I'm not sure if
newer versions do, but at least MSVC 2012 seems to). When building kde
applications on windows, wrapper headers are used that make sure among
others this symbol exist too (see
https://projects.kde.org/projects/kdesupport/kdewin/repository/revisions/master/entry/include/msvc/math.h#L204
for
example). If you have kdewin, by making sure that its msvc/math.h is found
before msvc's this error should go away...

Marijn

On Thu, Dec 13, 2012 at 12:31 AM, Philip Van Hoof <philip at codeminded.be>wrote:

> Hi there,
>
> I worked around these issues while building our application against
> Calligra's Sheets component:
>
> I could copy and paste assetfactory.cpp but it comes down to a include
> that ends up including Number.h. Not sure what that stuff with kglobal.h
> is, I just added a typedef for mode_t as a workaround.
>
> I would think that sys/types.h would do this on Win32, but apparently
> not.
>
> [  1%] Building CXX object
> qframework/CMakeFiles/qframework.dir/assetfactory.cpp.obj
> assetfactory.cpp
> R:\include\kglobal.h(397) : error C2146: syntax error : missing ';' before
> identifier 'umask'
> R:\include\kglobal.h(397) : error C4430: missing type specifier - int
> assumed. Note: C++ does not support default-int
> R:\include\kglobal.h(397) : error C4430: missing type specifier - int
> assumed. Note: C++ does not support default-int
> c:\users\root\kde4\inst\include\sheets\Number.h(65) : error C2039: 'atanh'
> : is not a member of '`global namespace''
> c:\users\root\kde4\inst\include\sheets\Number.h(65) : error C3861:
> 'atanh': identifier not found
> jom: W:\repos\q-bix-build\qframework\CMakeFiles\qframework.dir\build.make
> [qframework\CMakeFiles\qframework.dir\assetfactory.cpp.obj] Error 2
> jom: W:\repos\q-bix-build\CMakeFiles\Makefile2
> [qframework\CMakeFiles\qframework.dir\all] Error 2
> jom: W:\repos\q-bix-build\Makefile [all] Error 2
>
> W:\repos\q-bix-build>jom
>
> jom 1.0.12 - empower your cores
>
> [  0%] Building CXX object
> qframework/CMakeFiles/qframework.dir/assetfactory.cpp.obj
> assetfactory.cpp
> c:\users\root\kde4\inst\include\sheets\Number.h(65) : error C2039: 'atanh'
> : is not a member of '`global namespace''
> c:\users\root\kde4\inst\include\sheets\Number.h(65) : error C3861:
> 'atanh': identifier not found
> jom: W:\repos\q-bix-build\qframework\CMakeFiles\qframework.dir\build.make
> [qframework\CMakeFiles\qframework.dir\assetfactory.cpp.obj] Error 2
> jom: W:\repos\q-bix-build\CMakeFiles\Makefile2
> [qframework\CMakeFiles\qframework.dir\all] Error 2
> jom: W:\repos\q-bix-build\Makefile [all] Error 2
>
> W:\repos\q-bix-build>jom
>
> Kind regards,
>
> Philip
>
> --
>
>
> Philip Van Hoof
> Software developer
> Codeminded BVBA - http://codeminded.be
>
> _______________________________________________
> calligra-devel mailing list
> calligra-devel at kde.org
> https://mail.kde.org/mailman/listinfo/calligra-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/calligra-devel/attachments/20121213/b9035aab/attachment.htm>


More information about the calligra-devel mailing list