Skip to content
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

compiler error with libjemalloc when use -DSTATIC=ON #454

Closed
lostsnow opened this issue Mar 24, 2019 · 7 comments
Closed

compiler error with libjemalloc when use -DSTATIC=ON #454

lostsnow opened this issue Mar 24, 2019 · 7 comments

Comments

@lostsnow
Copy link
Contributor

# git log
commit d067c75333dde9f4f442b4364d12443e40cf7dfe (HEAD -> master, origin/master, origin/HEAD)
Author: Jess <jessachandler@gmail.com>
Date:   Mon Jan 21 09:09:02 2019 -0800

    Added backers and sponsors on the README

cmake -DMARCH_NATIVE=OFF -DSTATIC=ON .. or cmake -DSTATIC=ON ..

FluffOS 2019.2019011401 (RelWithDebInfo)
  C: '/usr/bin/cc'
  C++: '/usr/bin/c++'
-- Linking driver STATICLY.
-- Found jemalloc: /usr/lib/x86_64-linux-gnu/libjemalloc.a  
-- Looking for C++ include crypt.h
-- Looking for C++ include crypt.h - found
-- Looking for C++ include dirent.h
-- Looking for C++ include dirent.h - found
-- Looking for C++ include execinfo.h
-- Looking for C++ include execinfo.h - found
-- Looking for C++ include time.h
-- Looking for C++ include time.h - found
-- Looking for C++ include signal.h
-- Looking for C++ include signal.h - found
-- Looking for C++ include sys/resource.h
-- Looking for C++ include sys/resource.h - found
-- Looking for C++ include sys/rusage.h
-- Looking for C++ include sys/rusage.h - not found
-- Looking for C++ include sys/stat.h
-- Looking for C++ include sys/stat.h - found
-- Looking for C++ include sys/time.h
-- Looking for C++ include sys/time.h - found
-- Found BISON: /usr/bin/bison (found version "3.0.4") 
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.a (found version "1.2.11") 
-- PACKAGE: compress ON
-- PACKAGE: contrib ON
-- Found Crypt: /usr/lib/x86_64-linux-gnu/libcrypt.a  
-- PACKAGE: core ON
-- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.a (found version "1.1.0g") 
-- PACKAGE: crypto ON
-- PACKAGE_DB USE_MYSQL: 1
-- You will link statically to the MySQL client library (set with -DMYSQLCLIENT_STATIC_LINKING=<bool>)
-- Searching for static libraries with the base name(s) "libmysqlclient_r.a libmysqlclient.a"
-- mysql_config was found /usr/bin/mysql_config
-- MYSQL_LIB_DIR_LIST = 
-- MySQL client environment/cmake variables set that the user can override
--   MYSQL_DIR                   : 
--   MYSQL_INCLUDE_DIR           : /usr/include/mysql
--   MYSQL_LIB_DIR               : /usr/lib/x86_64-linux-gnu
--   MYSQL_CONFIG_EXECUTABLE     : /usr/bin/mysql_config
--   MYSQL_CXX_LINKAGE           : 1
--   MYSQL_CFLAGS                : -I/usr/include/mysql
--   MYSQL_CXXFLAGS              : -I/usr/include/mysql
--   MYSQLCLIENT_STATIC_LINKING  : TRUE
--   MYSQLCLIENT_NO_THREADS      : 
-- MySQL client optional environment/cmake variables set by the user
--   MYSQL_EXTRA_LIBRARIES       : 
--   MYSQL_LINK_FLAGS            : 
-- MySQL client settings that the user can't override
--   MYSQL_VERSION               : 5.7.24
--   MYSQL_VERSION_ID            : 50724
--   MYSQL_LIB                   : /usr/lib/x86_64-linux-gnu/libmysqlclient.a
--   MYSQL_LIBRARIES             : /usr/lib/x86_64-linux-gnu/libmysqlclient.a;pthread;z;m;rt;atomic;dl;rt
-- PACKAGE: db ON
-- PACKAGE: develop ON
-- PACKAGE: math ON
-- PACKAGE: matrix ON
-- PACKAGE: mudlib_stats ON
-- PACKAGE: ops ON
-- PACKAGE: parser ON
-- Found PCRE: /usr/lib/x86_64-linux-gnu/libpcre.a  
-- PACKAGE: pcre ON
-- PACKAGE: sha1 ON
-- PACKAGE: sockets ON
-- PACKAGE: trim ON
-- PACKAGE: uids ON
-- ALL PACKAGES: package_compress;package_contrib;package_core;package_crypto;package_db;package_develop;package_math;package_matrix;package_mudlib_stats;package_ops;package_parser;package_pcre;package_sha1;package_sockets;package_trim;package_uids
-- Found Libevent: /usr/lib/x86_64-linux-gnu/libevent.a (found suitable version "2.1.8-stable", minimum required is "2.0") found components:  libevent 
Final Compile Flags: 
Configuration for target common
-- INTERFACE_COMPILE_OPTIONS = -g;-DNDEBUG;-fno-omit-frame-pointer;-D_GNU_SOURCE;-fstrict-aliasing;-O3;-funroll-loops;-fstack-protector-strong;-Wall;-Wextra;-Wformat;-Werror=format-security;-Wno-char-subscripts;-Wno-sign-compare;-Wno-unused-parameter;-Wno-missing-field-initializers;-fdiagnostics-show-option;-fmessage-length=0;-funsigned-char;-fwrapv
-- INTERFACE_INCLUDE_DIRECTORIES = /opt/projects/deploy/mud/fluffos/build/src;/usr/include
-- INTERFACE_LINK_LIBRARIES = /usr/lib/x86_64-linux-gnu/libjemalloc.a
Configuration for target driver
-- SOURCE_DIR = /opt/projects/deploy/mud/fluffos/src
-- BINARY_DIR = /opt/projects/deploy/mud/fluffos/build/src
-- INCLUDE_DIRECTORIES = /opt/projects/deploy/mud/fluffos/build/src;/opt/projects/deploy/mud/fluffos/src;/usr/include
-- LINK_LIBRARIES = libdriver;common;/usr/lib/x86_64-linux-gnu/libevent.a;-static-libgcc -static-libstdc++ -static
-- Configuring done
-- Generating done
-- Build files have been written to: /opt/projects/deploy/mud/fluffos/build

