2017-05-11 26 views
0

我試圖編譯Apache Ignite 2.0 C++。我正在從目錄/opt/apache-ignite-2.0.0-src/modules/platforms/cpp運行make。我已經編譯了所有Java代碼,並且可以啓動Apache Ignite。但是,C++不能編譯。看來我必須通過C++代碼來解決這個問題。apache點燃2.0在osx上的C++不能編譯

我得到運行make時的錯誤:

/Applications/Xcode.app/Contents/Developer/usr/bin/make all-recursive 
Making all in common 
Making all in include 
make[3]: Nothing to be done for `all'. 
Making all in os/linux/include 
make[3]: Nothing to be done for `all'. 
make[3]: Nothing to be done for `all-am'. 
Making all in binary 
Making all in include 
make[3]: Nothing to be done for `all'. 
    CXX  src/binary/binary_containers.lo 
In file included from src/binary/binary_containers.cpp:18: 
In file included from ./include/ignite/binary/binary_containers.h:30: 
In file included from ./include/ignite/impl/binary/binary_writer_impl.h:35: 
In file included from ./include/ignite/impl/binary/binary_object_impl.h:31: 

./include/ignite/impl/binary/binary_reader_impl.h:986:58: error: variable has incomplete type 'ignite::binary::BinaryReader' 
          ignite::binary::BinaryReader reader(&readerImpl); 
                 ^
./include/ignite/binary/binary_type.h:135:15: note: forward declaration of 'ignite::binary::BinaryReader' 
     class BinaryReader; 
     ^
In file included from src/binary/binary_containers.cpp:18: 
In file included from ./include/ignite/binary/binary_containers.h:30: 
./include/ignite/impl/binary/binary_writer_impl.h:702:54: error: variable has incomplete type 'ignite::binary::BinaryWriter' 
         ignite::binary::BinaryWriter writer(&writerImpl); 
                ^
./include/ignite/binary/binary_type.h:134:15: note: forward declaration of 'ignite::binary::BinaryWriter' 
     class BinaryWriter; 
     ^
2 errors generated. 
make[3]: *** [src/binary/binary_containers.lo] Error 1 
make[2]: *** [all-recursive] Error 1 
make[1]: *** [all-recursive] Error 1 
make: *** [all] Error 2 

回答

1

這很可能是因爲你正在使用clang ++來編譯點火。

原因本身被解釋 in a different SO question:Apache Ignite C++代碼是錯誤的(它有一個錯誤),但它碰巧有些編譯器不檢測並報告問題。

一個解決方案(除了修改點燃源代碼)將使用g ++。 OSX指令爲in a different SO question