CannyLab / tsne-cuda

GPU Accelerated t-SNE for CUDA with Python bindings
BSD 3-Clause "New" or "Revised" License
1.8k stars 129 forks source link

Unable to build from source #105

Closed e96031413 closed 3 years ago

e96031413 commented 3 years ago

According to the wiki page

First, clone the repository, and change into the cloned directory using:

git clone https://github.com/rmrao/tsne-cuda.git && cd tsne-cuda
Next, initialize the submodules from the root directory using:

git submodule init
git submodule update
Next, change in the build directory:

cd build/

I follow the instruction above. However, there is no build folder in the repo.

Since my machine can only have CUDA10.0 version, I am unable to install tsne-cuda with pip.

I also try to install with conda install -c CannyLab -c pytorch tsnecuda, but when I use the following code to validate

import tsnecuda
tsnecuda.test()

This error occurs:

OSError: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.27' not found (required by /opt/conda/envs/mobilenetv3/lib/python3.6/site-packages/tsnecuda/libtsnecuda.so)

My environment:

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2018 NVIDIA Corporation
Built on Sat_Aug_25_21:08:01_CDT_2018
Cuda compilation tools, release 10.0, V10.0.130
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 410.104      Driver Version: 410.104      CUDA Version: 10.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  Tesla V100-PCIE...  Off  | 00000000:1C:00.0 Off |                    0 |
| N/A   60C    P0   157W / 250W |  31182MiB / 32480MiB |     93%      Default |
+-------------------------------+----------------------+----------------------+
|   1  Tesla V100-PCIE...  Off  | 00000000:1D:00.0 Off |                    0 |
| N/A   53C    P0   143W / 250W |  18570MiB / 32480MiB |    100%      Default |
+-------------------------------+----------------------+----------------------+
|   2  Tesla V100-PCIE...  Off  | 00000000:1E:00.0 Off |                    0 |
| N/A   57C    P0    48W / 250W |  19112MiB / 32480MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   3  Tesla V100-PCIE...  Off  | 00000000:DE:00.0 Off |                    0 |
| N/A   54C    P0    47W / 250W |  19112MiB / 32480MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
rmrao commented 3 years ago

You should just make an empty build folder.

e96031413 commented 3 years ago

@rmrao Thanks for your reply

After cmake .., the following occurs

CMake Error at CMakeLists.txt:139 (find_package):
  By not providing "Findgflags.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "gflags", but
  CMake did not find one.

  Could not find a package configuration file provided by "gflags" with any
  of the following names:

    gflagsConfig.cmake
    gflags-config.cmake

  Add the installation prefix of "gflags" to CMAKE_PREFIX_PATH or set
  "gflags_DIR" to a directory containing one of the above files.  If "gflags"
  provides a separate development package or SDK, be sure it has been
  installed.

Found 2 related issue here and here

DavidMChan commented 3 years ago

Hmm, I had thought this was resolved if you use the right versions of CMAKE and GFLAGS. Can you confirm that you've installed "libgflags-dev" with apt (assuming you're on a Debian based system), and also the CMAKE version?

It would also be very helpful to have the full output CMAKE with the following addition to the CMAKELists.txt file at line 11:


get_cmake_property(_variableNames VARIABLES)
list (SORT _variableNames)
foreach (_variableName ${_variableNames})
    message(STATUS "${_variableName}=${${_variableName}}")
endforeach()

However, this can include some sensitive information, so be careful. This will let us see the values of all of the CMAKE variables at runtime, which might help debut why the FindGFlags.cmake file in cmake/modules/ isn't getting picked up by cmake itself.

Additionally, do you have docker installed? If so, you should be able to duplicate the CUDA 10.1 docker file,and change the base image to CUDA 10.0.

I'm surprised you're getting issues with glibc for the anaconda-based install. Do you mind sharing your anaconda environment with conda env create -f environment.yml? This might help me reproduce the issue.

e96031413 commented 3 years ago
$ apt install libgflags-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libgflags-dev is already the newest version (2.1.2-3).
$ cmake --version
cmake version 3.20.5
CMake suite maintained and supported by Kitware (kitware.com/cmake).

Full log after cmake ..

-- BUILD_PYTHON=ON
-- CMAKE_ADDR2LINE=/usr/bin/addr2line
-- CMAKE_AR=/usr/bin/ar
-- CMAKE_AR=/usr/bin/ar
-- CMAKE_AUTOGEN_ORIGIN_DEPENDS=ON
-- CMAKE_AUTOMOC_COMPILER_PREDEFINES=ON
-- CMAKE_AUTOMOC_MACRO_NAMES=Q_OBJECT;Q_GADGET;Q_NAMESPACE;Q_NAMESPACE_EXPORT
-- CMAKE_AUTOMOC_PATH_PREFIX=OFF
-- CMAKE_BASE_NAME=g++
-- CMAKE_BINARY_DIR=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda
-- CMAKE_BUILD_TOOL=/opt/conda/bin/make
-- CMAKE_BUILD_TYPE=
-- CMAKE_C11_COMPILE_FEATURES=c_std_11;c_static_assert
-- CMAKE_C11_EXTENSION_COMPILE_OPTION=-std=gnu11
-- CMAKE_C11_STANDARD_COMPILE_OPTION=-std=c11
-- CMAKE_C11_STANDARD__HAS_FULL_SUPPORT=ON
-- CMAKE_C90_COMPILE_FEATURES=c_std_90;c_function_prototypes
-- CMAKE_C90_EXTENSION_COMPILE_OPTION=-std=gnu90
-- CMAKE_C90_STANDARD_COMPILE_OPTION=-std=c90
-- CMAKE_C90_STANDARD__HAS_FULL_SUPPORT=ON
-- CMAKE_C99_COMPILE_FEATURES=c_std_99;c_restrict;c_variadic_macros
-- CMAKE_C99_EXTENSION_COMPILE_OPTION=-std=gnu99
-- CMAKE_C99_STANDARD_COMPILE_OPTION=-std=c99
-- CMAKE_C99_STANDARD__HAS_FULL_SUPPORT=ON
-- CMAKE_CACHEFILE_DIR=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda
-- CMAKE_CACHE_MAJOR_VERSION=3
-- CMAKE_CACHE_MINOR_VERSION=20
-- CMAKE_CACHE_PATCH_VERSION=5
-- CMAKE_CFG_INTDIR=.
-- CMAKE_COLOR_MAKEFILE=ON
-- CMAKE_COMMAND=/usr/bin/cmake
-- CMAKE_COMPILER_IS_GNUCC=1
-- CMAKE_COMPILER_IS_GNUCXX=1
-- CMAKE_CPACK_COMMAND=/usr/bin/cpack
-- CMAKE_CROSSCOMPILING=FALSE
-- CMAKE_CTEST_COMMAND=/usr/bin/ctest
-- CMAKE_CUDA03_COMPILE_FEATURES=cuda_std_03
-- CMAKE_CUDA03_EXTENSION_COMPILE_OPTION=-std=c++03
-- CMAKE_CUDA03_STANDARD_COMPILE_OPTION=-std=c++03
-- CMAKE_CUDA11_COMPILE_FEATURES=cuda_std_11
-- CMAKE_CUDA11_EXTENSION_COMPILE_OPTION=-std=c++11
-- CMAKE_CUDA11_STANDARD_COMPILE_OPTION=-std=c++11
-- CMAKE_CUDA14_COMPILE_FEATURES=cuda_std_14
-- CMAKE_CUDA14_EXTENSION_COMPILE_OPTION=-std=c++14
-- CMAKE_CUDA14_STANDARD_COMPILE_OPTION=-std=c++14
-- CMAKE_CUDA17_COMPILE_FEATURES=
-- CMAKE_CUDA20_COMPILE_FEATURES=
-- CMAKE_CUDA23_COMPILE_FEATURES=
-- CMAKE_CUDA_ARCHITECTURES=30
-- CMAKE_CUDA_ARCHIVE_APPEND=<CMAKE_AR> q <TARGET> <LINK_FLAGS> <OBJECTS>
-- CMAKE_CUDA_ARCHIVE_CREATE=<CMAKE_AR> qc <TARGET> <LINK_FLAGS> <OBJECTS>
-- CMAKE_CUDA_ARCHIVE_FINISH=<CMAKE_RANLIB> <TARGET>
-- CMAKE_CUDA_BYTE_ORDER=LITTLE_ENDIAN
-- CMAKE_CUDA_COMPILER=/usr/local/cuda/bin/nvcc
-- CMAKE_CUDA_COMPILER=/usr/local/cuda/bin/nvcc
-- CMAKE_CUDA_COMPILER_ABI=ELF
-- CMAKE_CUDA_COMPILER_ENV_VAR=CUDACXX
-- CMAKE_CUDA_COMPILER_FRONTEND_VARIANT=
-- CMAKE_CUDA_COMPILER_HAS_DEVICE_LINK_PHASE=True
-- CMAKE_CUDA_COMPILER_ID=NVIDIA
-- CMAKE_CUDA_COMPILER_ID_RUN=1
-- CMAKE_CUDA_COMPILER_LIBRARY_ROOT=/usr/local/cuda
-- CMAKE_CUDA_COMPILER_LOADED=1
-- CMAKE_CUDA_COMPILER_TOOLKIT_LIBRARY_ROOT=/usr/local/cuda
-- CMAKE_CUDA_COMPILER_TOOLKIT_ROOT=/usr/local/cuda
-- CMAKE_CUDA_COMPILER_VERSION=10.0.130
-- CMAKE_CUDA_COMPILE_FEATURES=cuda_std_03;cuda_std_11;cuda_std_14
-- CMAKE_CUDA_COMPILE_OPTIONS_PIC=-Xcompiler=-fPIC
-- CMAKE_CUDA_COMPILE_OPTIONS_PIE=-Xcompiler=-fPIE
-- CMAKE_CUDA_COMPILE_OPTIONS_VISIBILITY=-Xcompiler=-fvisibility=
-- CMAKE_CUDA_COMPILE_PTX_COMPILATION=<CMAKE_CUDA_COMPILER>  <DEFINES> <INCLUDES> <FLAGS> -x cu -ptx <SOURCE> -o <OBJECT>
-- CMAKE_CUDA_COMPILE_SEPARABLE_COMPILATION=<CMAKE_CUDA_COMPILER>  <DEFINES> <INCLUDES> <FLAGS> -x cu -dc <SOURCE> -o <OBJECT>
-- CMAKE_CUDA_COMPILE_WHOLE_COMPILATION=<CMAKE_CUDA_COMPILER>  <DEFINES> <INCLUDES> <FLAGS> -x cu -c <SOURCE> -o <OBJECT>
-- CMAKE_CUDA_CREATE_SHARED_LIBRARY=<CMAKE_CUDA_HOST_LINK_LAUNCHER> <CMAKE_SHARED_LIBRARY_CUDA_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CUDA_FLAGS> <SONAME_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -L"/usr/local/cuda/targets/x86_64-linux/lib/stubs" -L"/usr/local/cuda/targets/x86_64-linux/lib"
-- CMAKE_CUDA_CREATE_SHARED_MODULE=<CMAKE_CUDA_HOST_LINK_LAUNCHER> <CMAKE_SHARED_LIBRARY_CUDA_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CUDA_FLAGS> <SONAME_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES> -L"/usr/local/cuda/targets/x86_64-linux/lib/stubs" -L"/usr/local/cuda/targets/x86_64-linux/lib"
-- CMAKE_CUDA_DEPENDS_EXTRA_COMMANDS=<CMAKE_CUDA_COMPILER>  <DEFINES> <INCLUDES> <FLAGS> -x cu -M <SOURCE> -MT <OBJECT> -o <DEP_FILE>
-- CMAKE_CUDA_DEPENDS_USE_COMPILER=TRUE
-- CMAKE_CUDA_DEPFILE_FORMAT=gcc
-- CMAKE_CUDA_DEVICE_COMPILER_WRAPPER_FLAG=-Xcompiler=
-- CMAKE_CUDA_DEVICE_COMPILER_WRAPPER_FLAG_SEP=,
-- CMAKE_CUDA_DEVICE_LINKER=/usr/local/cuda/bin/nvlink
-- CMAKE_CUDA_DEVICE_LINKER_WRAPPER_FLAG=-Xlinker=
-- CMAKE_CUDA_DEVICE_LINKER_WRAPPER_FLAG_SEP=,
-- CMAKE_CUDA_DEVICE_LINK_COMPILE=<CMAKE_CUDA_COMPILER>  <FLAGS> -D__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__ -D__NV_EXTRA_INITIALIZATION="" -D__NV_EXTRA_FINALIZATION="" -DREGISTERLINKBINARYFILE=\"<REGISTER_FILE>\" -DFATBINFILE=\"<FATBINARY>\" -x cu -c "/usr/local/cuda/bin/crt/link.stub" -o <OBJECT>
-- CMAKE_CUDA_DEVICE_LINK_EXECUTABLE=<CMAKE_CUDA_COMPILER>  <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> -Xcompiler=-fPIC -Wno-deprecated-gpu-targets -shared -dlink <OBJECTS> -o <TARGET> <LINK_LIBRARIES>
-- CMAKE_CUDA_DEVICE_LINK_LIBRARY=<CMAKE_CUDA_COMPILER>  <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> -Xcompiler=-fPIC -Wno-deprecated-gpu-targets -shared -dlink <OBJECTS> -o <TARGET> <LINK_LIBRARIES>
-- CMAKE_CUDA_FATBINARY=/usr/local/cuda/bin/fatbinary
-- CMAKE_CUDA_FLAGS=
-- CMAKE_CUDA_FLAGS_DEBUG=-g
-- CMAKE_CUDA_FLAGS_DEBUG_INIT= -g
-- CMAKE_CUDA_FLAGS_INIT=  
-- CMAKE_CUDA_FLAGS_MINSIZEREL=-O1 -DNDEBUG
-- CMAKE_CUDA_FLAGS_MINSIZEREL_INIT= -O1 -DNDEBUG
-- CMAKE_CUDA_FLAGS_RELEASE=-O3 -DNDEBUG
-- CMAKE_CUDA_FLAGS_RELEASE_INIT= -O3 -DNDEBUG
-- CMAKE_CUDA_FLAGS_RELWITHDEBINFO=-O2 -g -DNDEBUG
-- CMAKE_CUDA_FLAGS_RELWITHDEBINFO_INIT= -O2 -g -DNDEBUG
-- CMAKE_CUDA_HOST_COMPILER=
-- CMAKE_CUDA_HOST_COMPILER_ENV_VAR=CUDAHOSTCXX
-- CMAKE_CUDA_HOST_IMPLICIT_LINK_DIRECTORIES=/usr/local/cuda/targets/x86_64-linux/lib/stubs;/usr/local/cuda/targets/x86_64-linux/lib
-- CMAKE_CUDA_HOST_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES=
-- CMAKE_CUDA_HOST_IMPLICIT_LINK_LIBRARIES=
-- CMAKE_CUDA_HOST_LINK_LAUNCHER=/usr/bin/g++
-- CMAKE_CUDA_IMPLICIT_INCLUDE_DIRECTORIES=/usr/include/c++/5;/usr/include/x86_64-linux-gnu/c++/5;/usr/include/c++/5/backward;/usr/lib/gcc/x86_64-linux-gnu/5/include;/usr/local/include;/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed;/usr/include/x86_64-linux-gnu;/usr/include
-- CMAKE_CUDA_IMPLICIT_LINK_DIRECTORIES=/opt/conda/lib;/usr/local/cuda/targets/x86_64-linux/lib/stubs;/usr/local/cuda/targets/x86_64-linux/lib;/usr/lib/gcc/x86_64-linux-gnu/5;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib;/usr/local/cuda/lib64/stubs
-- CMAKE_CUDA_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES=
-- CMAKE_CUDA_IMPLICIT_LINK_LIBRARIES=stdc++;m;gcc_s;gcc;c;gcc_s;gcc
-- CMAKE_CUDA_INFORMATION_LOADED=1
-- CMAKE_CUDA_LIBRARY_ARCHITECTURE=x86_64-linux-gnu
-- CMAKE_CUDA_LINKER_PREFERENCE=15
-- CMAKE_CUDA_LINKER_PREFERENCE_PROPAGATES=1
-- CMAKE_CUDA_LINKER_WRAPPER_FLAG=-Wl,
-- CMAKE_CUDA_LINKER_WRAPPER_FLAG_SEP=,
-- CMAKE_CUDA_LINK_EXECUTABLE=<CMAKE_CUDA_HOST_LINK_LAUNCHER> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES> -L"/usr/local/cuda/targets/x86_64-linux/lib/stubs" -L"/usr/local/cuda/targets/x86_64-linux/lib"
-- CMAKE_CUDA_OUTPUT_EXTENSION=.o
-- CMAKE_CUDA_PLATFORM_ID=Linux
-- CMAKE_CUDA_RESPONSE_FILE_DEVICE_LINK_FLAG=--options-file 
-- CMAKE_CUDA_RESPONSE_FILE_FLAG=--options-file 
-- CMAKE_CUDA_RUNTIME_LIBRARY_DEFAULT=STATIC
-- CMAKE_CUDA_RUNTIME_LIBRARY_LINK_OPTIONS_NONE=
-- CMAKE_CUDA_RUNTIME_LIBRARY_LINK_OPTIONS_SHARED=cudadevrt;cudart
-- CMAKE_CUDA_RUNTIME_LIBRARY_LINK_OPTIONS_STATIC=cudadevrt;cudart_static;rt;pthread;dl
-- CMAKE_CUDA_SIMULATE_ID=GNU
-- CMAKE_CUDA_SIMULATE_VERSION=5.4
-- CMAKE_CUDA_SIZEOF_DATA_PTR=8
-- CMAKE_CUDA_SOURCE_FILE_EXTENSIONS=cu
-- CMAKE_CUDA_STANDARD_COMPUTED_DEFAULT=03
-- CMAKE_CUDA_STANDARD_DEFAULT=03
-- CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES=/usr/local/cuda/targets/x86_64-linux/include
-- CMAKE_CUDA_USE_RESPONSE_FILE_FOR_INCLUDES=0
-- CMAKE_CUDA_USE_RESPONSE_FILE_FOR_LIBRARIES=0
-- CMAKE_CUDA_USE_RESPONSE_FILE_FOR_OBJECTS=0
-- CMAKE_CUDA_VERBOSE_COMPILE_FLAG=-Xcompiler=-v
-- CMAKE_CUDA_VERBOSE_FLAG=-v
-- CMAKE_CURRENT_BINARY_DIR=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda
-- CMAKE_CURRENT_LIST_DIR=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda
-- CMAKE_CURRENT_LIST_FILE=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda/CMakeLists.txt
-- CMAKE_CURRENT_SOURCE_DIR=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda
-- CMAKE_CXX11_COMPILE_FEATURES=cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates
-- CMAKE_CXX11_EXTENSION_COMPILE_OPTION=-std=gnu++11
-- CMAKE_CXX11_STANDARD_COMPILE_OPTION=-std=c++11
-- CMAKE_CXX11_STANDARD__HAS_FULL_SUPPORT=ON
-- CMAKE_CXX14_COMPILE_FEATURES=cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates
-- CMAKE_CXX14_EXTENSION_COMPILE_OPTION=-std=gnu++14
-- CMAKE_CXX14_STANDARD_COMPILE_OPTION=-std=c++14
-- CMAKE_CXX14_STANDARD__HAS_FULL_SUPPORT=ON
-- CMAKE_CXX17_COMPILE_FEATURES=cxx_std_17
-- CMAKE_CXX17_EXTENSION_COMPILE_OPTION=-std=gnu++1z
-- CMAKE_CXX17_STANDARD_COMPILE_OPTION=-std=c++1z
-- CMAKE_CXX20_COMPILE_FEATURES=
-- CMAKE_CXX23_COMPILE_FEATURES=
-- CMAKE_CXX98_COMPILE_FEATURES=cxx_std_98;cxx_template_template_parameters
-- CMAKE_CXX98_EXTENSION_COMPILE_OPTION=-std=gnu++98
-- CMAKE_CXX98_STANDARD_COMPILE_OPTION=-std=c++98
-- CMAKE_CXX98_STANDARD__HAS_FULL_SUPPORT=ON
-- CMAKE_CXX_ABI_COMPILED=TRUE
-- CMAKE_CXX_ARCHIVE_APPEND=<CMAKE_AR> q <TARGET> <LINK_FLAGS> <OBJECTS>
-- CMAKE_CXX_ARCHIVE_APPEND_IPO="/usr/bin/gcc-ar-5" r <TARGET> <LINK_FLAGS> <OBJECTS>
-- CMAKE_CXX_ARCHIVE_CREATE=<CMAKE_AR> qc <TARGET> <LINK_FLAGS> <OBJECTS>
-- CMAKE_CXX_ARCHIVE_CREATE_IPO="/usr/bin/gcc-ar-5" cr <TARGET> <LINK_FLAGS> <OBJECTS>
-- CMAKE_CXX_ARCHIVE_FINISH=<CMAKE_RANLIB> <TARGET>
-- CMAKE_CXX_ARCHIVE_FINISH_IPO="/usr/bin/gcc-ranlib-5" <TARGET>
-- CMAKE_CXX_BYTE_ORDER=LITTLE_ENDIAN
-- CMAKE_CXX_CL_SHOWINCLUDES_PREFIX=
-- CMAKE_CXX_COMPILER=/usr/bin/c++
-- CMAKE_CXX_COMPILER=/usr/bin/c++
-- CMAKE_CXX_COMPILER_ABI=ELF
-- CMAKE_CXX_COMPILER_AR=/usr/bin/gcc-ar-5
-- CMAKE_CXX_COMPILER_AR=/usr/bin/gcc-ar-5
-- CMAKE_CXX_COMPILER_ARG1=
-- CMAKE_CXX_COMPILER_ENV_VAR=CXX
-- CMAKE_CXX_COMPILER_FRONTEND_VARIANT=
-- CMAKE_CXX_COMPILER_ID=GNU
-- CMAKE_CXX_COMPILER_ID_RUN=1
-- CMAKE_CXX_COMPILER_LOADED=1
-- CMAKE_CXX_COMPILER_PREDEFINES_COMMAND=/usr/bin/c++;-dM;-E;-c;/usr/share/cmake-3.20/Modules/CMakeCXXCompilerABI.cpp
-- CMAKE_CXX_COMPILER_RANLIB=/usr/bin/gcc-ranlib-5
-- CMAKE_CXX_COMPILER_RANLIB=/usr/bin/gcc-ranlib-5
-- CMAKE_CXX_COMPILER_VERSION=5.4.0
-- CMAKE_CXX_COMPILER_VERSION_INTERNAL=
-- CMAKE_CXX_COMPILER_WORKS=TRUE
-- CMAKE_CXX_COMPILER_WRAPPER=
-- CMAKE_CXX_COMPILE_FEATURES=cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17
-- CMAKE_CXX_COMPILE_OBJECT=<CMAKE_CXX_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -o <OBJECT> -c <SOURCE>
-- CMAKE_CXX_COMPILE_OPTIONS_CREATE_PCH=-x;c++-header;-include;<PCH_HEADER>
-- CMAKE_CXX_COMPILE_OPTIONS_EXPLICIT_LANGUAGE=-x;c++
-- CMAKE_CXX_COMPILE_OPTIONS_INVALID_PCH=-Winvalid-pch
-- CMAKE_CXX_COMPILE_OPTIONS_IPO=-flto;-fno-fat-lto-objects
-- CMAKE_CXX_COMPILE_OPTIONS_PIC=-fPIC
-- CMAKE_CXX_COMPILE_OPTIONS_PIE=-fPIE
-- CMAKE_CXX_COMPILE_OPTIONS_SYSROOT=--sysroot=
-- CMAKE_CXX_COMPILE_OPTIONS_USE_PCH=-include;<PCH_HEADER>
-- CMAKE_CXX_COMPILE_OPTIONS_VISIBILITY=-fvisibility=
-- CMAKE_CXX_COMPILE_OPTIONS_VISIBILITY_INLINES_HIDDEN=-fvisibility-inlines-hidden
-- CMAKE_CXX_CREATE_ASSEMBLY_SOURCE=<CMAKE_CXX_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>
-- CMAKE_CXX_CREATE_PREPROCESSED_SOURCE=<CMAKE_CXX_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>
-- CMAKE_CXX_CREATE_SHARED_LIBRARY=<CMAKE_CXX_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <SONAME_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>
-- CMAKE_CXX_CREATE_SHARED_MODULE=<CMAKE_CXX_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <SONAME_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>
-- CMAKE_CXX_DEPENDS_USE_COMPILER=TRUE
-- CMAKE_CXX_DEPFILE_FORMAT=gcc
-- CMAKE_CXX_FLAGS=
-- CMAKE_CXX_FLAGS_DEBUG=-g
-- CMAKE_CXX_FLAGS_DEBUG_INIT= -g
-- CMAKE_CXX_FLAGS_INIT=-fvisibility-inlines-hidden -std=c++17 -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /opt/conda/include  
-- CMAKE_CXX_FLAGS_MINSIZEREL=-Os -DNDEBUG
-- CMAKE_CXX_FLAGS_MINSIZEREL_INIT= -Os -DNDEBUG
-- CMAKE_CXX_FLAGS_RELEASE=-O3 -DNDEBUG
-- CMAKE_CXX_FLAGS_RELEASE_INIT= -O3 -DNDEBUG
-- CMAKE_CXX_FLAGS_RELWITHDEBINFO=-O2 -g -DNDEBUG
-- CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT= -O2 -g -DNDEBUG
-- CMAKE_CXX_IGNORE_EXTENSIONS=inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC
-- CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES=/usr/include/c++/5;/usr/include/x86_64-linux-gnu/c++/5;/usr/include/c++/5/backward;/usr/lib/gcc/x86_64-linux-gnu/5/include;/usr/local/include;/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed;/usr/include/x86_64-linux-gnu;/usr/include
-- CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES=/opt/conda/lib;/usr/lib/gcc/x86_64-linux-gnu/5;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib;/usr/local/cuda/lib64/stubs
-- CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES=
-- CMAKE_CXX_IMPLICIT_LINK_LIBRARIES=stdc++;m;gcc_s;gcc;c;gcc_s;gcc
-- CMAKE_CXX_INFORMATION_LOADED=1
-- CMAKE_CXX_LIBRARY_ARCHITECTURE=x86_64-linux-gnu
-- CMAKE_CXX_LINKER_PREFERENCE=30
-- CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES=1
-- CMAKE_CXX_LINKER_WRAPPER_FLAG=-Wl,
-- CMAKE_CXX_LINKER_WRAPPER_FLAG_SEP=,
-- CMAKE_CXX_LINK_EXECUTABLE=<CMAKE_CXX_COMPILER> <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>
-- CMAKE_CXX_LINK_OPTIONS_NO_PIE=-no-pie
-- CMAKE_CXX_LINK_OPTIONS_PIE=-fPIE;-pie
-- CMAKE_CXX_OUTPUT_EXTENSION=.o
-- CMAKE_CXX_PLATFORM_ID=Linux
-- CMAKE_CXX_SIMULATE_ID=
-- CMAKE_CXX_SIMULATE_VERSION=
-- CMAKE_CXX_SIZEOF_DATA_PTR=8
-- CMAKE_CXX_SOURCE_FILE_EXTENSIONS=C;M;c++;cc;cpp;cxx;mm;mpp;CPP
-- CMAKE_CXX_STANDARD_COMPUTED_DEFAULT=98
-- CMAKE_CXX_STANDARD_DEFAULT=98
-- CMAKE_CXX_VERBOSE_FLAG=-v
-- CMAKE_C_ABI_COMPILED=TRUE
-- CMAKE_C_ARCHIVE_APPEND=<CMAKE_AR> q <TARGET> <LINK_FLAGS> <OBJECTS>
-- CMAKE_C_ARCHIVE_APPEND_IPO="/usr/bin/gcc-ar-5" r <TARGET> <LINK_FLAGS> <OBJECTS>
-- CMAKE_C_ARCHIVE_CREATE=<CMAKE_AR> qc <TARGET> <LINK_FLAGS> <OBJECTS>
-- CMAKE_C_ARCHIVE_CREATE_IPO="/usr/bin/gcc-ar-5" cr <TARGET> <LINK_FLAGS> <OBJECTS>
-- CMAKE_C_ARCHIVE_FINISH=<CMAKE_RANLIB> <TARGET>
-- CMAKE_C_ARCHIVE_FINISH_IPO="/usr/bin/gcc-ranlib-5" <TARGET>
-- CMAKE_C_BYTE_ORDER=LITTLE_ENDIAN
-- CMAKE_C_CL_SHOWINCLUDES_PREFIX=
-- CMAKE_C_COMPILER=/usr/bin/cc
-- CMAKE_C_COMPILER=/usr/bin/cc
-- CMAKE_C_COMPILER_ABI=ELF
-- CMAKE_C_COMPILER_AR=/usr/bin/gcc-ar-5
-- CMAKE_C_COMPILER_AR=/usr/bin/gcc-ar-5
-- CMAKE_C_COMPILER_ARG1=
-- CMAKE_C_COMPILER_ENV_VAR=CC
-- CMAKE_C_COMPILER_FRONTEND_VARIANT=
-- CMAKE_C_COMPILER_ID=GNU
-- CMAKE_C_COMPILER_ID_RUN=1
-- CMAKE_C_COMPILER_LOADED=1
-- CMAKE_C_COMPILER_PREDEFINES_COMMAND=/usr/bin/cc;-dM;-E;-c;/usr/share/cmake-3.20/Modules/CMakeCXXCompilerABI.cpp
-- CMAKE_C_COMPILER_RANLIB=/usr/bin/gcc-ranlib-5
-- CMAKE_C_COMPILER_RANLIB=/usr/bin/gcc-ranlib-5
-- CMAKE_C_COMPILER_VERSION=5.4.0
-- CMAKE_C_COMPILER_VERSION_INTERNAL=
-- CMAKE_C_COMPILER_WORKS=TRUE
-- CMAKE_C_COMPILER_WRAPPER=
-- CMAKE_C_COMPILE_FEATURES=c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert
-- CMAKE_C_COMPILE_OBJECT=<CMAKE_C_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -o <OBJECT> -c <SOURCE>
-- CMAKE_C_COMPILE_OPTIONS_CREATE_PCH=-x;c-header;-include;<PCH_HEADER>
-- CMAKE_C_COMPILE_OPTIONS_EXPLICIT_LANGUAGE=-x;c
-- CMAKE_C_COMPILE_OPTIONS_INVALID_PCH=-Winvalid-pch
-- CMAKE_C_COMPILE_OPTIONS_IPO=-flto;-fno-fat-lto-objects
-- CMAKE_C_COMPILE_OPTIONS_PIC=-fPIC
-- CMAKE_C_COMPILE_OPTIONS_PIE=-fPIE
-- CMAKE_C_COMPILE_OPTIONS_SYSROOT=--sysroot=
-- CMAKE_C_COMPILE_OPTIONS_USE_PCH=-include;<PCH_HEADER>
-- CMAKE_C_COMPILE_OPTIONS_VISIBILITY=-fvisibility=
-- CMAKE_C_CREATE_ASSEMBLY_SOURCE=<CMAKE_C_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>
-- CMAKE_C_CREATE_PREPROCESSED_SOURCE=<CMAKE_C_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>
-- CMAKE_C_CREATE_SHARED_LIBRARY=<CMAKE_C_COMPILER> <CMAKE_SHARED_LIBRARY_C_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> <SONAME_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>
-- CMAKE_C_CREATE_SHARED_MODULE=<CMAKE_C_COMPILER> <CMAKE_SHARED_LIBRARY_C_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> <SONAME_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>
-- CMAKE_C_DEPENDS_USE_COMPILER=TRUE
-- CMAKE_C_DEPFILE_FORMAT=gcc
-- CMAKE_C_FLAGS=
-- CMAKE_C_FLAGS_DEBUG=-g
-- CMAKE_C_FLAGS_DEBUG_INIT= -g
-- CMAKE_C_FLAGS_INIT=-march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /opt/conda/include  
-- CMAKE_C_FLAGS_MINSIZEREL=-Os -DNDEBUG
-- CMAKE_C_FLAGS_MINSIZEREL_INIT= -Os -DNDEBUG
-- CMAKE_C_FLAGS_RELEASE=-O3 -DNDEBUG
-- CMAKE_C_FLAGS_RELEASE_INIT= -O3 -DNDEBUG
-- CMAKE_C_FLAGS_RELWITHDEBINFO=-O2 -g -DNDEBUG
-- CMAKE_C_FLAGS_RELWITHDEBINFO_INIT= -O2 -g -DNDEBUG
-- CMAKE_C_IGNORE_EXTENSIONS=h;H;o;O;obj;OBJ;def;DEF;rc;RC
-- CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES=/usr/lib/gcc/x86_64-linux-gnu/5/include;/usr/local/include;/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed;/usr/include/x86_64-linux-gnu;/usr/include
-- CMAKE_C_IMPLICIT_LINK_DIRECTORIES=/opt/conda/lib;/usr/lib/gcc/x86_64-linux-gnu/5;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib;/usr/local/cuda/lib64/stubs
-- CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES=
-- CMAKE_C_IMPLICIT_LINK_LIBRARIES=gcc;gcc_s;c;gcc;gcc_s
-- CMAKE_C_INFORMATION_LOADED=1
-- CMAKE_C_LIBRARY_ARCHITECTURE=x86_64-linux-gnu
-- CMAKE_C_LINKER_PREFERENCE=10
-- CMAKE_C_LINKER_WRAPPER_FLAG=-Wl,
-- CMAKE_C_LINKER_WRAPPER_FLAG_SEP=,
-- CMAKE_C_LINK_EXECUTABLE=<CMAKE_C_COMPILER> <FLAGS> <CMAKE_C_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>
-- CMAKE_C_LINK_OPTIONS_NO_PIE=-no-pie
-- CMAKE_C_LINK_OPTIONS_PIE=-fPIE;-pie
-- CMAKE_C_OUTPUT_EXTENSION=.o
-- CMAKE_C_PLATFORM_ID=Linux
-- CMAKE_C_SIMULATE_ID=
-- CMAKE_C_SIMULATE_VERSION=
-- CMAKE_C_SIZEOF_DATA_PTR=8
-- CMAKE_C_SOURCE_FILE_EXTENSIONS=c;m
-- CMAKE_C_STANDARD_COMPUTED_DEFAULT=11
-- CMAKE_C_STANDARD_DEFAULT=11
-- CMAKE_C_VERBOSE_FLAG=-v
-- CMAKE_DEPFILE_FLAGS_C=-MD -MT <DEP_TARGET> -MF <DEP_FILE>
-- CMAKE_DEPFILE_FLAGS_CXX=-MD -MT <DEP_TARGET> -MF <DEP_FILE>
-- CMAKE_DLLTOOL=CMAKE_DLLTOOL-NOTFOUND
-- CMAKE_DL_LIBS=dl
-- CMAKE_EDIT_COMMAND=/opt/conda/envs/mobilenetv3/bin/ccmake
-- CMAKE_EFFECTIVE_SYSTEM_NAME=Linux
-- CMAKE_EXECUTABLE_FORMAT=ELF
-- CMAKE_EXECUTABLE_RPATH_LINK_CUDA_FLAG=-Wl,-rpath-link,
-- CMAKE_EXECUTABLE_RPATH_LINK_CXX_FLAG=-Wl,-rpath-link,
-- CMAKE_EXECUTABLE_RPATH_LINK_C_FLAG=-Wl,-rpath-link,
-- CMAKE_EXECUTABLE_RUNTIME_CUDA_FLAG=-Wl,-rpath,
-- CMAKE_EXECUTABLE_RUNTIME_CUDA_FLAG_SEP=:
-- CMAKE_EXECUTABLE_RUNTIME_CXX_FLAG=-Wl,-rpath,
-- CMAKE_EXECUTABLE_RUNTIME_CXX_FLAG_SEP=:
-- CMAKE_EXECUTABLE_RUNTIME_C_FLAG=-Wl,-rpath,
-- CMAKE_EXECUTABLE_RUNTIME_C_FLAG_SEP=:
-- CMAKE_EXECUTABLE_SUFFIX=
-- CMAKE_EXE_EXPORTS_CUDA_FLAG=-Wl,--export-dynamic
-- CMAKE_EXE_EXPORTS_CXX_FLAG=-Wl,--export-dynamic
-- CMAKE_EXE_EXPORTS_C_FLAG=-Wl,--export-dynamic
-- CMAKE_EXE_LINKER_FLAGS=-Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/opt/conda/lib -Wl,-rpath-link,/opt/conda/lib -L/opt/conda/lib
-- CMAKE_EXE_LINKER_FLAGS_DEBUG=
-- CMAKE_EXE_LINKER_FLAGS_INIT= -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/opt/conda/lib -Wl,-rpath-link,/opt/conda/lib -L/opt/conda/lib -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/opt/conda/lib -Wl,-rpath-link,/opt/conda/lib -L/opt/conda/lib -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/opt/conda/lib -Wl,-rpath-link,/opt/conda/lib -L/opt/conda/lib
-- CMAKE_EXE_LINKER_FLAGS_MINSIZEREL=
-- CMAKE_EXE_LINKER_FLAGS_RELEASE=
-- CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO=
-- CMAKE_EXE_LINK_DYNAMIC_CXX_FLAGS=-Wl,-Bdynamic
-- CMAKE_EXE_LINK_DYNAMIC_C_FLAGS=-Wl,-Bdynamic
-- CMAKE_EXE_LINK_STATIC_CXX_FLAGS=-Wl,-Bstatic
-- CMAKE_EXE_LINK_STATIC_C_FLAGS=-Wl,-Bstatic
-- CMAKE_EXPORT_COMPILE_COMMANDS=1
-- CMAKE_EXPORT_COMPILE_COMMANDS=1
-- CMAKE_EXTRA_GENERATOR=
-- CMAKE_FILES_DIRECTORY=/CMakeFiles
-- CMAKE_FIND_LIBRARY_PREFIXES=lib
-- CMAKE_FIND_LIBRARY_SUFFIXES=.so;.a
-- CMAKE_GENERATOR=Unix Makefiles
-- CMAKE_GENERATOR_INSTANCE=
-- CMAKE_GENERATOR_PLATFORM=
-- CMAKE_GENERATOR_TOOLSET=
-- CMAKE_HAVE_LIBC_PTHREAD=
-- CMAKE_HAVE_PTHREADS_CREATE=
-- CMAKE_HAVE_PTHREAD_CREATE=1
-- CMAKE_HAVE_PTHREAD_H=1
-- CMAKE_HOME_DIRECTORY=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda
-- CMAKE_HOST_SYSTEM=Linux-4.15.0-45-generic
-- CMAKE_HOST_SYSTEM_NAME=Linux
-- CMAKE_HOST_SYSTEM_PROCESSOR=x86_64
-- CMAKE_HOST_SYSTEM_VERSION=4.15.0-45-generic
-- CMAKE_HOST_UNIX=1
-- CMAKE_INCLUDE_FLAG_C=-I
-- CMAKE_INCLUDE_FLAG_CUDA=-I
-- CMAKE_INCLUDE_FLAG_CXX=-I
-- CMAKE_INCLUDE_SYSTEM_FLAG_C=-isystem 
-- CMAKE_INCLUDE_SYSTEM_FLAG_CUDA=-isystem=
-- CMAKE_INCLUDE_SYSTEM_FLAG_CXX=-isystem 
-- CMAKE_INSTALL_DEFAULT_COMPONENT_NAME=Unspecified
-- CMAKE_INSTALL_PREFIX=/usr/local
-- CMAKE_INSTALL_SO_NO_EXE=1
-- CMAKE_INTERNAL_PLATFORM_ABI=ELF
-- CMAKE_LIBRARY_ARCHITECTURE=x86_64-linux-gnu
-- CMAKE_LIBRARY_ARCHITECTURE_REGEX=[a-z0-9_]+(-[a-z0-9_]+)?-linux-gnu[a-z0-9_]*
-- CMAKE_LIBRARY_PATH_FLAG=-L
-- CMAKE_LIBRARY_PATH_TERMINATOR=
-- CMAKE_LINKER=/usr/bin/ld
-- CMAKE_LINKER=/usr/bin/ld
-- CMAKE_LINK_LIBRARY_FLAG=-l
-- CMAKE_LINK_LIBRARY_SUFFIX=
-- CMAKE_MAJOR_VERSION=3
-- CMAKE_MAKE_PROGRAM=/opt/conda/bin/make
-- CMAKE_MATCH_0=6.0 03
-- CMAKE_MATCH_COUNT=0
-- CMAKE_MINIMUM_REQUIRED_VERSION=3.20
-- CMAKE_MINOR_VERSION=20
-- CMAKE_MODULE_LINKER_FLAGS=-Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/opt/conda/lib -Wl,-rpath-link,/opt/conda/lib -L/opt/conda/lib
-- CMAKE_MODULE_LINKER_FLAGS_DEBUG=
-- CMAKE_MODULE_LINKER_FLAGS_INIT= -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/opt/conda/lib -Wl,-rpath-link,/opt/conda/lib -L/opt/conda/lib -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/opt/conda/lib -Wl,-rpath-link,/opt/conda/lib -L/opt/conda/lib -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/opt/conda/lib -Wl,-rpath-link,/opt/conda/lib -L/opt/conda/lib
-- CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL=
-- CMAKE_MODULE_LINKER_FLAGS_RELEASE=
-- CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO=
-- CMAKE_MODULE_PATH=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda/cmake/Modules
-- CMAKE_MT=
-- CMAKE_NM=/usr/bin/nm
-- CMAKE_NUMBER_OF_MAKEFILES=1
-- CMAKE_OBJCOPY=/usr/bin/objcopy
-- CMAKE_OBJDUMP=/usr/bin/objdump
-- CMAKE_PARENT_LIST_FILE=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda/CMakeLists.txt
-- CMAKE_PATCH_VERSION=5
-- CMAKE_PCH_EXTENSION=.gch
-- CMAKE_PCH_PROLOGUE=#pragma GCC system_header
-- CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES=/lib;/lib32;/lib64;/usr/lib;/usr/lib32;/usr/lib64
-- CMAKE_PLATFORM_INFO_DIR=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda/CMakeFiles/3.20.5
-- CMAKE_PLATFORM_INFO_INITIALIZED=1
-- CMAKE_PLATFORM_USES_PATH_WHEN_NO_SONAME=1
-- CMAKE_PROJECT_DESCRIPTION=
-- CMAKE_PROJECT_HOMEPAGE_URL=
-- CMAKE_PROJECT_NAME=tsnecuda
-- CMAKE_PROJECT_VERSION=3
-- CMAKE_PROJECT_VERSION_MAJOR=0
-- CMAKE_PROJECT_VERSION_MINOR=0
-- CMAKE_PROJECT_VERSION_PATH=0
-- CMAKE_RANLIB=/usr/bin/ranlib
-- CMAKE_RANLIB=/usr/bin/ranlib
-- CMAKE_READELF=/usr/bin/readelf
-- CMAKE_ROOT=/usr/share/cmake-3.20
-- CMAKE_SHARED_LIBRARY_CREATE_CUDA_FLAGS=-shared
-- CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS=-shared
-- CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS=-shared
-- CMAKE_SHARED_LIBRARY_CUDA_FLAGS=-fPIC
-- CMAKE_SHARED_LIBRARY_CXX_FLAGS=-fPIC
-- CMAKE_SHARED_LIBRARY_C_FLAGS=-fPIC
-- CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS=-rdynamic
-- CMAKE_SHARED_LIBRARY_LINK_C_FLAGS=-rdynamic
-- CMAKE_SHARED_LIBRARY_LINK_DYNAMIC_CXX_FLAGS=-Wl,-Bdynamic
-- CMAKE_SHARED_LIBRARY_LINK_DYNAMIC_C_FLAGS=-Wl,-Bdynamic
-- CMAKE_SHARED_LIBRARY_LINK_STATIC_CXX_FLAGS=-Wl,-Bstatic
-- CMAKE_SHARED_LIBRARY_LINK_STATIC_C_FLAGS=-Wl,-Bstatic
-- CMAKE_SHARED_LIBRARY_PREFIX=lib
-- CMAKE_SHARED_LIBRARY_RPATH_LINK_CUDA_FLAG=-Wl,-rpath-link,
-- CMAKE_SHARED_LIBRARY_RPATH_LINK_CXX_FLAG=-Wl,-rpath-link,
-- CMAKE_SHARED_LIBRARY_RPATH_LINK_C_FLAG=-Wl,-rpath-link,
-- CMAKE_SHARED_LIBRARY_RPATH_ORIGIN_TOKEN=$ORIGIN
-- CMAKE_SHARED_LIBRARY_RUNTIME_CUDA_FLAG=-Wl,-rpath,
-- CMAKE_SHARED_LIBRARY_RUNTIME_CUDA_FLAG_SEP=:
-- CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG=-Wl,-rpath,
-- CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG_SEP=:
-- CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG=-Wl,-rpath,
-- CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP=:
-- CMAKE_SHARED_LIBRARY_SONAME_CUDA_FLAG=-Wl,-soname,
-- CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG=-Wl,-soname,
-- CMAKE_SHARED_LIBRARY_SONAME_C_FLAG=-Wl,-soname,
-- CMAKE_SHARED_LIBRARY_SUFFIX=.so
-- CMAKE_SHARED_LINKER_FLAGS=-Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/opt/conda/lib -Wl,-rpath-link,/opt/conda/lib -L/opt/conda/lib
-- CMAKE_SHARED_LINKER_FLAGS_DEBUG=
-- CMAKE_SHARED_LINKER_FLAGS_INIT= -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/opt/conda/lib -Wl,-rpath-link,/opt/conda/lib -L/opt/conda/lib -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/opt/conda/lib -Wl,-rpath-link,/opt/conda/lib -L/opt/conda/lib -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/opt/conda/lib -Wl,-rpath-link,/opt/conda/lib -L/opt/conda/lib
-- CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL=
-- CMAKE_SHARED_LINKER_FLAGS_RELEASE=
-- CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO=
-- CMAKE_SHARED_MODULE_CREATE_CUDA_FLAGS=-shared
-- CMAKE_SHARED_MODULE_CREATE_CXX_FLAGS=-shared
-- CMAKE_SHARED_MODULE_CREATE_C_FLAGS=-shared
-- CMAKE_SHARED_MODULE_CUDA_FLAGS=-fPIC
-- CMAKE_SHARED_MODULE_CXX_FLAGS=-fPIC
-- CMAKE_SHARED_MODULE_C_FLAGS=-fPIC
-- CMAKE_SHARED_MODULE_LINK_DYNAMIC_CXX_FLAGS=-Wl,-Bdynamic
-- CMAKE_SHARED_MODULE_LINK_DYNAMIC_C_FLAGS=-Wl,-Bdynamic
-- CMAKE_SHARED_MODULE_LINK_STATIC_CXX_FLAGS=-Wl,-Bstatic
-- CMAKE_SHARED_MODULE_LINK_STATIC_C_FLAGS=-Wl,-Bstatic
-- CMAKE_SHARED_MODULE_PREFIX=lib
-- CMAKE_SHARED_MODULE_SUFFIX=.so
-- CMAKE_SIZEOF_VOID_P=8
-- CMAKE_SKIP_INSTALL_RPATH=NO
-- CMAKE_SKIP_RPATH=NO
-- CMAKE_SKIP_RULE_DEPENDENCY=TRUE
-- CMAKE_SOURCE_DIR=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda
-- CMAKE_STATIC_LIBRARY_PREFIX=lib
-- CMAKE_STATIC_LIBRARY_SUFFIX=.a
-- CMAKE_STATIC_LINKER_FLAGS=
-- CMAKE_STATIC_LINKER_FLAGS_DEBUG=
-- CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL=
-- CMAKE_STATIC_LINKER_FLAGS_RELEASE=
-- CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO=
-- CMAKE_STRIP=/usr/bin/strip
-- CMAKE_SYSTEM=Linux-4.15.0-45-generic
-- CMAKE_SYSTEM_INCLUDE_PATH=/usr/include/X11
-- CMAKE_SYSTEM_INFO_FILE=Platform/Linux
-- CMAKE_SYSTEM_LIBRARY_PATH=/usr/lib/X11
-- CMAKE_SYSTEM_LOADED=1
-- CMAKE_SYSTEM_NAME=Linux
-- CMAKE_SYSTEM_PREFIX_PATH=/usr/local;/usr;/;/usr;/usr/local;/usr/X11R6;/usr/pkg;/opt
-- CMAKE_SYSTEM_PROCESSOR=x86_64
-- CMAKE_SYSTEM_SPECIFIC_INFORMATION_LOADED=1
-- CMAKE_SYSTEM_SPECIFIC_INITIALIZE_LOADED=1
-- CMAKE_SYSTEM_VERSION=4.15.0-45-generic
-- CMAKE_TWEAK_VERSION=0
-- CMAKE_UNAME=/bin/uname
-- CMAKE_VERBOSE_MAKEFILE=FALSE
-- CMAKE_VERSION=3.20.5
-- CUDAToolkit_rt_LIBRARY=/usr/lib/x86_64-linux-gnu/librt.so
-- CUDA_CUDART=/usr/local/cuda/lib64/libcudart.so
-- CUDA_OpenCL_LIBRARY=/usr/local/cuda/lib64/libOpenCL.so
-- CUDA_cublasLt_LIBRARY=/opt/conda/envs/mobilenetv3/lib/libcublasLt.so
-- CUDA_cublasLt_static_LIBRARY=CUDA_cublasLt_static_LIBRARY-NOTFOUND
-- CUDA_cublas_LIBRARY=/usr/local/cuda/lib64/libcublas.so
-- CUDA_cublas_static_LIBRARY=/usr/local/cuda/lib64/libcublas_static.a
-- CUDA_cuda_driver_LIBRARY=/usr/lib/x86_64-linux-gnu/libcuda.so
-- CUDA_cudart_LIBRARY=/usr/local/cuda/lib64/libcudart.so
-- CUDA_cudart_static_LIBRARY=/usr/local/cuda/lib64/libcudart_static.a
-- CUDA_cufft_LIBRARY=/usr/local/cuda/lib64/libcufft.so
-- CUDA_cufft_static_LIBRARY=/usr/local/cuda/lib64/libcufft_static.a
-- CUDA_cufftw_LIBRARY=/usr/local/cuda/lib64/libcufftw.so
-- CUDA_culibos_LIBRARY=/usr/local/cuda/lib64/libculibos.a
-- CUDA_cupti_LIBRARY=/usr/local/cuda/bin/../extras/CUPTI/lib64/libcupti.so
-- CUDA_cupti_static_LIBRARY=CUDA_cupti_static_LIBRARY-NOTFOUND
-- CUDA_curand_LIBRARY=/usr/local/cuda/lib64/libcurand.so
-- CUDA_curand_static_LIBRARY=/usr/local/cuda/lib64/libcurand_static.a
-- CUDA_cusolver_LIBRARY=/usr/local/cuda/lib64/libcusolver.so
-- CUDA_cusolver_static_LIBRARY=/usr/local/cuda/lib64/libcusolver_static.a
-- CUDA_cusparse_LIBRARY=/usr/local/cuda/lib64/libcusparse.so
-- CUDA_cusparse_static_LIBRARY=/usr/local/cuda/lib64/libcusparse_static.a
-- CUDA_nppc_LIBRARY=/usr/local/cuda/lib64/libnppc.so
-- CUDA_nppc_static_LIBRARY=/usr/local/cuda/lib64/libnppc_static.a
-- CUDA_nppial_LIBRARY=/usr/local/cuda/lib64/libnppial.so
-- CUDA_nppial_static_LIBRARY=/usr/local/cuda/lib64/libnppial_static.a
-- CUDA_nppicc_LIBRARY=/usr/local/cuda/lib64/libnppicc.so
-- CUDA_nppicc_static_LIBRARY=/usr/local/cuda/lib64/libnppicc_static.a
-- CUDA_nppicom_LIBRARY=/usr/local/cuda/lib64/libnppicom.so
-- CUDA_nppicom_static_LIBRARY=/usr/local/cuda/lib64/libnppicom_static.a
-- CUDA_nppidei_LIBRARY=/usr/local/cuda/lib64/libnppidei.so
-- CUDA_nppidei_static_LIBRARY=/usr/local/cuda/lib64/libnppidei_static.a
-- CUDA_nppif_LIBRARY=/usr/local/cuda/lib64/libnppif.so
-- CUDA_nppif_static_LIBRARY=/usr/local/cuda/lib64/libnppif_static.a
-- CUDA_nppig_LIBRARY=/usr/local/cuda/lib64/libnppig.so
-- CUDA_nppig_static_LIBRARY=/usr/local/cuda/lib64/libnppig_static.a
-- CUDA_nppim_LIBRARY=/usr/local/cuda/lib64/libnppim.so
-- CUDA_nppim_static_LIBRARY=/usr/local/cuda/lib64/libnppim_static.a
-- CUDA_nppist_LIBRARY=/usr/local/cuda/lib64/libnppist.so
-- CUDA_nppist_static_LIBRARY=/usr/local/cuda/lib64/libnppist_static.a
-- CUDA_nppisu_LIBRARY=/usr/local/cuda/lib64/libnppisu.so
-- CUDA_nppisu_static_LIBRARY=/usr/local/cuda/lib64/libnppisu_static.a
-- CUDA_nppitc_LIBRARY=/usr/local/cuda/lib64/libnppitc.so
-- CUDA_nppitc_static_LIBRARY=/usr/local/cuda/lib64/libnppitc_static.a
-- CUDA_npps_LIBRARY=/usr/local/cuda/lib64/libnpps.so
-- CUDA_npps_static_LIBRARY=/usr/local/cuda/lib64/libnpps_static.a
-- CUDA_nvToolsExt_LIBRARY=/usr/local/cuda/lib64/libnvToolsExt.so
-- CUDA_nvgraph_LIBRARY=/usr/local/cuda/lib64/libnvgraph.so
-- CUDA_nvgraph_static_LIBRARY=/usr/local/cuda/lib64/libnvgraph_static.a
-- CUDA_nvjpeg_LIBRARY=/usr/local/cuda/lib64/libnvjpeg.so
-- CUDA_nvjpeg_static_LIBRARY=/usr/local/cuda/lib64/libnvjpeg_static.a
-- CUDA_nvml_LIBRARY=/usr/local/cuda/lib64/stubs/libnvidia-ml.so
-- CUDA_nvrtc_LIBRARY=/usr/local/cuda/lib64/libnvrtc.so
-- FIND_PACKAGE_MESSAGE_DETAILS_CUDAToolkit=[/usr/local/cuda/include][/usr/local/cuda/lib64/libcudart.so][/usr/local/cuda/bin][v10.0.130()]
-- FIND_PACKAGE_MESSAGE_DETAILS_Git=[/usr/bin/git][v2.7.4()]
-- FIND_PACKAGE_MESSAGE_DETAILS_OpenMP=[TRUE][TRUE][c ][v4.0()]
-- FIND_PACKAGE_MESSAGE_DETAILS_OpenMP_C=[-fopenmp][/opt/conda/lib/libgomp.so][/usr/lib/x86_64-linux-gnu/libpthread.so][v4.0()]
-- FIND_PACKAGE_MESSAGE_DETAILS_OpenMP_CXX=[-fopenmp][/opt/conda/lib/libgomp.so][/usr/lib/x86_64-linux-gnu/libpthread.so][v4.0()]
-- FIND_PACKAGE_MESSAGE_DETAILS_Threads=[TRUE][v()]
-- GIT_EXECUTABLE=/usr/bin/git
-- OpenMP_COMPILE_RESULT_CXX_fopenmp=TRUE
-- OpenMP_COMPILE_RESULT_C_fopenmp=TRUE
-- OpenMP_CXX_FLAGS=-fopenmp
-- OpenMP_CXX_LIB_NAMES=gomp;pthread
-- OpenMP_CXX_SPEC_DATE=201307
-- OpenMP_C_FLAGS=-fopenmp
-- OpenMP_C_LIB_NAMES=gomp;pthread
-- OpenMP_C_SPEC_DATE=201307
-- OpenMP_SPECTEST_CXX_=TRUE
-- OpenMP_SPECTEST_C_=TRUE
-- OpenMP_gomp_LIBRARY=/opt/conda/lib/libgomp.so
-- OpenMP_pthread_LIBRARY=/usr/lib/x86_64-linux-gnu/libpthread.so
-- PROJECT_BINARY_DIR=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda
-- PROJECT_DESCRIPTION=
-- PROJECT_HOMEPAGE_URL=
-- PROJECT_NAME=tsnecuda
-- PROJECT_SOURCE_DIR=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda
-- RUN_CONFIGURE=ON
-- UNIX=1
-- _CMAKE_COMPILE_AS_CUDA_FLAG=-x cu
-- _CMAKE_CUDA_DEVICE_CODE=-dc
-- _CMAKE_CUDA_EXTRA_DEVICE_LINK_FLAGS=-Wno-deprecated-gpu-targets
-- _CMAKE_CUDA_EXTRA_FLAGS=
-- _CMAKE_CUDA_IMPLICIT_INCLUDE_DIRECTORIES_INIT=/usr/include
-- _CMAKE_CUDA_PTX_FLAG=-ptx
-- _CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES_INIT=/usr/include/c++/5;/usr/include/x86_64-linux-gnu/c++/5;/usr/include/c++/5/backward;/usr/lib/gcc/x86_64-linux-gnu/5/include;/usr/local/include;/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed;/usr/include/x86_64-linux-gnu;/usr/include;/usr/include
-- _CMAKE_CXX_IPO_MAY_BE_SUPPORTED_BY_COMPILER=YES
-- _CMAKE_CXX_IPO_SUPPORTED_BY_CMAKE=YES
-- _CMAKE_CXX_PIE_MAY_BE_SUPPORTED_BY_LINKER=YES
-- _CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES_INIT=/usr/lib/gcc/x86_64-linux-gnu/5/include;/usr/local/include;/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed;/usr/include/x86_64-linux-gnu;/usr/include;/usr/include
-- _CMAKE_C_IPO_MAY_BE_SUPPORTED_BY_COMPILER=YES
-- _CMAKE_C_IPO_SUPPORTED_BY_CMAKE=YES
-- _CMAKE_C_PIE_MAY_BE_SUPPORTED_BY_LINKER=YES
-- _CMAKE_INSTALL_DIR=/usr
-- _INCLUDED_FILE=/usr/share/cmake-3.20/Modules/Platform/Linux-GNU-CXX.cmake
-- _INCLUDED_SYSTEM_INFO_FILE=/usr/share/cmake-3.20/Modules/Platform/Linux.cmake
-- _IN_TC=0
-- __COMPILER_CMAKE_COMMON_COMPILER_MACROS=1
-- __COMPILER_GNU=1
-- __IMPLICT_LINKS= -L"/usr/local/cuda/targets/x86_64-linux/lib/stubs" -L"/usr/local/cuda/targets/x86_64-linux/lib"
-- __LINUX_COMPILER_GNU=1
-- __UNIX_PATHS_INCLUDED=1
-- __lto_flags=-flto;-fno-fat-lto-objects
-- __pch_header_C=c-header
-- __pch_header_CXX=c++-header
-- __pch_header_OBJC=objective-c-header
-- __pch_header_OBJCXX=objective-c++-header
-- dir=
-- extension=
-- gflags_DIR=gflags_DIR-NOTFOUND
-- lang=
-- tsnecuda_BINARY_DIR=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda
-- tsnecuda_DESCRIPTION=
-- tsnecuda_HOMEPAGE_URL=
-- tsnecuda_IS_TOP_LEVEL=ON
-- tsnecuda_SOURCE_DIR=/root/notebooks/nfs/work/yanwei.liu/tsne-cuda
-- type=
CMake Error at CMakeLists.txt:144 (find_package):
  By not providing "Findgflags.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "gflags", but
  CMake did not find one.

  Could not find a package configuration file provided by "gflags" with any
  of the following names:

    gflagsConfig.cmake
    gflags-config.cmake

  Add the installation prefix of "gflags" to CMAKE_PREFIX_PATH or set
  "gflags_DIR" to a directory containing one of the above files.  If "gflags"
  provides a separate development package or SDK, be sure it has been
  installed.

-- Configuring incomplete, errors occurred!

Due to the privilege problem, my machine can not install docker.

e96031413 commented 3 years ago

and here is the CMakeError.log

Performing C SOURCE FILE Test CMAKE_HAVE_LIBC_PTHREAD failed with the following output:
Change Dir: /root/notebooks/nfs/work/yanwei.liu/tsne-cuda/CMakeFiles/CMakeTmp

Run Build Command(s):/opt/conda/bin/make -f Makefile cmTC_55656/fast && /opt/conda/bin/make  -f CMakeFiles/cmTC_55656.dir/build.make CMakeFiles/cmTC_55656.dir/build
make[1]: Entering directory '/root/notebooks/nfs/work/yanwei.liu/tsne-cuda/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_55656.dir/src.c.o
/usr/bin/cc -DCMAKE_HAVE_LIBC_PTHREAD  -fPIE -o CMakeFiles/cmTC_55656.dir/src.c.o -c /root/notebooks/nfs/work/yanwei.liu/tsne-cuda/CMakeFiles/CMakeTmp/src.c
Linking C executable cmTC_55656
/opt/conda/envs/mobilenetv3/bin/cmake -E cmake_link_script CMakeFiles/cmTC_55656.dir/link.txt --verbose=1
/usr/bin/cc -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/opt/conda/lib -Wl,-rpath-link,/opt/conda/lib -L/opt/conda/lib  CMakeFiles/cmTC_55656.dir/src.c.o -o cmTC_55656 
CMakeFiles/cmTC_55656.dir/src.c.o: In function `main':
src.c:(.text+0x3e): undefined reference to `pthread_create'
src.c:(.text+0x4a): undefined reference to `pthread_detach'
src.c:(.text+0x56): undefined reference to `pthread_cancel'
src.c:(.text+0x67): undefined reference to `pthread_join'
src.c:(.text+0x7b): undefined reference to `pthread_atfork'
collect2: error: ld returned 1 exit status
make[1]: *** [CMakeFiles/cmTC_55656.dir/build.make:99: cmTC_55656] Error 1
make[1]: Leaving directory '/root/notebooks/nfs/work/yanwei.liu/tsne-cuda/CMakeFiles/CMakeTmp'
make: *** [Makefile:127: cmTC_55656/fast] Error 2

