kripken/emscripten — Issue #271: can not compile OpenMesh
Author: bompo
Created: 2012-02-23 10:57:19+00:00
State: open

Compiling of OpenMesh (http://www.openmesh.org/) fails.

I added the following lines to the cmake.txt:

```bash
SET(CMAKE_C_COMPILER "/home/stefanw/emscripten/emcc")
SET(CMAKE_CXX_COMPILER "/home/stefanw/emscripten/emcc")
```
after that I called "cmake .. && make"

```bash
stefanw@ubuntu:~/Downloads/OpenMesh-2.1/build$ make
Scanning dependencies of target OpenMeshCore
[ 1%] Building CXX object src/OpenMesh/Core/CMakeFiles/OpenMeshCore.dir/Geometry/NormalConeT.cc.o
[ 2%] Building CXX object src/OpenMesh/Core/CMakeFiles/OpenMeshCore.dir/IO/BinaryHelper.cc.o
[ 3%] Building CXX object src/OpenMesh/Core/CMakeFiles/OpenMeshCore.dir/IO/OMFormat.cc.o
In file included from /home/stefanw/Downloads/OpenMesh-2.1/src/OpenMesh/Core/IO/OMFormat.cc:51:
In file included from /home/stefanw/Downloads/OpenMesh-2.1/src/OpenMesh/Core/../../OpenMesh/Core/IO/OMFormat.hh:51:
In file included from /home/stefanw/Downloads/OpenMesh-2.1/src/OpenMesh/Core/../../OpenMesh/Core/IO/SR_store.hh:57:
/home/stefanw/Downloads/OpenMesh-2.1/src/OpenMesh/Core/../../OpenMesh/Core/IO/SR_rbo.hh:92:3: error:
implicit instantiation of undefined template 'OpenMesh::GenProg::AssertCompile'
assert_compile(false);
^
/home/stefanw/Downloads/OpenMesh-2.1/src/OpenMesh/Core/../../OpenMesh/Core/Utils/GenProg.hh:154:45: note: expanded from:
#define assert_compile(EXPR) GenProg::AssertCompile<(EXPR)>();
^
/home/stefanw/Downloads/OpenMesh-2.1/src/OpenMesh/Core/../../OpenMesh/Core/Utils/GenProg.hh:82:29: note:
template is declared here
template struct AssertCompile;
^
In file included from /home/stefanw/Downloads/OpenMesh-2.1/src/OpenMesh/Core/IO/OMFormat.cc:51:
In file included from /home/stefanw/Downloads/OpenMesh-2.1/src/OpenMesh/Core/../../OpenMesh/Core/IO/OMFormat.hh:51:
In file included from /home/stefanw/Downloads/OpenMesh-2.1/src/OpenMesh/Core/../../OpenMesh/Core/IO/SR_store.hh:57:
/home/stefanw/Downloads/OpenMesh-2.1/src/OpenMesh/Core/../../OpenMesh/Core/IO/SR_rbo.hh:90:37: warning:
unused parameter '_val' [-Wunused-parameter]
void _reverse_byte_order_N(uint8_t* _val)
^
/home/stefanw/Downloads/OpenMesh-2.1/src/OpenMesh/Core/../../OpenMesh/Core/IO/SR_rbo.hh:159:3: error:
implicit instantiation of undefined template 'OpenMesh::GenProg::AssertCompile'
assert_compile(false);
^
/home/stefanw/Downloads/OpenMesh-2.1/src/OpenMesh/Core/../../OpenMesh/Core/Utils/GenProg.hh:154:45: note: expanded from:
#define assert_compile(EXPR) GenProg::AssertCompile<(EXPR)>();
^
/home/stefanw/Downloads/OpenMesh-2.1/src/OpenMesh/Core/../../OpenMesh/Core/Utils/GenProg.hh:82:29: note:
template is declared here
template struct AssertCompile;
^
1 warning and 2 errors generated.
emcc: compiler frontend failed to generate LLVM bitcode, halting
make[2]: *** [src/OpenMesh/Core/CMakeFiles/OpenMeshCore.dir/IO/OMFormat.cc.o] Error 1
make[1]: *** [src/OpenMesh/Core/CMakeFiles/OpenMeshCore.dir/all] Error 2
make: *** [all] Error 2
```

Did I something wrong or isn't it possible to compile OpenMesh with emscripten? :/
Simple helloworld examples compile fine with emscripten and OpenMesh compiles fine with normal gcc but not with emscripten.