Open subwaystation opened 7 years ago
Is there a solution to this problem yet?
I ran in to the same errors and couldn't find a way to resolve them...
I built sailfish on Arch by using the tbb library distributed with the system. Install the intel-tbb
package with pacman, reconfigure and you should be good to go.
Well, almost good, I had to apply the following patch to compile properly, to fix a totally different error (a conflict with the macro CHAR_WIDTH):
diff --git a/include/spdlog/details/format.cc b/include/spdlog/details/format.cc
index dde4aa5..ca1c921 100644
--- a/include/spdlog/details/format.cc
+++ b/include/spdlog/details/format.cc
@@ -480,23 +480,23 @@ public:
typedef typename BasicWriter<Char>::CharPtr CharPtr;
Char fill = internal::CharTraits<Char>::cast(spec_.fill());
CharPtr out = CharPtr();
- const unsigned CHAR_WIDTH = 1;
- if (spec_.width_ > CHAR_WIDTH) {
+ const unsigned _CHAR_WIDTH = 1;
+ if (spec_.width_ > _CHAR_WIDTH) {
out = writer_.grow_buffer(spec_.width_);
if (spec_.align_ == ALIGN_RIGHT) {
- std::fill_n(out, spec_.width_ - CHAR_WIDTH, fill);
- out += spec_.width_ - CHAR_WIDTH;
+ std::fill_n(out, spec_.width_ - _CHAR_WIDTH, fill);
+ out += spec_.width_ - _CHAR_WIDTH;
}
else if (spec_.align_ == ALIGN_CENTER) {
out = writer_.fill_padding(out, spec_.width_,
- internal::check(CHAR_WIDTH), fill);
+ internal::check(_CHAR_WIDTH), fill);
}
else {
- std::fill_n(out + CHAR_WIDTH, spec_.width_ - CHAR_WIDTH, fill);
+ std::fill_n(out + _CHAR_WIDTH, spec_.width_ - _CHAR_WIDTH, fill);
}
}
else {
- out = writer_.grow_buffer(CHAR_WIDTH);
+ out = writer_.grow_buffer(_CHAR_WIDTH);
}
*out = internal::CharTraits<Char>::cast(value);
}
Hope this helps.
Hi@all, I tried to build sailfish on ArchLinux, but I get stuck here:
[ 40%] Performing build step for 'libtbb' cd /home/heumos/git/sailfish/external/tbb43_20140724oss && make "CXXFLAGS= -UDO_ITT_NOTIFY" lambdas=1 compiler=gcc cfg=release tbb_build_prefix=LIBS make[3]: Entering directory '/home/heumos/git/sailfish/external/tbb43_20140724oss' Created ./build/LIBS_release and ..._debug directories make -C "./build/LIBS_debug" -r -f ../../build/Makefile.tbb cfg=debug make[4]: Entering directory '/home/heumos/git/sailfish/external/tbb43_20140724oss/build/LIBS_debug' ../../build/Makefile.tbb:31: CONFIG: cfg=debug arch=intel64 compiler=gcc target=linux runtime=cc7.1.1_libc2.25_kernel4.12.3 g++ -o pipeline.o -c -MMD -DTBB_USE_DEBUG -DDO_ITT_NOTIFY -g -O0 -DUSE_PTHREAD -m64 -fPIC -D__TBB_BUILD=1 -Wall -Wno-parentheses -Wno-non-virtual-dtor -UDO_ITT_NOTIFY -std=c++0x -D_TBB_CPP0X -I../../src -I../../src/rml/include -I../../include ../../src/tbb/pipeline.cpp In file included from ../../src/tbb/pipeline.cpp:21:0: ../../include/tbb/pipeline.h:328:74: error: ‘has_trivial_copy_constructor’ is not a member of ‘std’ template<typename T> struct tbb_trivially_copyable { enum { value = std::has_trivial_copy_constructor<T>::value }; }; ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../include/tbb/pipeline.h:328:74: note: suggested alternative: ‘is_trivially_copy_constructible’ template<typename T> struct tbb_trivially_copyable { enum { value = std::has_trivial_copy_constructor<T>::value }; }; ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ is_trivially_copy_constructible ../../include/tbb/pipeline.h:328:104: error: expected primary-expression before ‘>’ token template<typename T> struct tbb_trivially_copyable { enum { value = std::has_trivial_copy_constructor<T>::value }; }; ^ ../../include/tbb/pipeline.h:328:107: error: ‘::value’ has not been declared template<typename T> struct tbb_trivially_copyable { enum { value = std::has_trivial_copy_constructor<T>::value }; }; ^~~~~ make[4]: *** [../../build/common_rules.inc:77: pipeline.o] Error 1 make[4]: Leaving directory '/home/heumos/git/sailfish/external/tbb43_20140724oss/build/LIBS_debug' make[3]: *** [Makefile:32: tbb] Error 2 make[3]: Leaving directory '/home/heumos/git/sailfish/external/tbb43_20140724oss' make[2]: *** [CMakeFiles/libtbb.dir/build.make:115: libtbb-prefix/src/libtbb-stamp/libtbb-build] Error 2 make[2]: Leaving directory '/home/heumos/git/sailfish/build' make[1]: *** [CMakeFiles/Makefile2:219: CMakeFiles/libtbb.dir/all] Error 2 make[1]: Leaving directory '/home/heumos/git/sailfish/build' make: *** [Makefile:166: all] Error 2
I used the following building commands to build sailfish:cmake -DFETCH_BOOST=TRUE ../
make
Any help would be appreciated! All the best, Simon