Source file was:
#include <pthread.h>

static void* test_func(void* data)
{
  return data;
}

int main(void)
{
  pthread_t thread;
  pthread_create(&thread, NULL, test_func, NULL);
  pthread_detach(thread);
  pthread_cancel(thread);
  pthread_join(thread, NULL);
  pthread_atfork(NULL, NULL, NULL);
  pthread_exit(NULL);

  return 0;
}

Determining if the function pthread_create exists in the pthreads failed with the following output:
Change Dir: /root/notebooks/nfs/work/yanwei.liu/tsne-cuda/CMakeFiles/CMakeTmp

Run Build Command(s):/opt/conda/bin/make -f Makefile cmTC_60637/fast && /opt/conda/bin/make  -f CMakeFiles/cmTC_60637.dir/build.make CMakeFiles/cmTC_60637.dir/build
make[1]: Entering directory '/root/notebooks/nfs/work/yanwei.liu/tsne-cuda/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_60637.dir/CheckFunctionExists.c.o
/usr/bin/cc   -DCHECK_FUNCTION_EXISTS=pthread_create -fPIE -o CMakeFiles/cmTC_60637.dir/CheckFunctionExists.c.o -c /opt/conda/envs/mobilenetv3/share/cmake-3.21/Modules/CheckFunctionExists.c
Linking C executable cmTC_60637
/opt/conda/envs/mobilenetv3/bin/cmake -E cmake_link_script CMakeFiles/cmTC_60637.dir/link.txt --verbose=1
/usr/bin/cc  -DCHECK_FUNCTION_EXISTS=pthread_create -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,-rpath,/opt/conda/lib -Wl,-rpath-link,/opt/conda/lib -L/opt/conda/lib  CMakeFiles/cmTC_60637.dir/CheckFunctionExists.c.o -o cmTC_60637  -lpthreads 
/usr/bin/ld: cannot find -lpthreads
collect2: error: ld returned 1 exit status
make[1]: *** [CMakeFiles/cmTC_60637.dir/build.make:99: cmTC_60637] Error 1
make[1]: Leaving directory '/root/notebooks/nfs/work/yanwei.liu/tsne-cuda/CMakeFiles/CMakeTmp'
make: *** [Makefile:127: cmTC_60637/fast] Error 2

Compiling the C compiler identification source file "CMakeCCompilerId.c" failed.
Compiler: /usr/bin/cc 
Build flags: -march=nocona;-mtune=haswell;-ftree-vectorize;-fPIC;-fstack-protector-strong;-fno-plt;-O2;-ffunction-sections;-pipe;-isystem;/opt/conda/include
Id flags:  

The output was:
1
cc: error: unrecognized command line option ‘-fno-plt’

Compiling the C compiler identification source file "CMakeCCompilerId.c" failed.
Compiler: /usr/bin/cc 
Build flags: -march=nocona;-mtune=haswell;-ftree-vectorize;-fPIC;-fstack-protector-strong;-fno-plt;-O2;-ffunction-sections;-pipe;-isystem;/opt/conda/include
Id flags: -c 

The output was:
1
cc: error: unrecognized command line option ‘-fno-plt’

Compiling the C compiler identification source file "CMakeCCompilerId.c" failed.
Compiler: /usr/bin/cc 
Build flags: -march=nocona;-mtune=haswell;-ftree-vectorize;-fPIC;-fstack-protector-strong;-fno-plt;-O2;-ffunction-sections;-pipe;-isystem;/opt/conda/include
Id flags: -Aa 

The output was:
1
cc: error: unrecognized command line option ‘-fno-plt’

