Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

deal.II with TBB on Windows: problems with muparser (and image size) #7909

Closed
vdilecce opened this issue Apr 10, 2019 · 2 comments
Closed

deal.II with TBB on Windows: problems with muparser (and image size) #7909

vdilecce opened this issue Apr 10, 2019 · 2 comments
Labels

Comments

@vdilecce
Copy link

In order to use deal.II with TBB on Windows, I found that I could not force DEAL_II_WITH_THREADS=ON due to lack of pthread on Windows. However, I managed to configure deal.II with TBB on Windows using precompiled TBB from here, with directory structure manually rearranged to help the CMake find module.

However, deal.II does not build, apparently due to problems with muparser:

WARNINGS:
"E:\software\dealii\dealii\build-msvs\ALL_BUILD.vcxproj" (destinazione predefinita) (1) ->
"E:\software\dealii\dealii\build-msvs\source\deal_II.g.vcxproj" (destinazione predefinita) (6) ->
"E:\software\dealii\dealii\build-msvs\source\grid\obj_grid_debug.vcxproj" (destinazione predefinita) (24) ->
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\memory(2127):
warning C4150: deletion of pointer to incomplete type 'mu::Parser'; no destructor called [E:\software\dealii\dea
lii\build-msvs\source\grid\obj_grid_debug.vcxproj]
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\memory(2127):
warning C4150: deletion of pointer to incomplete type 'mu::Parser'; no destructor called [E:\software\dealii\dea
lii\build-msvs\source\grid\obj_grid_debug.vcxproj]

ERRORS:
"E:\software\dealii\dealii\build-msvs\ALL_BUILD.vcxproj" (destinazione predefinita) (1) ->
"E:\software\dealii\dealii\build-msvs\source\deal_II.vcxproj" (destinazione predefinita) (3) ->
"E:\software\dealii\dealii\build-msvs\source\grid\obj_grid_release.vcxproj" (destinazione predefinita) (58) ->
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\memory(2125):
error C2027: use of undefined type 'mu::Parser' [E:\software\dealii\dealii\build-msvs\source\grid\obj_grid_relea
se.vcxproj]
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\memory(2125):
error C2338: can't delete an incomplete type [E:\software\dealii\dealii\build-msvs\source\grid\obj_grid_release.
vcxproj]
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\memory(2125):
error C2027: use of undefined type 'mu::Parser' [E:\software\dealii\dealii\build-msvs\source\grid\obj_grid_relea
se.vcxproj]
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\memory(2125):
error C2338: can't delete an incomplete type [E:\software\dealii\dealii\build-msvs\source\grid\obj_grid_release.
vcxproj]

Errors like these happen on many targets, both in debug and release: however, if deal.II is configured with DEAL_II_WITH_MUPARSER=OFF, build succeeds.

I wonder what could be the problem... maybe some library build order issue? (no problems on Linux, by the way).

Additionally, I report here that on Windows deal.II with external TBB (and without muparser) builds only in Release: in Debug, I get the LNK1248 error (debug library exceeds 4 GB). This a problem since applications using deal.II cannot be built in debug due to _ITERATOR_DEBUG_LEVEL mismatch (deal.II is built with flag /MDd in debug). I think I found a workaround for now by specifying DEAL_II_CXX_FLAGS_DEBUG="/O1" when configuring deal.II (that is, overwriting default flag /Od and generating therefore a smaller object, sort of mimicking a "RelWithDebInfo" configuration.

@masterleinad
Copy link
Member

I didn't have any problems using Visual Studio 2019.

@vdilecce
Copy link
Author

Closing because outdated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants