make: *** [all] Error 2 when building Trilinos - makefile

I am trying to build Trilinos from source on Kubuntu 14.04 as a prerequisite to installing Peridigm. I am following the build instructions here and am using this configuration script suggested for Peridigm.
Configuration works fine, but when I try to actually build Trilinos using make I end up with the following error:
Linking CXX static library libpamgen.a
[ 24%] Built target pamgen
make: *** [all] Error 2
I am rather new to Linux and have virtually no experience in manually building libraries. Any help in making sense of this would be greatly appreciated.
EDIT:
Here is the output from make VERBOSE=1 right before the error as requested by #EtanReisner:
/usr/local/lib/trilinos/trilinos-11.4.3-Source/packages/epetra/src/Epetra_Import_Util.cpp: In instantiation of ‘int Epetra_Import_Util::TLowCommunicationMakeColMapAndReindex(int, const int*, int*, const int_type*, const Epetra_Map&, const int*, bool, std::vector<int, std::allocator<int> >&, MapType1&) [with int_type = long long int; MapType1 = Epetra_BlockMap; MapType2 = Epetra_Map]’:
/usr/local/lib/trilinos/trilinos-11.4.3-Source/packages/epetra/src/Epetra_Import_Util.cpp:700:198: required from here
/usr/local/lib/trilinos/trilinos-11.4.3-Source/packages/epetra/src/Epetra_Import_Util.cpp:639:10: warning: variable ‘ElementSizeList’ set but not used [-Wunused-but-set-variable]
/usr/local/lib/trilinos/trilinos-11.4.3-Source/packages/epetra/src/Epetra_MultiVector.cpp: In member function ‘int Epetra_MultiVector::Abs(const Epetra_MultiVector&)’:
/usr/local/lib/trilinos/trilinos-11.4.3-Source/packages/epetra/src/Epetra_MultiVector.cpp:1172:63: internal compiler error: in prepare_cmp_insn, at optabs.c:4190
for (int j=0; j < myLength; j++) to[j] = std::abs(from[j]);
^
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.8/README.Bugs> for instructions.
Preprocessed source stored into /tmp/ccxuxXUm.out file, please attach this to your bugreport.
make[2]: *** [packages/epetra/src/CMakeFiles/epetra.dir/Epetra_MultiVector.cpp.o] Error 1
make[1]: *** [packages/epetra/src/CMakeFiles/epetra.dir/all] Error 2
make: *** [all] Error 2

Related

fblualib installation in Ubunt16.04