Compiling the C compiler identification source file "CMakeCCompilerId.c" failed.
Compiler: /usr/bin/cc 
Build flags: -march=nocona;-mtune=haswell;-ftree-vectorize;-fPIC;-fstack-protector-strong;-fno-plt;-O2;-ffunction-sections;-pipe;-isystem;/opt/conda/include
Id flags: -D__CLASSIC_C__ 

The output was:
1
cc: error: unrecognized command line option ‘-fno-plt’

Compiling the C compiler identification source file "CMakeCCompilerId.c" failed.
Compiler: /usr/bin/cc 
Build flags: -march=nocona;-mtune=haswell;-ftree-vectorize;-fPIC;-fstack-protector-strong;-fno-plt;-O2;-ffunction-sections;-pipe;-isystem;/opt/conda/include
Id flags: --target=arm-arm-none-eabi;-mcpu=cortex-m3 

The output was:
1
cc: warning: ‘-mcpu=’ is deprecated; use ‘-mtune=’ or ‘-march=’ instead
cc: error: unrecognized command line option ‘-fno-plt’

Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
Compiler: /usr/bin/c++ 
Build flags: -fvisibility-inlines-hidden;-std=c++17;-fmessage-length=0;-march=nocona;-mtune=haswell;-ftree-vectorize;-fPIC;-fstack-protector-strong;-fno-plt;-O2;-ffunction-sections;-pipe;-isystem;/opt/conda/include
Id flags:  

