我正在编译一个程序,它是一个文件。它使用一个名为HPX的库,然后使用jemalloc。
问题是由于需要jemalloc导致我收到多个定义错误,并且链接器与系统提供的malloc冲突。
有帮助吗?
我正在使用以下命令进行编译:
cc -std=gnu99 -D_POSIX_C_SOURCE=200809L -I/path/installs/hpx-4.0.0/include -g -O2 -o ./bin/a.out main.c -lm -L/path/installs/hpx-4.0.0/lib -lhpx -lrt -lffi -lstdc++ -lpciaccess -lcityhash -lurcu-qsbr -lurcu-cds -ljemalloc
错误:
/ usr / lib /../ lib64 / libc.a(malloc.o):在函数__libc_malloc中:
/usr/src/packages/BUILD/glibc-2.11.3/malloc/malloc.c:3617:'malloc'的多个定义
/path/installs/hpx-4.0.0/lib/libjemalloc.a(jemalloc.o):/ tmp / hpx-4.0.0 / hpx / contrib / jemalloc / src / jemalloc.c:1550:首先定义这里