Comments (12)
I met similar issue, when compiled with "make USE_NVM=yes" I got below errors.
gcc: error: ../deps/pmdk/src/nondebug/libpmem.a: No such file or directory
gcc: error: ../deps/memkind/jemalloc/obj/lib/libjemalloc.a: No such file or directory
gcc: error: ../deps/memkind/.libs/libmemkind.a: No such file or directory
gcc: error: ../deps/jemallocat/lib/libjemallocat.a: No such file or directory
gcc: error: ../deps/aofguard/lib/libaofguard.a: No such file or directory
make[1]: *** [Makefile:244: redis-server] Error 1
make[1]: Leaving directory '/home/c
from pmem-redis.
Yes these errors look same. Please post if you found a way to fix it. Thanks
from pmem-redis.
check with the clearlinux with qzheng527 machine, maybe caused by you didn't finish your compile normal first time(for example, ctrl+c break the compile) and then, the deps will not build again. Please "make distclean;make USE_NVM=yes AEP_COW=yes -j 55"; currently on the clearlinux OS, the compile passed.
@adnavare , please use the command "make distclean" first and then compile again.
from pmem-redis.
gcc -c -o pmemobjfs.o -std=gnu99 -ggdb -Wall -Werror -Wmissing-prototypes -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -I../tree_map -I../map -DFUSE_USE_VERSION=28 -DUSE_CTREE -I../../../include -I. -I../../../examples pmemobjfs.c
pmemobjfs.c: In function ‘pmemobjfs_tx_ioctl’:
pmemobjfs.c:2381:2: error: ‘strncat’ specified bound 11 equals source length [-Werror=stringop-overflow=]
strncat(path, PMEMOBJFS_TMP_TEMPLATE, tmpllen);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
It is a error when compile the PMDK, it need to be fixed from PMDK. But so far, you can just
update pmdk/src/examples/Makefile.inc and remove -Werror. I will push PMDK owner to have a fix.
from pmem-redis.
Where should I look for this? I don't see this error on the console. Should I be checking any other log file? Or kubelet logs? I don't think so kubernetes node is yet aware of of Redis server running so I believe Kubelet won't tell me anything.
from pmem-redis.
I see this error at the very beginning after I run make command
MAKE aofguard
cd aofguard && make
make[3]: Entering directory '/home/labuser/DCPMM-Redis/deps/linenoise'
cc -Wall -Os -g -c linenoise.c
make[3]: Entering directory '/home/labuser/DCPMM-Redis/deps/pmdk'
make[3]: Entering directory '/home/labuser/DCPMM-Redis/deps/lua/src'
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lapi.o lapi.c
src/common.inc:57: *** pkg-config not found. Stop.
make[3]: Leaving directory '/home/labuser/DCPMM-Redis/deps/pmdk'
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lcode.o lcode.c
make[3]: Entering directory '/home/labuser/DCPMM-Redis/deps/jemallocat'
make[3]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
Makefile:80: recipe for target 'pmdk' failed
cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ldebug.o ldebug.c
make[2]: *** [pmdk] Error 2
In that I see target pmdk failed. Is that the same error you were referring to? I have bold the error above.
from pmem-redis.
Also I see it is not using g++, will that be a problem?
from pmem-redis.
@adnavare, from your log, you need to install the pkg-config tool. See the PMDK github page, the pmdk depend on:
Linux
You will need to install the following required packages on the build system:
autoconf
pkg-config
libndctl-devel (v60.1 or later)1
libdaxctl-devel (v60.1 or later)
from pmem-redis.
Yes you are right. It was failing because of missing pkg-config. I didn't check PMDK github page for the dependencies. It passed the previous pkg-config error and right now it is failing because of missing libnuma required for memkind. I will install that as well and other dependencies that are needed. I am not checking dependencies for individual packages and I think that's causing the compilation to fail due to missing libraries.
from pmem-redis.
The compilation worked. Thanks for all your inputs. The reason seems to be because of dependencies in pmdk and memkind repos not getting met. After installing those dependencies the compilation worked like charm. Also g++ needs to be installed.
from pmem-redis.
I am sorry to see that you guys already handled the same problem as I met. I fixed it from scratch, the good thing is I submit my solution in my repo. Please consider to merge my pull request to avoid same problem happens again. Appreciate it.
from pmem-redis.
@BrytonLee Could you please kindly submit a PR?
from pmem-redis.
Related Issues (15)
- Does pmem-redis support failure recovery? HOT 1
- Hi, i have some questions
- RFC: Refine sdsmvtonvm(...) function to return more information when nvm_malloc failed. HOT 1
- Compile Fail on CentOS Stream 8 HOT 1
- Compile Fail In Fedora 31 HOT 3
- use-aofguard bad directive or wrong number of arguments HOT 3
- Something wrong with names of nvm items in redis.conf ? HOT 1
- Question about sync
- complied failed on centos HOT 1
- some connection ports lost, and Redis crash when running hset workload in multi-node with commit: eb6409b2
- zadd(512/2000),zadd(2000/2000) TPS and latency performance drop down
- Newer version of jemalloc required HOT 1
- Unable to use pmem-redis with Redis 5.0 HOT 1
- Do you have plan to submit & integrate your effort to the official redis?
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 pmem-redis.