-
Notifications
You must be signed in to change notification settings - Fork 4.3k
Description
Summary
when i using
make -C build install -jcmake report ld error during Linking CXX executable faiss_test
Here is the complete cmake output:
$ make -C build -j install
make: Entering directory '/home/byte/Code/ANNS/faiss/build'
[ 0%] Built target swigfaiss_avx2_swig_compilation
[ 0%] Built target faiss_example_external_module_swig_compilation
[ 1%] Built target swigfaiss_swig_compilation
[ 1%] Built target faiss_python_callbacks
[ 3%] Built target gtest
[ 10%] Built target benchmark
[ 10%] Built target gtest_main
[ 12%] Built target benchmark_main
[ 43%] Built target faiss
[ 74%] Built target faiss_avx2
[ 75%] Built target swigfaiss
[ 77%] Built target faiss_perf_tests_utils
[ 86%] Built target faiss_c
[ 86%] Built target swigfaiss_avx2
[ 86%] Built target faiss_example_external_module
[ 89%] Built target bench_scalar_quantizer_decode
[ 89%] Built target bench_no_multithreading_rcq_search
[ 89%] Built target bench_scalar_quantizer_accuracy
[ 89%] Built target bench_scalar_quantizer_encode
[ 89%] Built target bench_scalar_quantizer_distance
[ 89%] Linking CXX executable faiss_test
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyUnicode_InternFromString' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference to_Py_Dealloc'
/usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyByteArray_AsString' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyLong_FromLong'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyModule_Create2' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyByteArray_Type'
/usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyType_IsSubtype' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyErr_Fetch'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyExc_RuntimeError' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyErr_GivenExceptionMatches'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyEval_RestoreThread' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyExc_MemoryError'
/usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyUnicode_DecodeUTF8' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyErr_Print'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyUnicode_FromString' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyErr_WriteUnraisable'
/usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyBytes_AsString' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyLong_AsDouble'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyErr_Clear' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyCapsule_New'
/usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyErr_ExceptionMatches' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/libfaiss_python_callbacks.so: undefined reference toPyBytes_Size'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyExc_TypeError' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyErr_SetObject'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyLong_AsUnsignedLong' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyType_Ready'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyFloat_FromDouble' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyObject_IsTrue'
/usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyBool_Type' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyErr_Restore'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyObject_Call' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyObject_GetAttr'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyLong_FromSize_t' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyExc_SyntaxError'
/usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyDict_GetItem' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyTuple_New'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyImport_AddModule' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyObject_CallFunctionObjArgs'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyObject_GenericGetAttr' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyExc_ImportError'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyExc_AttributeError' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyErr_Occurred'
/usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/libfaiss_python_callbacks.so: undefined reference toPyBytes_FromStringAndSize' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyDict_SetItem'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyExc_ValueError' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyUnicode_FromFormat'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyDict_SetItemString' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyImport_ImportModule'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyExc_OverflowError' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyModule_GetDict'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyType_Modified' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyTuple_GetSlice'
/usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/libfaiss_python_callbacks.so: undefined reference toPyObject_CallFunction' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyGILState_Ensure'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyErr_SetString' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyObject_IsInstance'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyExc_IOError' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyType_Type'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference to_PyObject_New' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyCapsule_GetPointer'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference to_Py_NoneStruct' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyDict_New'
/usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyErr_CheckSignals' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPy_DecRef'
/usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyGILState_Release' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyModule_AddObject'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference to_Py_NotImplementedStruct' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyExc_SystemError'
/usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyCapsule_Type' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyObject_Free'
/usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyExc_ModuleNotFoundError' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyBool_FromLong'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyLong_AsLong' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyFloat_Type'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyExc_IndexError' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyFloat_AsDouble'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyEval_SaveThread' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyExc_StopIteration'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyArg_UnpackTuple' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyLong_FromVoidPtr'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyCapsule_Import' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyObject_GetAttrString'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyErr_Format' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyObject_SetAttr'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyExc_ZeroDivisionError' /usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyUnicode_Concat'
/usr/bin/ld: ../faiss/python/_faiss_example_external_module.so: undefined reference toPyLong_FromUnsignedLong' /usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference toPyUnicode_AsUTF8AndSize'
/usr/bin/ld: /home/byte/Code/ANNS/faiss/build/faiss/python/_swigfaiss.so: undefined reference to `PyTuple_Size'
collect2: error: ld returned 1 exit status
make[2]: *** [tests/CMakeFiles/faiss_test.dir/build.make:583: tests/faiss_test] Error 1
make[1]: *** [CMakeFiles/Makefile2:1988: tests/CMakeFiles/faiss_test.dir/all] Error 2
make: *** [Makefile:146: all] Error 2
make: Leaving directory '/home/byte/Code/ANNS/faiss/build'
Platform
OS: Linux
Faiss version: git commit 3daf48c
Installed from: compiled by myself
Faiss compilation options:
cmake -B build . -DFAISS_ENABLE_GPU=OFF -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DBUILD_TESTING=ON -DFAISS_ENABLE_PYTHON=ON -DFAISS_OPT_LEVEL=avx2 -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ONRunning on:
- CPU
- GPU
Interface:
- C++
- Python
Reproduction instructions
- clone the latest commit of faiss (3daf48c for now)
git clone https://github.com/facebookresearch/faiss.git && cd faiss- config for build
cmake -B build . -DFAISS_ENABLE_GPU=OFF -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DBUILD_TESTING=ON -DFAISS_ENABLE_PYTHON=ON -DFAISS_OPT_LEVEL=avx2 -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON- make for install
make -C build install -j