make

Scanning dependencies of target portbind
[  1%] Building CXX object src/CMakeFiles/portbind.dir/portbind.cc.o
[  2%] Linking CXX executable portbind
[  2%] Built target portbind
Scanning dependencies of target libtelnet
[  2%] Building C object src/thirdparty/libtelnet/CMakeFiles/libtelnet.dir/libtelnet.c.o
[  3%] Linking C static library liblibtelnet.a
[  3%] Built target libtelnet
[  4%] [BISON][MakeFunc] Building parser with bison 3.0.4
Scanning dependencies of target make_func
[  5%] Building CXX object src/tools/CMakeFiles/make_func.dir/make_func.cc.o
make_func.y: In function 'int yylex()':
make_func.y:372:14: warning: ignoring return value of 'char* fgets(char*, int, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
[  6%] Linking CXX executable make_func
/usr/lib/x86_64-linux-gnu/libjemalloc.a(jemalloc.o): In function `je_tcache_enabled_set.constprop.3':
(.text+0xcb0): undefined reference to `pthread_setspecific'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(jemalloc.o): In function `free':
(.text+0xf52): undefined reference to `pthread_setspecific'
(.text+0x1079): undefined reference to `pthread_setspecific'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(jemalloc.o): In function `malloc_init_hard':
(.text+0x12a4): undefined reference to `pthread_key_create'
(.text+0x130e): undefined reference to `pthread_atfork'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(jemalloc.o): In function `je_choose_arena_hard':
(.text+0x1537): undefined reference to `pthread_setspecific'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(jemalloc.o): In function `realloc':
(.text+0x1d6f): undefined reference to `pthread_setspecific'
(.text+0x1fff): undefined reference to `pthread_setspecific'
(.text+0x20c6): undefined reference to `pthread_setspecific'
(.text+0x2158): undefined reference to `pthread_setspecific'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(jemalloc.o):(.text+0x2694): more undefined references to `pthread_setspecific' follow
/usr/lib/x86_64-linux-gnu/libjemalloc.a(mutex.o): In function `je_malloc_mutex_init':
(.text+0x29): undefined reference to `pthread_mutexattr_init'
(.text+0x56): undefined reference to `pthread_mutexattr_settype'
(.text+0x6d): undefined reference to `pthread_mutexattr_destroy'
(.text+0x79): undefined reference to `pthread_mutexattr_destroy'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(prof.o): In function `prof_ctx_destroy':
(.text+0x1455): undefined reference to `pthread_setspecific'
(.text+0x14bd): undefined reference to `pthread_setspecific'
(.text+0x1544): undefined reference to `pthread_setspecific'
(.text+0x1667): undefined reference to `pthread_setspecific'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(prof.o): In function `je_prof_tdata_cleanup':
(.text+0x19f6): undefined reference to `pthread_setspecific'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(prof.o):(.text+0x1b5d): more undefined references to `pthread_setspecific' follow
/usr/lib/x86_64-linux-gnu/libjemalloc.a(prof.o): In function `je_prof_boot2':
(.text+0x44aa): undefined reference to `pthread_key_create'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(quarantine.o): In function `quarantine_drain_one':
(.text+0x228): undefined reference to `pthread_setspecific'
(.text+0x321): undefined reference to `pthread_setspecific'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(quarantine.o): In function `je_quarantine_cleanup':
(.text+0x487): undefined reference to `pthread_setspecific'
(.text+0x4d7): undefined reference to `pthread_setspecific'
(.text+0x6f1): undefined reference to `pthread_setspecific'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(quarantine.o):(.text+0x74f): more undefined references to `pthread_setspecific' follow
/usr/lib/x86_64-linux-gnu/libjemalloc.a(quarantine.o): In function `je_quarantine_boot':
(.text+0x1743): undefined reference to `pthread_key_create'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(tcache.o): In function `je_tcache_create':
(.text+0x6b7): undefined reference to `pthread_setspecific'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(tcache.o): In function `je_tcache_thread_cleanup':
(.text+0xac2): undefined reference to `pthread_setspecific'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(tcache.o): In function `je_tcache_boot1':
(.text+0xc53): undefined reference to `pthread_key_create'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(ckh.o): In function `je_tcache_enabled_set.constprop.3':
(.text+0x80): undefined reference to `pthread_setspecific'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(ckh.o): In function `je_ckh_new':
(.text+0x612): undefined reference to `pthread_setspecific'
(.text+0x66f): undefined reference to `pthread_setspecific'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(ckh.o): In function `je_ckh_delete':
(.text+0x8c8): undefined reference to `pthread_setspecific'
(.text+0x9d1): undefined reference to `pthread_setspecific'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(ckh.o):(.text+0x13b3): more undefined references to `pthread_setspecific' follow
collect2: error: ld returned 1 exit status
src/tools/CMakeFiles/make_func.dir/build.make:102: recipe for target 'src/tools/make_func' failed
make[2]: *** [src/tools/make_func] Error 1
CMakeFiles/Makefile2:270: recipe for target 'src/tools/CMakeFiles/make_func.dir/all' failed
make[1]: *** [src/tools/CMakeFiles/make_func.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

cmake .. or cmake -DMARCH_NATIVE=OFF .. works ok

@lostsnow
Copy link
Contributor Author

lostsnow commented Mar 24, 2019

diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 5d6f986..63b1b70 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -41,7 +41,7 @@ if (USE_JEMALLOC)
   find_package(jemalloc REQUIRED)
   set(HAVE_JEMALLOC TRUE) # used in config.h.in
   target_include_directories(common INTERFACE ${JEMALLOC_INCLUDE_DIR})
-  target_link_libraries(common INTERFACE ${JEMALLOC_LIBRARIES})
+  target_link_libraries(common INTERFACE ${JEMALLOC_LIBRARIES} pthread)
 endif()
 # end of JEMALLOC

after add pthread to jemalloc it works ok

@lostsnow
Copy link
Contributor Author

still fail...

Scanning dependencies of target libtelnet
[  0%] Building C object src/thirdparty/libtelnet/CMakeFiles/libtelnet.dir/libtelnet.c.o
[  1%] Linking C static library liblibtelnet.a
[  1%] Built target libtelnet
Scanning dependencies of target build_applies
[  1%] Building CXX object src/tools/CMakeFiles/build_applies.dir/build_applies.cc.o
[  2%] Linking CXX executable build_applies
[  2%] Built target build_applies
[  3%] [BISON][MakeFunc] Building parser with bison 3.0.4
Scanning dependencies of target make_func
[  4%] Building CXX object src/tools/CMakeFiles/make_func.dir/make_func.cc.o
make_func.y: In function ‘int yylex()’:
make_func.y:372:32: warning: ignoring return value of ‘char* fgets(char*, int, FILE*)’, declared with attribute warn_unused_result [-Wunused-result]
[  5%] Linking CXX executable make_func
[  5%] Built target make_func
[  6%] Generating grammar.autogen.y
[  7%] [BISON][Grammar] Building parser with bison 3.0.4
[  8%] Generating packages.fullspec
[  8%] Generating applies_table.autogen.cc, applies_table.autogen.h
[  9%] Generating efuns.autogen.cc, efuns.autogen.h
[ 10%] Generating options.autogen.h
Scanning dependencies of target libdriver
[ 11%] Building CXX object src/CMakeFiles/libdriver.dir/applies_table.autogen.cc.o
[ 11%] Building CXX object src/CMakeFiles/libdriver.dir/efuns.autogen.cc.o
[ 12%] Building CXX object src/CMakeFiles/libdriver.dir/grammar.autogen.cc.o
[ 13%] Building CXX object src/CMakeFiles/libdriver.dir/backend.cc.o
[ 14%] Building CXX object src/CMakeFiles/libdriver.dir/comm.cc.o
[ 15%] Building CXX object src/CMakeFiles/libdriver.dir/fliconv.cc.o
[ 16%] Building CXX object src/CMakeFiles/libdriver.dir/main.cc.o
[ 16%] Building CXX object src/CMakeFiles/libdriver.dir/mainlib.cc.o
[ 17%] Building CXX object src/CMakeFiles/libdriver.dir/user.cc.o
[ 18%] Building CXX object src/CMakeFiles/libdriver.dir/net/telnet.cc.o
[ 19%] Building CXX object src/CMakeFiles/libdriver.dir/base/internal/debugmalloc.cc.o
[ 20%] Building CXX object src/CMakeFiles/libdriver.dir/base/internal/external_port.cc.o
[ 21%] Building CXX object src/CMakeFiles/libdriver.dir/base/internal/file.cc.o
[ 21%] Building CXX object src/CMakeFiles/libdriver.dir/base/internal/hash.cc.o
[ 22%] Building CXX object src/CMakeFiles/libdriver.dir/base/internal/log.cc.o
[ 23%] Building CXX object src/CMakeFiles/libdriver.dir/base/internal/md.cc.o
[ 24%] Building CXX object src/CMakeFiles/libdriver.dir/base/internal/outbuf.cc.o
[ 25%] Building CXX object src/CMakeFiles/libdriver.dir/base/internal/port.cc.o
[ 25%] Building CXX object src/CMakeFiles/libdriver.dir/base/internal/rc.cc.o
[ 26%] Building CXX object src/CMakeFiles/libdriver.dir/base/internal/stats.cc.o
[ 27%] Building CXX object src/CMakeFiles/libdriver.dir/base/internal/stralloc.cc.o
[ 28%] Building CXX object src/CMakeFiles/libdriver.dir/base/internal/strput.cc.o
[ 29%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/apply.cc.o
[ 30%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/base/apply_cache.cc.o
[ 30%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/base/array.cc.o
[ 31%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/base/buffer.cc.o
[ 32%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/base/class.cc.o
[ 33%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/base/function.cc.o
[ 34%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/base/interpret.cc.o
/opt/projects/github/other/fluffos/src/vm/internal/base/interpret.cc: In function ‘char* get_arg(int, int)’:
/opt/projects/github/other/fluffos/src/vm/internal/base/interpret.cc:4550:12: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
     return "";
            ^
/opt/projects/github/other/fluffos/src/vm/internal/base/interpret.cc:4570:10: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
   return "";
          ^
[ 35%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/base/mapping.cc.o
[ 35%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/base/object.cc.o
[ 36%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/base/program.cc.o
[ 37%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/base/svalue.cc.o
[ 38%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/compiler/compiler.cc.o
[ 39%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/compiler/generate.cc.o
[ 40%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/compiler/icode.cc.o
[ 40%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/compiler/lex.cc.o
[ 41%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/compiler/scratchpad.cc.o
[ 42%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/compiler/trees.cc.o
[ 43%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/eval_limit.cc.o
[ 44%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/master.cc.o
[ 44%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/otable.cc.o
[ 45%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/simul_efun.cc.o
[ 46%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/simulate.cc.o
[ 47%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/trace.cc.o
[ 48%] Building CXX object src/CMakeFiles/libdriver.dir/vm/internal/vm.cc.o
[ 49%] Linking CXX static library liblibdriver.a
[ 49%] Built target libdriver
Scanning dependencies of target package_uids
[ 49%] Building CXX object src/packages/uids/CMakeFiles/package_uids.dir/uids.cc.o
[ 50%] Linking CXX static library libpackage_uids.a
[ 50%] Built target package_uids
Scanning dependencies of target package_trim
[ 51%] Building CXX object src/packages/trim/CMakeFiles/package_trim.dir/trim.cc.o
[ 52%] Linking CXX static library libpackage_trim.a
[ 52%] Built target package_trim
Scanning dependencies of target package_sockets
[ 53%] Building CXX object src/packages/sockets/CMakeFiles/package_sockets.dir/socket_efuns.cc.o
[ 54%] Building CXX object src/packages/sockets/CMakeFiles/package_sockets.dir/sockets.cc.o
[ 55%] Linking CXX static library libpackage_sockets.a
[ 55%] Built target package_sockets
Scanning dependencies of target package_sha1
[ 56%] Building CXX object src/packages/sha1/CMakeFiles/package_sha1.dir/sha1.cc.o
[ 56%] Linking CXX static library libpackage_sha1.a
[ 56%] Built target package_sha1
Scanning dependencies of target package_pcre
[ 57%] Building CXX object src/packages/pcre/CMakeFiles/package_pcre.dir/pcre.cc.o
[ 58%] Linking CXX static library libpackage_pcre.a
[ 58%] Built target package_pcre
Scanning dependencies of target package_parser
[ 59%] Building CXX object src/packages/parser/CMakeFiles/package_parser.dir/parser.cc.o
[ 60%] Linking CXX static library libpackage_parser.a
[ 60%] Built target package_parser
Scanning dependencies of target package_ops
[ 61%] Building CXX object src/packages/ops/CMakeFiles/package_ops.dir/ops.cc.o
[ 62%] Building CXX object src/packages/ops/CMakeFiles/package_ops.dir/parse.cc.o
[ 62%] Linking CXX static library libpackage_ops.a
[ 62%] Built target package_ops
Scanning dependencies of target package_mudlib_stats
[ 63%] Building CXX object src/packages/mudlib_stats/CMakeFiles/package_mudlib_stats.dir/mudlib_stats.cc.o
/opt/projects/github/other/fluffos/src/packages/mudlib_stats/mudlib_stats.cc: In function ‘void restore_stat_list(const char*, mudlib_stats_t**)’:
/opt/projects/github/other/fluffos/src/packages/mudlib_stats/mudlib_stats.cc:502:61: warning: ignoring return value of ‘int fscanf(FILE*, const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
     fscanf(f, "%d %d\n", &entry->moves, &entry->heart_beats);
                                                             ^
[ 64%] Linking CXX static library libpackage_mudlib_stats.a
[ 64%] Built target package_mudlib_stats
Scanning dependencies of target package_matrix
[ 64%] Building CXX object src/packages/matrix/CMakeFiles/package_matrix.dir/matrix.cc.o
[ 65%] Linking CXX static library libpackage_matrix.a
[ 65%] Built target package_matrix
Scanning dependencies of target package_math
[ 66%] Building CXX object src/packages/math/CMakeFiles/package_math.dir/math.cc.o
[ 67%] Linking CXX static library libpackage_math.a
[ 67%] Built target package_math
Scanning dependencies of target package_develop
[ 68%] Building CXX object src/packages/develop/CMakeFiles/package_develop.dir/develop.cc.o
[ 68%] Building CXX object src/packages/develop/CMakeFiles/package_develop.dir/checkmemory.cc.o
[ 69%] Building CXX object src/packages/develop/CMakeFiles/package_develop.dir/disassembler.cc.o
[ 70%] Linking CXX static library libpackage_develop.a
[ 70%] Built target package_develop
Scanning dependencies of target package_db
[ 71%] Building CXX object src/packages/db/CMakeFiles/package_db.dir/db.cc.o
[ 72%] Linking CXX static library libpackage_db.a
[ 72%] Built target package_db
Scanning dependencies of target package_crypto
[ 73%] Building CXX object src/packages/crypto/CMakeFiles/package_crypto.dir/crypto.cc.o
[ 74%] Linking CXX static library libpackage_crypto.a
[ 74%] Built target package_crypto
Scanning dependencies of target package_core
[ 75%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/add_action.cc.o
[ 76%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/call_out.cc.o
[ 77%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/crc32.cc.o
[ 77%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/custom_crypt.cc.o
[ 78%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/debug.cc.o
[ 79%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/dns.cc.o
[ 80%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/dumpstat.cc.o
[ 81%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/ed.cc.o
[ 81%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/efuns_main.cc.o
[ 82%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/file.cc.o
[ 83%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/heartbeat.cc.o
[ 84%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/mssp.cc.o
[ 85%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/outbuf.cc.o
[ 86%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/rc.cc.o
[ 86%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/reclaim.cc.o
[ 87%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/regexp.cc.o
[ 88%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/replace_program.cc.o
[ 89%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/save.cc.o
[ 90%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/sprintf.cc.o
[ 91%] Building CXX object src/packages/core/CMakeFiles/package_core.dir/telnet_ext.cc.o
[ 91%] Linking CXX static library libpackage_core.a
[ 91%] Built target package_core
Scanning dependencies of target package_contrib
[ 92%] Building CXX object src/packages/contrib/CMakeFiles/package_contrib.dir/contrib.cc.o
[ 93%] Linking CXX static library libpackage_contrib.a
[ 93%] Built target package_contrib
Scanning dependencies of target package_compress
[ 94%] Building CXX object src/packages/compress/CMakeFiles/package_compress.dir/compress.cc.o
[ 94%] Linking CXX static library libpackage_compress.a
[ 94%] Built target package_compress
Scanning dependencies of target driver
[ 95%] Building CXX object src/CMakeFiles/driver.dir/main.cc.o
[ 96%] Linking CXX executable driver
/usr/lib/x86_64-linux-gnu/libmysqlclient.a(client_plugin.c.o): In function `mysql_load_plugin_v':
(.text+0x612): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/x86_64-linux-gnu/libmysqlclient.a(mf_pack.c.o): In function `unpack_dirname':
(.text+0x860): warning: Using 'getpwnam' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/x86_64-linux-gnu/libmysqlclient.a(libmysql.c.o): In function `read_user_name':
(.text+0x23d8): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/x86_64-linux-gnu/libmysqlclient.a(mf_pack.c.o): In function `unpack_dirname':
(.text+0x872): warning: Using 'endpwent' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
liblibdriver.a(comm.cc.o): In function `init_user_conn()':
/opt/projects/github/other/fluffos/src/comm.cc:374: warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/x86_64-linux-gnu/libevent.a(evutil.o): In function `evutil_getaddrinfo_common':
(.text+0x1749): warning: Using 'getprotobynumber' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/x86_64-linux-gnu/libmysqlclient.a(libmysql.c.o): In function `mysql_server_init':
(.text+0x2147): warning: Using 'getservbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libc.a(malloc.o): In function `__libc_malloc':
(.text+0x6bf0): multiple definition of `malloc'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(jemalloc.o):(.text+0x27d0): first defined here
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libc.a(malloc.o): In function `__libc_free':
(.text+0x6f90): multiple definition of `free'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(jemalloc.o):(.text+0xc80): first defined here
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libc.a(malloc.o): In function `__libc_realloc':
(.text+0x7150): multiple definition of `realloc'
/usr/lib/x86_64-linux-gnu/libjemalloc.a(jemalloc.o):(.text+0x1510): first defined here
collect2: error: ld returned 1 exit status
src/CMakeFiles/driver.dir/build.make:109: recipe for target 'src/driver' failed
make[2]: *** [src/driver] Error 1
CMakeFiles/Makefile2:103: recipe for target 'src/CMakeFiles/driver.dir/all' failed
make[1]: *** [src/CMakeFiles/driver.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

@lostsnow
Copy link
Contributor Author

@lostsnow
Copy link
Contributor Author

after add pthread

  • ubuntu 16.04: glibc version 2.23 fail
  • ubuntu 18.04: glibc version 2.27 success

@lostsnow
Copy link
Contributor Author

but

Segmentation fault (core dumped)

driver-v2019-d067c75.zip

core.zip

@Shea690901
Copy link
Contributor

What happens if you disable the db package (use ccmake <path to fluffos> instead of plain cmake <path to fluffos> in your future build directory, or reconfigure with ccmake . within an existing build directory)?
Do you still get a core dump?

@thefallentree
Copy link
Member

fixed in ebd52ee

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

3 participants