The output was:
1
c++: error: unrecognized command line option ‘-fno-plt’

Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
Compiler: /usr/bin/c++ 
Build flags: -fvisibility-inlines-hidden;-std=c++17;-fmessage-length=0;-march=nocona;-mtune=haswell;-ftree-vectorize;-fPIC;-fstack-protector-strong;-fno-plt;-O2;-ffunction-sections;-pipe;-isystem;/opt/conda/include
Id flags: -c 

The output was:
1
c++: error: unrecognized command line option ‘-fno-plt’

Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
Compiler: /usr/bin/c++ 
Build flags: -fvisibility-inlines-hidden;-std=c++17;-fmessage-length=0;-march=nocona;-mtune=haswell;-ftree-vectorize;-fPIC;-fstack-protector-strong;-fno-plt;-O2;-ffunction-sections;-pipe;-isystem;/opt/conda/include
Id flags: --c++ 

The output was:
1
c++: error: unrecognized command line option ‘-fno-plt’
c++: error: unrecognized command line option ‘--c++’

Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
Compiler: /usr/bin/c++ 
Build flags: -fvisibility-inlines-hidden;-std=c++17;-fmessage-length=0;-march=nocona;-mtune=haswell;-ftree-vectorize;-fPIC;-fstack-protector-strong;-fno-plt;-O2;-ffunction-sections;-pipe;-isystem;/opt/conda/include
Id flags: --ec++ 