I am trying to install fblualib from this link.
When I run ./install_all.sh inside fblualib, I have errors as
+ echo Building folly
Building folly
+ echo
+ cd /tmp/fblualib-build.zofU4g/folly/folly
+ autoreconf -ivf
autoreconf: 'configure.ac' or 'configure.in' is required
According to last discussion here, there is a discussion as "autotools based build system has been removed from Folly in favor of CMake, so you'll need to build Folly with CMake rather than autotools." so I go to folly folder
/tmp/fblualib-build.zofU4g/folly/build and try to build using `cmake`.
Then I have errors as
[ 36%] Building CXX object CMakeFiles/folly_base.dir/folly/detail/ThreadLocalDetail.cpp.o
In file included from /tmp/fblualib-build.zofU4g/folly/folly/detail/ThreadLocalDetail.h:33:0,
from /tmp/fblualib-build.zofU4g/folly/folly/detail/ThreadLocalDetail.cpp:16:
/tmp/fblualib-build.zofU4g/folly/folly/SharedMutex.h: In static member function ‘static void folly::threadlocal_detail::StaticMetaBase::onThreadExit(void*)’:
/tmp/fblualib-build.zofU4g/folly/folly/SharedMutex.h:457:33: error: ‘*((void*)& rlock +10)’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
!tryUnlockSharedDeferred(token.slot_)) {
^
/tmp/fblualib-build.zofU4g/folly/folly/detail/ThreadLocalDetail.cpp:169:31: note: ‘*((void*)& rlock +10)’ was declared here
SharedMutex::ReadHolder rlock(nullptr);
^
cc1plus: all warnings being treated as errors
CMakeFiles/folly_base.dir/build.make:1886: recipe for target 'CMakeFiles/folly_base.dir/folly/detail/ThreadLocalDetail.cpp.o' failed
make[2]: *** [CMakeFiles/folly_base.dir/folly/detail/ThreadLocalDetail.cpp.o] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/folly_base.dir/all' failed
make[1]: *** [CMakeFiles/folly_base.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2
The error is happening in SharedMutex.h, what could be worng>

Can't launch Artery example

I have compiled veins, vanetza, inet and artery but I'm not able to launch the Artery example. Under the Artery root directory, I did the following:
cd build make run_example
The following error happens:
<!> Error: Cannot load library '/home/renault/artery/build/src/artery/envmod/libartery_envmod.so': /usr/local/lib/libvanetza_security.so: undefined symbol: _ZN8CryptoPP10RandomPool34GenerateIntoBufferedTransformationERNS_22BufferedTransformationERKSsy
End.
scenarios/artery/CMakeFiles/run_example.dir/build.make:57: recipe for target 'scenarios/artery/CMakeFiles/run_example' failed
make[3]: *** [scenarios/artery/CMakeFiles/run_example] Error 1
CMakeFiles/Makefile2:644: recipe for target 'scenarios/artery/CMakeFiles/run_example.dir/all' failed
make[2]: *** [scenarios/artery/CMakeFiles/run_example.dir/all] Error 2
CMakeFiles/Makefile2:651: recipe for target 'scenarios/artery/CMakeFiles/run_example.dir/rule' failed
make[1]: *** [scenarios/artery/CMakeFiles/run_example.dir/rule] Error 2
Makefile:274: recipe for target 'run_example' failed
make: *** [run_example] Error 2
I'm on ubuntu with crypto++ 5.6.1 installed
Thanks
The error message tells you that the given symbol could not be found. Using c++filt, you can find out that the symbol is the following:
CryptoPP::RandomPool::GenerateIntoBufferedTransformation(CryptoPP::BufferedTransformation&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long long)
This could indicate that you declared this method somewhere - probably in a header file - but did not provide an implementation for it (in the corresponding .cc file).
See also:
opp_run error on omnetpp IDE
What is an undefined reference/unresolved external symbol error and how do I fix it?

Undefined reference to cv::redirectError while creating shared build of OpenCV 3.1 with Mingw

Programs and versions: Windows 10, Mingw32 with gcc 6.1.0, Cmake 3.6.1, (Code::blocks 16.01)
First of all, I should mention that building a static build does work perfectly, just building a shared build does not work and I don't find workarounds for my specific problem.
I tried to build OpenCV3.1 with the abovementioned programs as shared build. Using cmake's default settings, I get following error:
[ 34%] Linking CXX executable ..\..\bin\opencv_test_core.exe
../../lib/libopencv_ts310.a(ts.cpp.obj):ts.cpp:(.text$_ZN6cvtest2TS4initERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x119): undefined reference to `cv::redirectError(int (*)(int, char const*, char const*, char const*, int, void*), void*, void**)'
collect2.exe: error: ld returned 1 exit status
modules\core\CMakeFiles\opencv_test_core.dir\build.make:885: recipe for target 'bin/opencv_test_core.exe' failed
mingw32-make[2]: *** [bin/opencv_test_core.exe] Error 1
CMakeFiles\Makefile2:1713: recipe for target 'modules/core/CMakeFiles/opencv_test_core.dir/all' failed
mingw32-make[1]: *** [modules/core/CMakeFiles/opencv_test_core.dir/all] Error 2
Makefile:159: recipe for target 'all' failed
mingw32-make: *** [all] Error 2
Default settings in my case means (among others): BUILD_TBB = off, BUILD_WITH_DYNAMIC_IPP = off, BUILD_opencv_world = off, ENALBE_OMIT_FRAME_POINTER = on, ENABLE_SSE/SSE2/SSE3 = on, WITH_IPP and WITH_IPP_A = off (as this seems to cause a common problem in some cases when activated).
The question now is: What does that error mean and how to fix it?
Obviously some function is missing: undefined reference to `cv::redirectError(int (*)(int, char const*, char const*, char const*, int, void*), void*, void**). Searching the source code gives some definitions of this function in
system.cpp: Line 662: redirectError( CvErrorCallback errCallback, void* userdata, void** prevUserdata)
utility.hpp: Line 174: CV_EXPORTS ErrorCallback redirectError( ErrorCallback errCallback, void* userdata=0, void** prevUserdata=0);
But the undefined reference wants some int an char pointers as parameters, but I don't find such a function in any source file.
When deactivating BUILD_EXAMPLES/PERF_TESTS/TESTS (as suggested somewhere else) this does not fix the problem, but gives the same problem later on:
[ 95%] Linking CXX shared library ..\..\bin\libopencv_calib3d310.dll
CMakeFiles\opencv_calib3d.dir/objects.a(calibinit.cpp.obj):calibinit.cpp:(.text$_ZN2cv15findCirclesGridERKNS_11_InputArrayENS_5Size_IiEERKNS_12_OutputArrayEiRKNS_3PtrINS_9Feature2DEEE+0x426): undefined reference to `cv::redirectError(int (*)(int, char const*, char const*, char const*, int, void*), void*, void**)'
CMakeFiles\opencv_calib3d.dir/objects.a(calibinit.cpp.obj):calibinit.cpp:(.text$_ZN2cv15findCirclesGridERKNS_11_InputArrayENS_5Size_IiEERKNS_12_OutputArrayEiRKNS_3PtrINS_9Feature2DEEE+0x44d): undefined reference to `cv::redirectError(int (*)(int, char const*, char const*, char const*, int, void*), void*, void**)'
collect2.exe: error: ld returned 1 exit status
modules\calib3d\CMakeFiles\opencv_calib3d.dir\build.make:787: recipe for target 'bin/libopencv_calib3d310.dll' failed
mingw32-make[2]: *** [bin/libopencv_calib3d310.dll] Error 1
CMakeFiles\Makefile2:3634: recipe for target 'modules/calib3d/CMakeFiles/opencv_calib3d.dir/all' failed
mingw32-make[1]: *** [modules/calib3d/CMakeFiles/opencv_calib3d.dir/all] Error 2
Makefile:159: recipe for target 'all' failed
mingw32-make: *** [all] Error 2
I havn't found any bug report or something else regarding this error.
Got the same problem. I've solved it with replacing cv::redirectError with cvRedirectError in ts.cpp as it was before this patch
What I did is I altered redirectError() implementation signature in core/src/system.cpp to use ErrorCallback instead of CvErrorCallback for both an argument and the return value type, to match its declaration signature. Not sure why that matters though, as the both typedefs look identical; it helped nevertheless.

Problems compiling Ruby

I am trying to install Gitlab CI on a virtual machine, and I am following this instructions to do so.
The point #2 is about installing and compiling ruby. When I execute the command make I encounter at the end of the process the following error messages:
make[2]: Entering directory `/tmp/ruby/ruby-2.0.0-p353/ext/pty'
compiling pty.c
pty.c: In function ‘chfunc’:
pty.c:143:12: warning: ignoring return value of ‘seteuid’, declared with attribute warn_unused_result [-Wunused-result]
seteuid(getuid());
^
linking shared-object pty.so
installing default pty libraries
make[2]: Leaving directory `/tmp/ruby/ruby-2.0.0-p353/ext/pty'
make[2]: Entering directory `/tmp/ruby/ruby-2.0.0-p353/ext/racc/cparse'
compiling cparse.c
linking shared-object racc/cparse.so
installing default cparse libraries
make[2]: Leaving directory `/tmp/ruby/ruby-2.0.0-p353/ext/racc/cparse'
make[2]: Entering directory `/tmp/ruby/ruby-2.0.0-p353/ext/readline'
compiling readline.c
readline.c: In function ‘Init_readline’:
readline.c:1886:26: error: ‘Function’ undeclared (first use in this function)
rl_pre_input_hook = (Function *)readline_pre_input_hook;
^
readline.c:1886:26: note: each undeclared identifier is reported only once for each function it appears in
readline.c:1886:36: error: expected expression before ‘)’ token
rl_pre_input_hook = (Function *)readline_pre_input_hook;
^
readline.c: At top level:
readline.c:530:1: warning: ‘readline_pre_input_hook’ defined but not used [-Wunused-function]
readline_pre_input_hook(void)
^
make[2]: *** [readline.o] Error 1
make[2]: Leaving directory `/tmp/ruby/ruby-2.0.0-p353/ext/readline'
make[1]: *** [ext/readline/all] Error 2
make[1]: Leaving directory `/tmp/ruby/ruby-2.0.0-p353'
make: *** [build-ext] Error 2
Here is a more long log: http://pastebin.com/m6wzLVd9
What can I do to solve this problem?
It appears to be this bug https://bugs.ruby-lang.org/issues/9578. I think you need the most stable version of ruby.

Gearman installation in windows

i've been working on this for days, and I really don't have any clue to what's going on
I'm trying to install gearman on windows and followed EXACTLY what's on this link:
http://www.phpvs.net/2010/11/30/installing-gearman-and-gearmand-on-windows-with-cygwin/
However, no luck. I've installed libevent and i'm on installation of gearman:
I've only managed to execute ./configure on cygwin.
After that, using make :
make -j2 all-am
make[1]: Entering directory '/cygdrive/c/gearman'
CXX libgearman/libgearman_libgearman_la-error.lo
libgearman/error.cc: In function 'gearman_return_t gearman_universal_set_perror(gearman_universal_st&, gearman_return_t, int, const char*, const char*, const char*, ...)':
libgearman/error.cc:218:83: error: 'strerror_r' was not declared in this scope
errmsg_ptr= strerror_r(universal._error.system_error(), errmsg, sizeof(errmsg));
^
Makefile:6247: recipe for target 'libgearman/libgearman_libgearman_la-error.lo' failed
make[1]: *** [libgearman/libgearman_libgearman_la-error.lo] Error 1
make[1]: Leaving directory '/cygdrive/c/gearman'
Makefile:3050: recipe for target 'all' failed
make: *** [all] Error 2
This comes on, and I don't know what I've done wrong. I need help on this. Thanks!

Resources