Comments (7)
Hi @GrayXu
I think you try to build rpma by the default c compiler (i.e. "cc").
For the "cc" compiler, current rpma cannot check the version of rdma_getaddrinfo()
correctly.
For now, you can avoid the issue by using the "gcc" compiler:
# cleanup all generated data before doing cmake
CC=gcc cmake ..
make
BTW: I also have sent a patch (#1139 ) to fix the issue.
Best Regards,
Xiao Yang
from rpma.
Hi @GrayXu. We have just merged the fix for the issue you have found. Please let us know if it solves the issue completely.
Thank you @yangx-jy for stepping in. 👍
from rpma.
Hope it helps. Please reopen if needed. Cheers!
from rpma.
Thanks for your reply!
But here cc
is just an alias of gcc
...
$ cc -v
Using built-in specs.
COLLECT_GCC=cc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 7.5.0-3ubuntu1~16.04' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~16.04)
And I still can't build it correctly with the latest codes. The error during cmake indicates that it can't find "LIBIBVERBS".
error log:
-- The C compiler identification is GNU 7.5.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Found Perl: /usr/bin/perl (found version "5.22.1")
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
CMake Error at CMakeLists.txt:35 (include):
include could not find requested file:
/home/gray/PMDK/pmdk/rpma/cmake/functions.cmake
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1")
-- Checking for module 'libibverbs'
-- No package 'libibverbs' found
CMake Error at CMakeLists.txt:97 (find_package):
By not providing "FindLIBIBVERBS.cmake" in CMAKE_MODULE_PATH this project
has asked CMake to find a package configuration file provided by
"LIBIBVERBS", but CMake did not find one.
Could not find a package configuration file provided by "LIBIBVERBS" with
any of the following names:
LIBIBVERBSConfig.cmake
libibverbs-config.cmake
Add the installation prefix of "LIBIBVERBS" to CMAKE_PREFIX_PATH or set
"LIBIBVERBS_DIR" to a directory containing one of the above files. If
"LIBIBVERBS" provides a separate development package or SDK, be sure it has
been installed.
-- Configuring incomplete, errors occurred!
See also "/home/gray/PMDK/pmdk/rpma/build/CMakeFiles/CMakeOutput.log".
See also "/home/gray/PMDK/pmdk/rpma/build/CMakeFiles/CMakeError.log".
here is the version of libibverbs-dev, I installed them by apt
. Is it an error caused by different versions (too old)?
libibverbs-dev/now 41mlnx1-OFED.4.9.0.0.7.49224 amd64 [installed,local]
libibverbs1/now 41mlnx1-OFED.4.9.0.0.7.49224 amd64 [installed,local]
libibverbs1-dbg/now 41mlnx1-OFED.4.9.0.0.7.49224 amd64 [installed,local]
Thanks again!
from rpma.
I correct my dependence lib versions, and now I can build rpma.
But still some warnings during cmake.
-- Checking for module 'libpmem>=1.6'
-- No package 'libpmem' found
CMake Warning at CMakeLists.txt:107 (message):
Since libpmem is missing, the examples will be unable to use PMem. They
will be using DRAM instead.
Because of no libpmem apt source. I built and installed the lastest release (1.11.0) of libpmem from source codes. But the info above shows that it can't find libpmem...
Confusing...
btw, I can't open an issue closed by contributors
from rpma.
Thanks for your reply!
But herecc
is just an alias ofgcc
...
Yes, please see commit c16974a for the detailed explanation.
And I still can't build it correctly with the latest codes. The error during cmake indicates that it can't find "LIBIBVERBS".
error log:
-- The C compiler identification is GNU 7.5.0 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/cc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Found Perl: /usr/bin/perl (found version "5.22.1") -- Looking for pthread.h -- Looking for pthread.h - found -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed -- Looking for pthread_create in pthreads -- Looking for pthread_create in pthreads - not found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Found Threads: TRUE CMake Error at CMakeLists.txt:35 (include): include could not find requested file: /home/gray/PMDK/pmdk/rpma/cmake/functions.cmake
It seems that the directory /home/gray/PMDK/pmdk/rpma/cmake
is broken (i.e. missing functions.cmake).
Please check that there are nine files in the directory.
[root@fedora-31-client cmake]# ll
total 44
-rw-r--r--. 1 root root 1044 Nov 19 2020 cmake_uninstall.cmake.in
-rw-r--r--. 1 root root 570 Nov 19 2020 FindLIBIBVERBS.cmake
-rw-r--r--. 1 root root 598 Nov 19 2020 FindLIBPROTOBUFC.cmake
-rw-r--r--. 1 root root 559 Nov 19 2020 FindLIBRDMACM.cmake
-rw-r--r--. 1 root root 471 Jul 19 09:25 FindPYLINT.cmake
-rw-r--r--. 1 root root 8948 Jul 28 10:43 functions.cmake
-rw-r--r--. 1 root root 348 Nov 19 2020 librpma-config.cmake.in
-rw-r--r--. 1 root root 351 Nov 19 2020 librpma.pc.in
-rw-r--r--. 1 root root 2994 Nov 19 2020 packages.cmake
from rpma.
Thanks for your help, I've already fixed this build error
problem.
And I create another issue for can't find libpmem
problem
Thanks again
from rpma.
Related Issues (20)
- FEAT: an alternative approach to get the latest work completion directly from rpma_conn_wait() [DRAFT] HOT 1
- Redundant code shall be remove from rpma_conn_req_destroy and rpma_conn_req_reject HOT 1
- numactl: execution of `fio': No such file or directory HOT 2
- FEAT: manual control of completion events generation [DRAFT]
- examples: unnecessary rpma_conn_delete() after failed rpma_conn_req() HOT 1
- Bad throughput performance in flush-to-persistent HOT 7
- FEAT: atomic_store() to be use with all set function HOT 1
- examples: RPMA file size limitation HOT 6
- MTT - server prestate should contain also args.threads_num
- Build in Docker Dynamic Library librpma.so.0 Not Found HOT 3
- test: some MT tests run under valgrind's memcheck sometimes hangs HOT 1
- test: pthread_cond_timedwait() failed: Connection timed out
- Automatic updating of documentation at pmem.github.io fails HOT 1
- FEAT: RPMA Fio Engine (server-side) support for offset
- Are there any Windows solution files to build?
- No device found Error HOT 6
- Unify dockerfiles
- Is it time to implement rpma verify based on traditional RDMA API? HOT 1
- Plan to implement rpma flush & atomic_write based on new ibverbs flush & atomic_write APIs HOT 6
- When will the new version of librpma be released?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rpma.