The output was:
1
c++: error: unrecognized command line option ‘-fno-plt’
c++: error: unrecognized command line option ‘--ec++’

Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
Compiler: /usr/bin/c++ 
Build flags: -fvisibility-inlines-hidden;-std=c++17;-fmessage-length=0;-march=nocona;-mtune=haswell;-ftree-vectorize;-fPIC;-fstack-protector-strong;-fno-plt;-O2;-ffunction-sections;-pipe;-isystem;/opt/conda/include
Id flags: --target=arm-arm-none-eabi;-mcpu=cortex-m3 

The output was:
1
c++: warning: ‘-mcpu=’ is deprecated; use ‘-mtune=’ or ‘-march=’ instead
c++: error: unrecognized command line option ‘-fno-plt’
DavidMChan commented 3 years ago

Thanks for providing all of this info! I see two problems with the above CXX output, which are good to resolve:

  1. It seems like you're using a pretty old version of GCC (5.4). Updating past 6.3 (Our DockerFiles use 7.5) should fix the warnings about -fno-plt, as well as some of the issues with the updated version of the CXX_LIB (Because we don't compile for an older ABI, that's probably why conda doesn't do so well).
  2. I'm seeing an issue with -lpthreads:
    src.c:(.text+0x3e): undefined reference to `pthread_create'
    src.c:(.text+0x4a): undefined reference to `pthread_detach'
    src.c:(.text+0x56): undefined reference to `pthread_cancel'
    src.c:(.text+0x67): undefined reference to `pthread_join'
    src.c:(.text+0x7b): undefined reference to `pthread_atfork'

Beyond that, it looks like perhaps our FindGFLAGS.cmake file may not be working on all machines. GFlags isn't critical to tsnecuda (it just powers the cxxopts package that we use for the C++ binary version of tsnecuda), which means that you can actually remove the whole thing with the following steps (I think, I'm not in front of a computer that I can test this with, so it's probably going to be a bit buggy):

  1. Comment line 139 in the CMakeLists.txt find_package(gflags REQUIRED)
  2. Comment line 141 in the CMakeLists.txt find_package(GTest REQUIRED)
  3. Comment line 170 in the CMakeLists.txt third_party/cxxopts/include/
  4. Comment line 217 in the CMakeLists.txt gflags
  5. Comment line 218 in the CMakeLists.txt gtest
  6. Comment line 249 in the CmakeLists.txt add_executable(tsne src/exe/main.cu)
  7. Build as normal

Alternatively, you could try the FindGFlags.cmake module file here: https://gist.github.com/DavidMChan/ed699fe7fa806ff52c220274d1521728 which might be more complete. Just replace the current FindGFlags.cmake file in cmake/modules/ with the above. I'm curious as well, if you move some of the other custom find commands, for example, the lines corresponding to the FAISS configuration or MKL configuration above the lines corresponding to GFlags, if those commands fail as well, or if it's just GFlags.

Finally, if you've made it this far, you can the .whl file here: https://campbeltown.cs.berkeley.edu/public/tsnecuda-3.0.0-py2.py3-none-any.whl, which I built exclusively for 10.0.

e96031413 commented 3 years ago

Thanks for your help

However, all the provided method failed.

I just figure a method that work with old version tsne-cuda:

Here is what I do:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-7 g++-7
gcc-7 --version
sudo apt-get install doxygen
sudo apt-get install libzmq3-dev
git clone https://github.com/CannyLab/tsne-cuda && cd tsne-cuda
git checkout 97af49e723    # I guess that any version before 3.0 tsne-cuda can work on my machine
# Manually put the source code of cxxopts, faiss, glog, and gtest into third_party folder.
cd build
cmake ..
make -j8
cd python
pip install -e .

By the way, this file can install on my machine but when I try to use it, the following occured:

Error: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.27' not found 

Since my ubuntu version is 16.04, version 2.27 seems to not available in my machine:

strings /lib/x86_64-linux-gnu/libm.so.6 | grep GLIBC_
GLIBC_2.2.5
GLIBC_2.4
GLIBC_2.15
GLIBC_2.18
GLIBC_2.23
GLIBC_PRIVATE

I appreciate your help very much.

e96031413 commented 3 years ago

Here I attach the whl file that work on my machine with the following environment Ubuntu 16.04, CUDA 10.0, NVIDIA Driver Version: 410.104 , Python 3.6.7

tsnecuda-2.1.0-py2.py3-none-any.whl

install it with pip install tsnecuda-2.1.0-py2.py3-none-any.whl

DavidMChan commented 3 years ago

I'm glad that you were able to get it working! For future reference, the issue here for most of the installs was not having a modern version of GLIBC. Feel free to reopen this if you have any more install issues!