-
Notifications
You must be signed in to change notification settings - Fork 50
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
Cannot build grappa applications #278
Comments
Weird. These symbols should come from glibc which ought to be linked with any binary you build. Could you look at /home/rfvander/grappa/share/Grappa/grappa.mk and verify that GRAPPA_CXX is /opt/gcc/4.9.2/bin/g++? |
I checked and these are the related symbols in grappa.mk ############################################################################# compiler used to build Grappa############################################################################# MPI header paths should automatically be included in CXXFLAGS byCMake, so use the plain C++ compiler (but mpicxx should be fine too)GRAPPA_CXX=/opt/gcc/4.9.2/bin/g++ MPI libraries should automatically be included in CXXFLAGS byCMake, so use the plain C++ compiler (but mpicxx should be fine too)GRAPPA_CC=/opt/gcc/4.9.2/bin/g++ |
Super weird. I guess try adding "-lc" to the dynamic section of the libraries in that file as a temporary fix? It should be linked be default, though.... |
Sure, I’ll try that for now. Thanks. From: Jacob Nelson [mailto:[email protected]] Super weird. I guess try adding "-lc" to the dynamic section of the libraries in that file as a temporary fix? It should be linked be default, though.... — |
Sadly, no cigar. See below. [rfvander@esgmonster Synch_p2p]$ make p2p From: Jacob Nelson [mailto:[email protected]] Super weird. I guess try adding "-lc" to the dynamic section of the libraries in that file as a temporary fix? It should be linked be default, though.... — |
In the original build output, there was a line like:
What did it say for this build? |
I didn't capture that output myself. Does Grappa store it in a log file somewhere? |
There's a file CMakeCache.txt in build/Make+Release that has the values of many of these variables; send that to me through email and I'll see if I have any ideas. |
It's hard to tell much from the cache file. Try rebuilding with the flags |
Sadly, this did not change anything. From: Jacob Nelson [mailto:[email protected]] It's hard to tell much from the cache file. Try rebuilding with the flags --cc=$(which gcc) --cxx=$(which g++). Perhaps it's picking up a different version of g++ when building the library? — |
This is fixed by adding libunwind to grappa.mk manually, e.g.
This should not be necessary. While we are on the subject of linked libraries, why is graph500-generator linked statically with every Grappa program? Do any of the PRKs need to generate Graph500 inputs??? |
I am facing the same issue. In addition, the way from @jeffhammond didn't work for me. I manually modified the build/Make+Release/util/grappa.mk, but it still generates the same error.
|
When I was trying to compile grappa's applications, I got a HTTP 404 Not Found. It seems the link is dead. Any ideas will be appreciated. My working env: $ cd build/Make+Release (...omitted...)
Connected to gflags.googlecode.com (173.194.205.82) port 80 (#0) GET /files/gflags-2.0-no-svn-files.tar.gz HTTP/1.1 User-Agent: curl/7.35.0 Host: gflags.googlecode.com Accept: / The requested URL returned error: 404 Not Found Closing connection 0 make[2]: *** [third-party/build/stamps/gflags/third-party-gflags-download] Error 1 |
@JackChuang See #199. |
@jeffhammond |
Hi all, My steps and results are as follows: ./configure --cc=$(which gcc) --third-party-tarfile=cd /build/Make+Releasemake installsource install/bin/settings.shmake MapReduce_tests.exe_[ 7%] Built target graph500-generator |
I downloaded the latest version of grappa and am trying to build it using the instructions in build.md, but I am experiencing trouble. My environment is listed below.
[rfvander@esgmonster grappa-source]$ ruby -v
ruby 2.1.0p0 (2013-12-25 revision 44422) [x86_64-linux]
[rfvander@esgmonster grappa-source]$ cmake -version
cmake version 2.8.12.2
[rfvander@esgmonster grappa-source]$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/opt/gcc/4.9.2/libexec/gcc/x86_64-unknown-linux-gnu/4.9.2/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: /home/jrhammon/Work/GCC/gcc-4.9.2/configure --disable-multilib --enable-threads=posix --enable-checking=release --enable-__cxa_atexit --enable-languages=c,c++,fortran --with-tune=native --enable-bootstrap --enable-lto --prefix=/opt/gcc/4.9.2 --with-isl --with-cloog
Thread model: posix
gcc version 4.9.2 (GCC)
[rfvander@esgmonster Synch_p2p]$ g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/opt/gcc/4.9.2/libexec/gcc/x86_64-unknown-linux-gnu/4.9.2/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: /home/jrhammon/Work/GCC/gcc-4.9.2/configure --disable-multilib --enable-threads=posix --enable-checking=release --enable-__cxa_atexit --enable-languages=c,c++,fortran --with-tune=native --enable-bootstrap --enable-lto --prefix=/opt/gcc/4.9.2 --with-isl --with-cloog
Thread model: posix
gcc version 4.9.2 (GCC)
[rfvander@esgmonster grappa-source]$ mpicc -v
mpigcc for the Intel(R) MPI Library 5.1.2 for Linux*
Copyright(C) 2003-2015, Intel Corporation. All rights reserved.
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/opt/gcc/4.9.2/libexec/gcc/x86_64-unknown-linux-gnu/4.9.2/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: /home/jrhammon/Work/GCC/gcc-4.9.2/configure --disable-multilib --enable-threads=posix --enable-checking=release --enable-__cxa_atexit --enable-languages=c,c++,fortran --with-tune=native --enable-bootstrap --enable-lto --prefix=/opt/gcc/4.9.2 --with-isl --with-cloog
Thread model: posix
gcc version 4.9.2 (GCC)
[rfvander@esgmonster grappa-source]$ mpicxx -v
mpigxx for the Intel(R) MPI Library 5.1.2 for Linux*
Copyright(C) 2003-2015, Intel Corporation. All rights reserved.
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/opt/gcc/4.9.2/libexec/gcc/x86_64-unknown-linux-gnu/4.9.2/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: /home/jrhammon/Work/GCC/gcc-4.9.2/configure --disable-multilib --enable-threads=posix --enable-checking=release --enable-__cxa_atexit --enable-languages=c,c++,fortran --with-tune=native --enable-bootstrap --enable-lto --prefix=/opt/gcc/4.9.2 --with-isl --with-cloog
Thread model: posix
gcc version 4.9.2 (GCC)
When I now follow your instructions and try to build grappa, this is what happens (no errors reported when building grappa itself)
\rm -rf build
./configure --prefix=~/grappa --cc=gcc --cxx=g++
cd build/Make+Release/
make
make install
source /home/rfvander/grappa/bin/settings.sh
cd ~/esg-prk-devel/GRAPPA/Synch_p2p
[rfvander@esgmonster Synch_p2p]$ make p2p
/opt/gcc/4.9.2/bin/g++ -O3 -std=c99 -DGRAPPA -DENABLE_RDMA_AGGREGATOR -std=c++11 -Winline -Wno-inline -mno-red-zone -O3 -g -DNDEBUG -I/home/rfvander/grappa/include -I/home/rfvander/grappa/include/Grappa -I/home/rfvander/grappa/include/Grappa/tasks -I/opt/intel/compilers_and_libraries_2016.1.150/linux/mpi/intel64/include -I/usr/local/include -I../../include -c p2p.cpp
cc1plus: warning: command line option ‘-std=c99’ is valid for C/ObjC but not for C++
/opt/gcc/4.9.2/bin/g++ -o p2p -L/home/rfvander/grappa/lib -L/usr/local/lib -L/opt/intel/compilers_and_libraries_2016.1.150/linux/mpi/intel64/lib -L/opt/intel/compilers_and_libraries_2016.1.150/linux/mpi/intel64/lib/release_mt -L/usr/lib64 -O3 -std=c99 -DGRAPPA p2p.o -Wl,-Bstatic -lGrappa -lglog -lgflags -lgraph500-generator -lboost_system -lboost_filesystem -Wl,-Bdynamic -lmpicxx -lmpifort -lmpi -lmpigi -ldl -lrt -lpthread
/home/rfvander/grappa/lib/libglog.a(libglog_la-utilities.o): In function
google::GetStackTrace(void**, int, int)': utilities.cc:(.text+0x70a): undefined reference to
_Ux86_64_getcontext'utilities.cc:(.text+0x723): undefined reference to
_ULx86_64_init_local' utilities.cc:(.text+0x776): undefined reference to
_ULx86_64_get_reg'utilities.cc:(.text+0x7c6): undefined reference to `_ULx86_64_step'
collect2: error: ld returned 1 exit status
make: *** [p2p] Error 1
The text was updated successfully, but these errors were encountered: