osdir.com

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jira] [Created] (ARROW-4052) [C++] Linker errors with glog and gflags


Antoine Pitrou created ARROW-4052:
-------------------------------------

             Summary: [C++] Linker errors with glog and gflags
                 Key: ARROW-4052
                 URL: https://issues.apache.org/jira/browse/ARROW-4052
             Project: Apache Arrow
          Issue Type: Bug
          Components: C++
            Reporter: Antoine Pitrou


This is very recent, probably one of Saturday's or Sunday's merges:
{code}
[176/293] Linking CXX executable debug/plasma_store_server
FAILED: debug/plasma_store_server 
: && /usr/bin/ccache /usr/bin/g++-7  -Wno-noexcept-type  -fuse-ld=gold -ggdb -O0  -Wall -msse4.2 -fdiagnostics-color=always -Wextra -Wunused-result -Wno-unused-parameter -Wno-implicit-fallthrough -Wconversion -D_GLIBCXX_USE_CXX11_ABI=1 -D_XOPEN_SOURCE=500 -D_POSIX_C_SOURCE=200809L -fPIC -g  -rdynamic src/plasma/CMakeFiles/plasma_store_server.dir/store.cc.o  -o debug/plasma_store_server  -Wl,-rpath,/home/antoine/miniconda3/envs/pyarrow/lib: -lrt debug/libplasma.a debug/libarrow_cuda.a debug/libarrow.a -Wl,-Bstatic -lcudart_static -Wl,-Bdynamic -ldl -lrt -lcuda -lrt /home/antoine/miniconda3/envs/pyarrow/lib/libglog.a /home/antoine/miniconda3/envs/pyarrow/lib/libzstd.a /home/antoine/miniconda3/envs/pyarrow/lib/libz.so /home/antoine/miniconda3/envs/pyarrow/lib/libsnappy.a /home/antoine/miniconda3/envs/pyarrow/lib/liblz4.a /home/antoine/miniconda3/envs/pyarrow/lib/libbrotlidec-static.a /home/antoine/miniconda3/envs/pyarrow/lib/libbrotlienc-static.a /home/antoine/miniconda3/envs/pyarrow/lib/libbrotlicommon-static.a double-conversion_ep/src/double-conversion_ep/lib/libdouble-conversion.a /home/antoine/miniconda3/envs/pyarrow/lib/libboost_system.so /home/antoine/miniconda3/envs/pyarrow/lib/libboost_filesystem.so /home/antoine/miniconda3/envs/pyarrow/lib/libboost_regex.so jemalloc_ep-prefix/src/jemalloc_ep/dist//lib/libjemalloc_pic.a -lpthread /usr/lib/x86_64-linux-gnu/libpthread.so /home/antoine/miniconda3/envs/pyarrow/lib/libflatbuffers.a -lpthread && :
/home/antoine/miniconda3/envs/pyarrow/lib/libglog.a(libglog_la-logging.o):logging.cc:function _GLOBAL__sub_I_logging.cc: error: undefined reference to 'google::FlagRegisterer::FlagRegisterer<bool>(char const*, char const*, char const*, bool*, bool*)'
/home/antoine/miniconda3/envs/pyarrow/lib/libglog.a(libglog_la-logging.o):logging.cc:function _GLOBAL__sub_I_logging.cc: error: undefined reference to 'google::FlagRegisterer::FlagRegisterer<bool>(char const*, char const*, char const*, bool*, bool*)'
/home/antoine/miniconda3/envs/pyarrow/lib/libglog.a(libglog_la-logging.o):logging.cc:function _GLOBAL__sub_I_logging.cc: error: undefined reference to 'google::FlagRegisterer::FlagRegisterer<bool>(char const*, char const*, char const*, bool*, bool*)'
/home/antoine/miniconda3/envs/pyarrow/lib/libglog.a(libglog_la-logging.o):logging.cc:function _GLOBAL__sub_I_logging.cc: error: undefined reference to 'google::FlagRegisterer::FlagRegisterer<bool>(char const*, char const*, char const*, bool*, bool*)'
/home/antoine/miniconda3/envs/pyarrow/lib/libglog.a(libglog_la-logging.o):logging.cc:function _GLOBAL__sub_I_logging.cc: error: undefined reference to 'google::FlagRegisterer::FlagRegisterer<int>(char const*, char const*, char const*, int*, int*)'
/home/antoine/miniconda3/envs/pyarrow/lib/libglog.a(libglog_la-logging.o):logging.cc:function _GLOBAL__sub_I_logging.cc: error: undefined reference to 'google::FlagRegisterer::FlagRegisterer<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(char const*, char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)'
/home/antoine/miniconda3/envs/pyarrow/lib/libglog.a(libglog_la-logging.o):logging.cc:function _GLOBAL__sub_I_logging.cc: error: undefined reference to 'google::FlagRegisterer::FlagRegisterer<int>(char const*, char const*, char const*, int*, int*)'
/home/antoine/miniconda3/envs/pyarrow/lib/libglog.a(libglog_la-logging.o):logging.cc:function _GLOBAL__sub_I_logging.cc: error: undefined reference to 'google::FlagRegisterer::FlagRegisterer<int>(char const*, char const*, char const*, int*, int*)'
/home/antoine/miniconda3/envs/pyarrow/lib/libglog.a(libglog_la-logging.o):logging.cc:function _GLOBAL__sub_I_logging.cc: error: undefined reference to 'google::FlagRegisterer::FlagRegisterer<int>(char const*, char const*, char const*, int*, int*)'
/home/antoine/miniconda3/envs/pyarrow/lib/libglog.a(libglog_la-logging.o):logging.cc:function _GLOBAL__sub_I_logging.cc: error: undefined reference to 'google::FlagRegisterer::FlagRegisterer<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(char const*, char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)'
/home/antoine/miniconda3/envs/pyarrow/lib/libglog.a(libglog_la-logging.o):logging.cc:function _GLOBAL__sub_I_logging.cc: error: undefined reference to 'google::FlagRegisterer::FlagRegisterer<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(char const*, char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)'
/home/antoine/miniconda3/envs/pyarrow/lib/libglog.a(libglog_la-logging.o):logging.cc:function _GLOBAL__sub_I_logging.cc: error: undefined reference to 'google::FlagRegisterer::FlagRegisterer<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(char const*, char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)'
collect2: error: ld returned 1 exit status
{code}

This is the build command line:
{code:bash}
cmake .. -GNinja \
    -DCMAKE_BUILD_TYPE=Debug \
    -DCMAKE_INSTALL_PREFIX=$ARROW_HOME \
    -DCMAKE_INSTALL_MESSAGE=LAZY \
    -DARROW_CXXFLAGS="$ARROW_CXXFLAGS" \
    -DARROW_CUDA=on \
    -DARROW_PARQUET=on \
    -DARROW_PLASMA=on \
    -DARROW_PYTHON=on \
    -DARROW_GANDIVA=off \
    -DARROW_BUILD_TESTS=on \

nice cmake --build . --target install
{code}

These are the installed versions (through Anaconda):
{code}
gflags                    2.2.2                he6710b0_0    defaults
glog                      0.3.5                hf484d3e_1    defaults
{code}




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)