So I'm following the tutorial on : https://mxnet.apache.org/get_started/?platform=devices&iot=raspberry-pi&
I'm trying to use opencv and mxnet together for my project. I tried the prebuild whl but it uses numpy 1.12.4 or something but the opencv needs 1.16.2 or higher.
I tried to install with docker I get the error ModuleNotFoundError: No module named 'docker.errors' which is probably because i'm doing something wrong this is not my issue.
But my problem is with the native build, when I cmake I get the error " -- Configuring incomplete, errors occurred!"
and here is CMakeError
Performing C++ SOURCE FILE Test COMPILER_SUPPORT_MF16C failed with the followin$
Change Dir: /mnt/USB/.mxnet/mxnet/build/CMakeFiles/CMakeTmp
Run Build Command:"/usr/bin/ninja" "cmTC_ff7d6"
[1/2] Building CXX object CMakeFiles/cmTC_ff7d6.dir/src.cxx.o
FAILED:` CMakeFiles/cmTC_ff7d6.dir/src.cxx.o
/usr/bin/c++ -Wall -Wno-sign-compare -O3 -fopenmp -DCOMPILER_SUPPORT_MF16C -$
c++: error: unrecognized command line option '-mf16c'
ninja: build stopped: subcommand failed.Source file was:
int main() { return 0; }
We recommend using our script for collecting the diagnositc information. Run the following command and paste the outputs below:
```
curl --retry 10 -s https://raw.githubusercontent.com/dmlc/gluon-nlp/master/tools/diagnose.py | python
```----------Python Info----------
Version : 3.7.3
Compiler : GCC 8.3.0
Build : ('default', 'Dec 20 2019 18:57:59')
Arch : ('32bit', 'ELF')
------------Pip Info-----------
Version : 20.1.1
Directory : /home/pi/.virtualenvs/py3/lib/python3.7/site-packages/pip
----------MXNet Info-----------
No MXNet installed.
----------System Info----------
Platform : Linux-4.19.118-v7l+-armv7l-with-debian-10.4
system : Linux
node : raspberrypi
release : 4.19.118-v7l+
version : #1311 SMP Mon Apr 27 14:26:42 BST 2020
----------Hardware Info----------
machine : armv7l
processor :
Architecture: armv7l
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 1
Vendor ID: ARM
Model: 3
Model name: Cortex-A72
Stepping: r0p3
CPU max MHz: 1500.0000
CPU min MHz: 600.0000
BogoMIPS: 270.00
Flags: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
----------Network Test----------
Setting timeout: 10
Timing for MXNet: https://github.com/apache/incubator-mxnet, DNS: 0.0555 sec, LOAD: 0.7637 sec.
Timing for GluonNLP GitHub: https://github.com/dmlc/gluon-nlp, DNS: 0.0555 sec, LOAD: 0.8774 sec.
Timing for GluonNLP: http://gluon-nlp.mxnet.io, DNS: 0.0550 sec, LOAD: 5.9179 sec.
Timing for D2L: http://d2l.ai, DNS: 0.0552 sec, LOAD: 0.2132 sec.
Timing for D2L (zh-cn): http://zh.d2l.ai, DNS: 0.0569 sec, LOAD: 0.3506 sec.
Timing for FashionMNIST: https://repo.mxnet.io/gluon/dataset/fashion-mnist/train-labels-idx1-ubyte.gz, DNS: 0.0611 sec, LOAD: 0.7249 sec.
Timing for PYPI: https://pypi.python.org/pypi/pip, DNS: 0.0635 sec, LOAD: 2.4053 sec.
Error open Conda: https://repo.continuum.io/pkgs/free/, HTTP Error 403: Forbidden, DNS finished in 0.06275081634521484 sec.
Please use cmake -DUSE_F16C=0 [...]. It seems the autodetection is not working correctly.
@woreom you can refer to https://github.com/apache/incubator-mxnet/pull/18472 for a improved guide. If you have any issues with the updated guide, please comment on the PR.
Closing as the instructions were updated
Thank you for fast response and investigation.
but still running
cmake \ -DUSE_SSE=OFF \ -DUSE_CUDA=OFF \ -DUSE_OPENCV=ON \ -DUSE_OPENMP=ON \ -DUSE_MKL_IF_AVAILABLE=OFF \ -DUSE_SIGNAL_HANDLER=ON \ -DCMAKE_BUILD_TYPE=Release \ -GNinja ..
will result in the following error although use_cuda is off:
-- The CUDA compiler identification is unknown
CMake Error at CMakeLists.txt:117 (enable_language):
No CMAKE_CUDA_COMPILER could be found.
Tell CMake where to find the compiler by setting either the environment
variable "CUDACXX" or the CMake cache entry CMAKE_CUDA_COMPILER to the full
path to the compiler, or to the compiler name if it is in the PATH.
There's probably some cache issues. You ran cmake with a different command line options before and didn't delete the CMakeCache.txt
I checked but there were no CMakeCache.txt other than the one in /build/ but I rm -rf build every time I use the command cmake
Okay I finally found out what was wrong I use the command:
cmake -DUSE_SSE=OFF -DUSE_CUDA=OFF -DUSE_OPENCV=ON -DUSE_OPENMP=ON -DUSE_MKL_IF_AVAILABLE=OFF -DUSE_SIGNAL_HANDLER=ON -DUSE_LAPACK=OFF -DUSE_F16C=0 -DCMAKE_BUILD_TYPE=Release -GNinja ..
I add -DUSE_LAPACK=OFF -DUSE_F16C=0 because I encounter:
USE_LAPACK is ON
CMake Error at CMakeLists.txt:462 (add_subdirectory):
add_subdirectory given source
"/mnt/USB/.mxnet/mxnet/3rdparty/googletest/googletest" which is not an
existing directory.
-- Found GTest: gtest
-- Determining F16C support
-- Performing Test COMPILER_SUPPORT_MF16C
-- Performing Test COMPILER_SUPPORT_MF16C - Failed
CPU does not support F16C instructions
-- Found Python3: /home/pi/.virtualenvs/py3/bin/python3.7 (found version "3.7.3") found components: Interpreter
but even after that I still get :
-- The C compiler identification is GNU 8.3.0
-- The CXX compiler identification is GNU 8.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- CMAKE_CROSSCOMPILING FALSE
-- CMAKE_HOST_SYSTEM_PROCESSOR armv7l
-- CMAKE_SYSTEM_PROCESSOR armv7l
-- CMAKE_SYSTEM_NAME Linux
-- CMake version '3.13.4' using generator 'Ninja'
-- Found OpenBLAS libraries: /usr/lib/arm-linux-gnueabihf/libopenblas.so
-- Found OpenBLAS include: /usr/include/arm-linux-gnueabihf
-- Found OpenCV: /usr/local (found version "4.0.0") found components: core highgui imgproc imgcodecs
-- OpenCV 4.0.0 found (/usr/local/lib/cmake/opencv4)
-- OpenCV_LIBS=opencv_core;opencv_highgui;opencv_imgproc;opencv_imgcodecs
-- Found OpenMP_C: -fopenmp (found version "4.5")
-- Found OpenMP_CXX: -fopenmp (found version "4.5")
-- Found OpenMP: TRUE (found version "4.5")
CMake Error at CMakeLists.txt:462 (add_subdirectory):
add_subdirectory given source
"/mnt/USB/.mxnet/mxnet/3rdparty/googletest/googletest" which is not an
existing directory.
-- Found GTest: gtest
-- Found Python3: /home/pi/.virtualenvs/py3/bin/python3.7 (found version "3.7.3") found components: Interpreter
-- Configuring incomplete, errors occurred!
See also "/mnt/USB/.mxnet/mxnet/build/CMakeFiles/CMakeOutput.log".
what version of python did you use to build?
The error is
CMake Error at CMakeLists.txt:462 (add_subdirectory):
add_subdirectory given source
"/mnt/USB/.mxnet/mxnet/3rdparty/googletest/googletest" which is not an
existing directory.
Try git submodule update --init --recursive
Okay so I did what you said and I got to the point that I have to run ninja -j4 everything went fine till the last 4 builds where I got the error:
virtual memory exhausted: Cannot allocate memory
ninja: build stopped: subcommand failed.
I have an armv71 processor and 4gb ram
I did it on my own laptop which has an 8gb ram and it still didn't work
https://github.com/apache/incubator-mxnet/issues/18501
You can use swap or help fix this bug or compile the stable mxnet version
18501
You can use swap or help fix this bug or compile the stable mxnet version
I tried increasing swap but it wouldn't use it.
also it would be a great help if you reupload the prebuild mxnet-1.5.0.whl on the site
@woreom the wheel is not compliant with ASF licensing policy and it's pointing to an older release. You can still find the link by looking at the commit (search for "whl").
We'll need to fix the licensing issues (don't redistribute libgfortran.so in the whl) and reupload
Hi @leezu , is it possible to release pre-built MXNet pacakge on ARM?
It seems that the older release could not be re-uploaded because of ASF licensing policy, but is it possible to release pre-built MXNet 1.7 and 2.0+ package on ARM?
Based on https://github.com/apache/incubator-mxnet/pull/18513 we can do portable and compliant binary releases later in principle. But this will require compiling the toolchain ourselves for ARM, as flang compiler binary is not available for ARM.
But for the raspberry pi setup, the portability aspect may not be so important. We can decide to publish non-portable (target one or a few select OS version) binaries. (In that case we don't need to use the flang compiler) If you're interested in building them, I'm happy to discuss more about how to proceed.
@leezu after the result of #18501, I used ninja to make mxnet although it resulted in the error
[1/2] Linking CXX executable im2rec
FAILED: im2rec
: && /usr/bin/g++ -Wall -Wno-sign-compare -O3 -fopenmp -O3 -DNDEBUG CMakeFiles/im2rec.dir/tools/im2rec.cc.o -o im2rec -Wl,-rpath,/mnt/USB/.mxnet/mxnet/build:/usr/local/lib /usr/lib/arm-linux-gnueabihf/libopenblas.so /usr/lib/arm-linux-gnueabihf/librt.so -llapack libmxnet.so 3rdparty/dmlc-core/libdmlc.a /usr/local/lib/libopencv_highgui.so.4.0.0 /usr/local/lib/libopencv_videoio.so.4.0.0 /usr/local/lib/libopencv_imgcodecs.so.4.0.0 /usr/local/lib/libopencv_imgproc.so.4.0.0 /usr/local/lib/libopencv_core.so.4.0.0 /usr/lib/gcc/arm-linux-gnueabihf/7/libgomp.so /usr/lib/arm-linux-gnueabihf/libpthread.so -lrt -ldl /usr/lib/arm-linux-gnueabihf/libopenblas.so /usr/lib/arm-linux-gnueabihf/librt.so -llapack && :
/usr/bin/ld: libmxnet.so: undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: libmxnet.so: undefined reference to `__atomic_fetch_sub_8'
/usr/bin/ld: libmxnet.so: undefined reference to `__atomic_store_8'
/usr/bin/ld: libmxnet.so: undefined reference to `__atomic_load_8'
collect2: error: ld returned 1 exit status
[2/2] Linking CXX executable tests/mxnet_unit_tests
FAILED: tests/mxnet_unit_tests
: && /usr/bin/g++ -Wall -Wno-sign-compare -O3 -fopenmp -O3 -DNDEBUG tests/CMakeFiles/mxnet_unit_tests.dir/cpp/engine/engine_shutdown_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/engine/omp_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/engine/thread_local_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/engine/threaded_engine_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/kvstore/gpu_topology_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/misc/base.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/misc/libinfo_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/activation_perf.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/batchnorm_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/coreop_perf.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/dropout_perf.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/fully_conn_perf.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/krprod_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/mkldnn_operator_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/mkldnn_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/runner/core_op_runner_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/slice_channel_perf.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/tune/operator_tune_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/storage/storage_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/test_main.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/thread_safety/thread_safety_test.cc.o -o tests/mxnet_unit_tests -Wl,-rpath,/mnt/USB/.mxnet/mxnet/build:/usr/local/lib lib/libgtest.a 3rdparty/dmlc-core/libdmlc.a /usr/lib/arm-linux-gnueabihf/libopenblas.so /usr/lib/arm-linux-gnueabihf/librt.so -llapack libmxnet.so 3rdparty/dmlc-core/libdmlc.a /usr/lib/gcc/arm-linux-gnueabihf/7/libgomp.so /usr/lib/arm-linux-gnueabihf/libpthread.so -lrt /usr/local/lib/libopencv_highgui.so.4.0.0 /usr/local/lib/libopencv_videoio.so.4.0.0 /usr/local/lib/libopencv_imgcodecs.so.4.0.0 /usr/local/lib/libopencv_imgproc.so.4.0.0 /usr/local/lib/libopencv_core.so.4.0.0 -ldl /usr/lib/arm-linux-gnueabihf/libopenblas.so /usr/lib/arm-linux-gnueabihf/librt.so -llapack && :
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/runner/core_op_runner_test.cc.o: in function `mxnet::test::OperatorRunner<mxnet::test::op::CoreOpProp, mxnet::test::op::CoreOpExecutor<float, float> >::TimingTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, bool, std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&, int, unsigned int, std::vector<mxnet::TShape, std::allocator<mxnet::TShape> > const&, bool) [clone .constprop.1100]':
core_op_runner_test.cc:(.text+0x487c): undefined reference to `__atomic_load_8'
/usr/bin/ld: core_op_runner_test.cc:(.text+0x48bc): undefined reference to `__atomic_load_8'
/usr/bin/ld: core_op_runner_test.cc:(.text+0x4a20): undefined reference to `__atomic_load_8'
/usr/bin/ld: core_op_runner_test.cc:(.text+0x4a38): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: core_op_runner_test.cc:(.text+0x4a44): undefined reference to `__atomic_load_8'
/usr/bin/ld: core_op_runner_test.cc:(.text+0x4a58): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/activation_perf.cc.o: in function `ACTIVATION_PERF_TimingCPU_Test::TestBody()':
activation_perf.cc:(.text+0x1bcc): undefined reference to `__atomic_load_8'
/usr/bin/ld: activation_perf.cc:(.text+0x1c08): undefined reference to `__atomic_load_8'
/usr/bin/ld: activation_perf.cc:(.text+0x1d70): undefined reference to `__atomic_load_8'
/usr/bin/ld: activation_perf.cc:(.text+0x1d88): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: activation_perf.cc:(.text+0x1d94): undefined reference to `__atomic_load_8'
/usr/bin/ld: activation_perf.cc:(.text+0x1da8): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/activation_perf.cc.o: in function `dmlc::LogCheckError dmlc::LogCheck_NE<std::atomic<unsigned long long>, unsigned int>(std::atomic<unsigned long long> const&, unsigned int const&)':
activation_perf.cc:(.text._ZN4dmlc11LogCheck_NEISt6atomicIyEjEENS_13LogCheckErrorERKT_RKT0_[_ZN4dmlc11LogCheck_NEISt6atomicIyEjEENS_13LogCheckErrorERKT_RKT0_]+0x1c): undefined reference to `__atomic_load_8'
/usr/bin/ld: activation_perf.cc:(.text._ZN4dmlc11LogCheck_NEISt6atomicIyEjEENS_13LogCheckErrorERKT_RKT0_[_ZN4dmlc11LogCheck_NEISt6atomicIyEjEENS_13LogCheckErrorERKT_RKT0_]+0x84): undefined reference to `__atomic_load_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/activation_perf.cc.o: in function `dmlc::LogCheckError dmlc::LogCheck_EQ<std::atomic<unsigned long long>, unsigned int>(std::atomic<unsigned long long> const&, unsigned int const&)':
activation_perf.cc:(.text._ZN4dmlc11LogCheck_EQISt6atomicIyEjEENS_13LogCheckErrorERKT_RKT0_[_ZN4dmlc11LogCheck_EQISt6atomicIyEjEENS_13LogCheckErrorERKT_RKT0_]+0x1c): undefined reference to `__atomic_load_8'
/usr/bin/ld: activation_perf.cc:(.text._ZN4dmlc11LogCheck_EQISt6atomicIyEjEENS_13LogCheckErrorERKT_RKT0_[_ZN4dmlc11LogCheck_EQISt6atomicIyEjEENS_13LogCheckErrorERKT_RKT0_]+0x74): undefined reference to `__atomic_load_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/activation_perf.cc.o: in function `mxnet::test::perf::TimingInstrument::Info::Info(mxnet::test::perf::TimingInstrument::Info const&)':
activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument4InfoC2ERKS3_[_ZN5mxnet4test4perf16TimingInstrument4InfoC5ERKS3_]+0x34): undefined reference to `__atomic_load_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/activation_perf.cc.o:activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument4InfoC2ERKS3_[_ZN5mxnet4test4perf16TimingInstrument4InfoC5ERKS3_]+0x50): more undefined references to `__atomic_load_8' follow
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/activation_perf.cc.o: in function `mxnet::test::perf::TimingInstrument::stopTiming(int, unsigned int)':
activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument10stopTimingEij[_ZN5mxnet4test4perf16TimingInstrument10stopTimingEij]+0x1a4): undefined reference to `__atomic_fetch_sub_8'
/usr/bin/ld: activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument10stopTimingEij[_ZN5mxnet4test4perf16TimingInstrument10stopTimingEij]+0x450): undefined reference to `__atomic_load_8'
/usr/bin/ld: activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument10stopTimingEij[_ZN5mxnet4test4perf16TimingInstrument10stopTimingEij]+0x468): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument10stopTimingEij[_ZN5mxnet4test4perf16TimingInstrument10stopTimingEij]+0x47c): undefined reference to `__atomic_store_8'
/usr/bin/ld: activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument10stopTimingEij[_ZN5mxnet4test4perf16TimingInstrument10stopTimingEij]+0x490): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/activation_perf.cc.o: in function `mxnet::test::perf::TimingInstrument::startTiming(int, char const*)':
activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument11startTimingEiPKc[_ZN5mxnet4test4perf16TimingInstrument11startTimingEiPKc]+0xc0): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument11startTimingEiPKc[_ZN5mxnet4test4perf16TimingInstrument11startTimingEiPKc]+0x1a8): undefined reference to `__atomic_store_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/activation_perf.cc.o: in function `mxnet::test::perf::TimingInstrument::reset()':
activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument5resetEv[_ZN5mxnet4test4perf16TimingInstrument5resetEv]+0xe0): undefined reference to `__atomic_load_8'
/usr/bin/ld: activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument5resetEv[_ZN5mxnet4test4perf16TimingInstrument5resetEv]+0x108): undefined reference to `__atomic_load_8'
/usr/bin/ld: activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument5resetEv[_ZN5mxnet4test4perf16TimingInstrument5resetEv]+0x2b8): undefined reference to `__atomic_store_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/activation_perf.cc.o: in function `void mxnet::test::perf::TimingInstrument::print<std::ostream>(std::ostream*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)':
activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument5printISoEEvPT_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb[_ZN5mxnet4test4perf16TimingInstrument5printISoEEvPT_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb]+0x1a0): undefined reference to `__atomic_load_8'
/usr/bin/ld: activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument5printISoEEvPT_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb[_ZN5mxnet4test4perf16TimingInstrument5printISoEEvPT_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb]+0x1b8): undefined reference to `__atomic_load_8'
/usr/bin/ld: activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument5printISoEEvPT_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb[_ZN5mxnet4test4perf16TimingInstrument5printISoEEvPT_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb]+0x1e8): undefined reference to `__atomic_load_8'
/usr/bin/ld: activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument5printISoEEvPT_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb[_ZN5mxnet4test4perf16TimingInstrument5printISoEEvPT_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb]+0x2b4): undefined reference to `__atomic_load_8'
/usr/bin/ld: activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument5printISoEEvPT_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb[_ZN5mxnet4test4perf16TimingInstrument5printISoEEvPT_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb]+0x334): undefined reference to `__atomic_load_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/activation_perf.cc.o:activation_perf.cc:(.text._ZN5mxnet4test4perf16TimingInstrument5printISoEEvPT_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb[_ZN5mxnet4test4perf16TimingInstrument5printISoEEvPT_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb]+0x368): more undefined references to `__atomic_load_8' follow
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/batchnorm_test.cc.o: in function `mxnet::test::perf::TimingInstrument::operator+=(mxnet::test::perf::TimingInstrument const&)':
batchnorm_test.cc:(.text._ZN5mxnet4test4perf16TimingInstrumentpLERKS2_[_ZN5mxnet4test4perf16TimingInstrumentpLERKS2_]+0x268): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: batchnorm_test.cc:(.text._ZN5mxnet4test4perf16TimingInstrumentpLERKS2_[_ZN5mxnet4test4perf16TimingInstrumentpLERKS2_]+0x274): undefined reference to `__atomic_load_8'
/usr/bin/ld: batchnorm_test.cc:(.text._ZN5mxnet4test4perf16TimingInstrumentpLERKS2_[_ZN5mxnet4test4perf16TimingInstrumentpLERKS2_]+0x288): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/coreop_perf.cc.o: in function `void RunCoreOpTimingTest<float>(bool, std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&, char const*, char const*) [clone .constprop.1096]':
coreop_perf.cc:(.text+0x2b84): undefined reference to `__atomic_load_8'
/usr/bin/ld: coreop_perf.cc:(.text+0x2bc0): undefined reference to `__atomic_load_8'
/usr/bin/ld: coreop_perf.cc:(.text+0x2d28): undefined reference to `__atomic_load_8'
/usr/bin/ld: coreop_perf.cc:(.text+0x2d40): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: coreop_perf.cc:(.text+0x2d4c): undefined reference to `__atomic_load_8'
/usr/bin/ld: coreop_perf.cc:(.text+0x2d60): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/dropout_perf.cc.o: in function `DROPOUT_PERF_TimingCPU_Test::TestBody()':
dropout_perf.cc:(.text+0x1fa4): undefined reference to `__atomic_load_8'
/usr/bin/ld: dropout_perf.cc:(.text+0x1fe0): undefined reference to `__atomic_load_8'
/usr/bin/ld: dropout_perf.cc:(.text+0x2148): undefined reference to `__atomic_load_8'
/usr/bin/ld: dropout_perf.cc:(.text+0x2160): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: dropout_perf.cc:(.text+0x216c): undefined reference to `__atomic_load_8'
/usr/bin/ld: dropout_perf.cc:(.text+0x2180): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/fully_conn_perf.cc.o: in function `FULLY_CONNECTED_FullyConnectedTimingCPU_Test::TestBody()':
fully_conn_perf.cc:(.text+0x20e8): undefined reference to `__atomic_load_8'
/usr/bin/ld: fully_conn_perf.cc:(.text+0x2124): undefined reference to `__atomic_load_8'
/usr/bin/ld: fully_conn_perf.cc:(.text+0x228c): undefined reference to `__atomic_load_8'
/usr/bin/ld: fully_conn_perf.cc:(.text+0x22a4): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: fully_conn_perf.cc:(.text+0x22b0): undefined reference to `__atomic_load_8'
/usr/bin/ld: fully_conn_perf.cc:(.text+0x22c4): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/slice_channel_perf.cc.o: in function `SLICE_CHANNEL_PERF_TimingCPU_Test::TestBody()':
slice_channel_perf.cc:(.text+0x1934): undefined reference to `__atomic_load_8'
/usr/bin/ld: slice_channel_perf.cc:(.text+0x194c): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: slice_channel_perf.cc:(.text+0x1958): undefined reference to `__atomic_load_8'
/usr/bin/ld: slice_channel_perf.cc:(.text+0x196c): undefined reference to `__atomic_fetch_add_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/tune/operator_tune_test.cc.o: in function `mxnet::test::tune::TuningTester<long long>::CalculateModeSort(mxnet::test::op::TimingDirection, bool) const':
operator_tune_test.cc:(.text._ZNK5mxnet4test4tune12TuningTesterIxE17CalculateModeSortENS0_2op15TimingDirectionEb[_ZNK5mxnet4test4tune12TuningTesterIxE17CalculateModeSortENS0_2op15TimingDirectionEb]+0x1f8): undefined reference to `__atomic_load_8'
/usr/bin/ld: operator_tune_test.cc:(.text._ZNK5mxnet4test4tune12TuningTesterIxE17CalculateModeSortENS0_2op15TimingDirectionEb[_ZNK5mxnet4test4tune12TuningTesterIxE17CalculateModeSortENS0_2op15TimingDirectionEb]+0x20c): undefined reference to `__atomic_load_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/tune/operator_tune_test.cc.o: in function `mxnet::test::tune::TuningTester<float>::CalculateModeSort(mxnet::test::op::TimingDirection, bool) const':
operator_tune_test.cc:(.text._ZNK5mxnet4test4tune12TuningTesterIfE17CalculateModeSortENS0_2op15TimingDirectionEb[_ZNK5mxnet4test4tune12TuningTesterIfE17CalculateModeSortENS0_2op15TimingDirectionEb]+0x1f8): undefined reference to `__atomic_load_8'
/usr/bin/ld: operator_tune_test.cc:(.text._ZNK5mxnet4test4tune12TuningTesterIfE17CalculateModeSortENS0_2op15TimingDirectionEb[_ZNK5mxnet4test4tune12TuningTesterIfE17CalculateModeSortENS0_2op15TimingDirectionEb]+0x20c): undefined reference to `__atomic_load_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/tune/operator_tune_test.cc.o: in function `mxnet::test::tune::TuningTester<mshadow::half::half_t>::CalculateModeSort(mxnet::test::op::TimingDirection, bool) const':
operator_tune_test.cc:(.text._ZNK5mxnet4test4tune12TuningTesterIN7mshadow4half6half_tEE17CalculateModeSortENS0_2op15TimingDirectionEb[_ZNK5mxnet4test4tune12TuningTesterIN7mshadow4half6half_tEE17CalculateModeSortENS0_2op15TimingDirectionEb]+0x1f8): undefined reference to `__atomic_load_8'
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/tune/operator_tune_test.cc.o:operator_tune_test.cc:(.text._ZNK5mxnet4test4tune12TuningTesterIN7mshadow4half6half_tEE17CalculateModeSortENS0_2op15TimingDirectionEb[_ZNK5mxnet4test4tune12TuningTesterIN7mshadow4half6half_tEE17CalculateModeSortENS0_2op15TimingDirectionEb]+0x20c): more undefined references to `__atomic_load_8' follow
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
and libmxnet.so was created so I installed it on my raspberry pi and got an error like this when importing it.
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/mnt/USB/.mxnet/mxnet/python/mxnet/__init__.py", line 23, in <module>
from .context import Context, current_context, cpu, gpu, cpu_pinned
File "/mnt/USB/.mxnet/mxnet/python/mxnet/context.py", line 23, in <module>
from .base import classproperty, with_metaclass, _MXClassPropertyMetaClass
File "/mnt/USB/.mxnet/mxnet/python/mxnet/base.py", line 351, in <module>
_LIB = _load_lib()
File "/mnt/USB/.mxnet/mxnet/python/mxnet/base.py", line 342, in _load_lib
lib = ctypes.CDLL(lib_path[0], ctypes.RTLD_LOCAL)
File "/usr/lib/python3.7/ctypes/__init__.py", line 356, in __init__
self._handle = _dlopen(self._name, mode)
OSError: /mnt/USB/.mxnet/mxnet/python/mxnet/../../build/libmxnet.so: failed to map segment from shared object
@woreom
Could you please add -latomic into LINK_LIBRARIES of build libmxnet.so in the file build/build.ninja?
build libmxnet.so: CXX_SHARED_LIBRARY_LINKER__mxnet_ CMakeFiles/mxnet.dir/src/api/_api_internal/_api_internal.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_det.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_eig.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_eigvals.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_gesvd.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_inv.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_lstsq.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_matrix_rank.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_norm.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_pinv.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_potrf.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_qr.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_slogdet.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_solve.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_tensorinv.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/linalg/np_tensorsolve.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_bincount_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_broadcast_reduce_op_boolean.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_broadcast_reduce_op_index.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_broadcast_reduce_op_value.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_cross.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_cumsum.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_delete_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_diff_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_ediff1d_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_einsum_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_elemwise_broadcast_logic_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_elemwise_broadcast_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_elemwise_broadcast_op_extended_sec.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_elemwise_unary_op_basic.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_fill_diagonal_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_histogram_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_init_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_insert_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_interp_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_kron.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_matmul_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_matrix_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_memory_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_moments_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_nan_to_num_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_nonzero_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_pad_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_percentile_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_polynomial_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_repeat_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_tensordot_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_trace_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_tri_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_tril_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_triu_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_unique_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_where_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/np_window_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/random/np_choice_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/random/np_exponential_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/random/np_laplace_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/random/np_location_scale_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/random/np_pareto_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/random/np_power_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/random/np_rayleigh_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/numpy/random/np_weibull_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/op_utils.cc.o CMakeFiles/mxnet.dir/src/api/operator/random/np_gamma_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/random/np_normal_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/random/np_uniform_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/random/shuffle_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/tensor/elemwise_binary_broadcast_op_extended.cc.o CMakeFiles/mxnet.dir/src/api/operator/tensor/indexing_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/tensor/matrix_op.cc.o CMakeFiles/mxnet.dir/src/api/operator/ufunc_helper.cc.o CMakeFiles/mxnet.dir/src/api/operator/utils.cc.o CMakeFiles/mxnet.dir/src/base.cc.o CMakeFiles/mxnet.dir/src/c_api/c_api.cc.o CMakeFiles/mxnet.dir/src/c_api/c_api_error.cc.o CMakeFiles/mxnet.dir/src/c_api/c_api_executor.cc.o CMakeFiles/mxnet.dir/src/c_api/c_api_function.cc.o CMakeFiles/mxnet.dir/src/c_api/c_api_ndarray.cc.o CMakeFiles/mxnet.dir/src/c_api/c_api_profile.cc.o CMakeFiles/mxnet.dir/src/c_api/c_api_symbolic.cc.o CMakeFiles/mxnet.dir/src/c_api/c_api_test.cc.o CMakeFiles/mxnet.dir/src/c_api/c_predict_api.cc.o CMakeFiles/mxnet.dir/src/common/cuda_utils.cc.o CMakeFiles/mxnet.dir/src/common/exec_utils.cc.o CMakeFiles/mxnet.dir/src/common/rtc.cc.o CMakeFiles/mxnet.dir/src/common/utils.cc.o CMakeFiles/mxnet.dir/src/engine/engine.cc.o CMakeFiles/mxnet.dir/src/engine/naive_engine.cc.o CMakeFiles/mxnet.dir/src/engine/openmp.cc.o CMakeFiles/mxnet.dir/src/engine/threaded_engine.cc.o CMakeFiles/mxnet.dir/src/engine/threaded_engine_perdevice.cc.o CMakeFiles/mxnet.dir/src/engine/threaded_engine_pooled.cc.o CMakeFiles/mxnet.dir/src/executor/attach_op_execs_pass.cc.o CMakeFiles/mxnet.dir/src/executor/attach_op_resource_pass.cc.o CMakeFiles/mxnet.dir/src/executor/eliminate_common_expr_pass.cc.o CMakeFiles/mxnet.dir/src/executor/graph_executor.cc.o CMakeFiles/mxnet.dir/src/executor/infer_graph_attr_pass.cc.o CMakeFiles/mxnet.dir/src/executor/inplace_addto_detect_pass.cc.o CMakeFiles/mxnet.dir/src/executor/pointwise_fusion_pass.cc.o CMakeFiles/mxnet.dir/src/imperative/cached_op.cc.o CMakeFiles/mxnet.dir/src/imperative/cached_op_threadsafe.cc.o CMakeFiles/mxnet.dir/src/imperative/imperative.cc.o CMakeFiles/mxnet.dir/src/imperative/imperative_utils.cc.o CMakeFiles/mxnet.dir/src/imperative/naive_cached_op.cc.o CMakeFiles/mxnet.dir/src/initialize.cc.o CMakeFiles/mxnet.dir/src/io/batchify.cc.o CMakeFiles/mxnet.dir/src/io/dataloader.cc.o CMakeFiles/mxnet.dir/src/io/dataset.cc.o CMakeFiles/mxnet.dir/src/io/image_aug_default.cc.o CMakeFiles/mxnet.dir/src/io/image_det_aug_default.cc.o CMakeFiles/mxnet.dir/src/io/image_io.cc.o CMakeFiles/mxnet.dir/src/io/io.cc.o CMakeFiles/mxnet.dir/src/io/iter_csv.cc.o CMakeFiles/mxnet.dir/src/io/iter_image_det_recordio.cc.o CMakeFiles/mxnet.dir/src/io/iter_image_recordio.cc.o CMakeFiles/mxnet.dir/src/io/iter_image_recordio_2.cc.o CMakeFiles/mxnet.dir/src/io/iter_libsvm.cc.o CMakeFiles/mxnet.dir/src/io/iter_mnist.cc.o CMakeFiles/mxnet.dir/src/io/iter_sampler.cc.o CMakeFiles/mxnet.dir/src/ir/expr.cc.o CMakeFiles/mxnet.dir/src/kvstore/gradient_compression.cc.o CMakeFiles/mxnet.dir/src/kvstore/kvstore.cc.o CMakeFiles/mxnet.dir/src/kvstore/kvstore_utils.cc.o CMakeFiles/mxnet.dir/src/lang/expr.cc.o CMakeFiles/mxnet.dir/src/lang/ir.cc.o CMakeFiles/mxnet.dir/src/libinfo.cc.o CMakeFiles/mxnet.dir/src/ndarray/ndarray.cc.o CMakeFiles/mxnet.dir/src/ndarray/ndarray_function.cc.o CMakeFiles/mxnet.dir/src/nnvm/amp_infer_unknown.cc.o CMakeFiles/mxnet.dir/src/nnvm/gradient.cc.o CMakeFiles/mxnet.dir/src/nnvm/graph_editor.cc.o CMakeFiles/mxnet.dir/src/nnvm/legacy_json_util.cc.o CMakeFiles/mxnet.dir/src/nnvm/legacy_op_util.cc.o CMakeFiles/mxnet.dir/src/nnvm/low_precision_pass.cc.o CMakeFiles/mxnet.dir/src/nnvm/plan_memory.cc.o CMakeFiles/mxnet.dir/src/nnvm/tvm_bridge.cc.o CMakeFiles/mxnet.dir/src/operator/batch_norm_v1.cc.o CMakeFiles/mxnet.dir/src/operator/bilinear_sampler.cc.o CMakeFiles/mxnet.dir/src/operator/c_lapack_api.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/adamw.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/adaptive_avg_pooling.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/all_finite.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/allclose_op.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/amp_graph_pass.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/batch_norm_relu.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/bilinear_resize.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/boolean_mask.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/bounding_box.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/count_sketch.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/deformable_convolution.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/deformable_psroi_pooling.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/dgl_graph.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/fft.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/gradient_multiplier_op.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/hawkes_ll.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/ifft.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/index_array.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/index_copy.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/krprod.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/modulated_deformable_convolution.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/multi_lamb.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/multi_lars.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/multi_proposal.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/multi_sum_sq.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/multibox_detection.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/multibox_prior.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/multibox_target.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/nnz.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/optimizer_op.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/preloaded_multi_sgd.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/proposal.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/psroi_pooling.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/quadratic_op.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/reset_arrays.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/roi_align.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/rroi_align.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/stes_op.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/sync_batch_norm.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/transformer.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/tvmop/dot.cc.o CMakeFiles/mxnet.dir/src/operator/contrib/tvmop/ufunc.cc.o CMakeFiles/mxnet.dir/src/operator/control_flow.cc.o CMakeFiles/mxnet.dir/src/operator/convolution_v1.cc.o CMakeFiles/mxnet.dir/src/operator/correlation.cc.o CMakeFiles/mxnet.dir/src/operator/crop.cc.o CMakeFiles/mxnet.dir/src/operator/cross_device_copy.cc.o CMakeFiles/mxnet.dir/src/operator/custom/custom.cc.o CMakeFiles/mxnet.dir/src/operator/custom/native_op.cc.o CMakeFiles/mxnet.dir/src/operator/custom/ndarray_op.cc.o CMakeFiles/mxnet.dir/src/operator/fusion/fused_op.cc.o CMakeFiles/mxnet.dir/src/operator/grid_generator.cc.o CMakeFiles/mxnet.dir/src/operator/identity_attach_KL_sparse_reg.cc.o CMakeFiles/mxnet.dir/src/operator/image/crop.cc.o CMakeFiles/mxnet.dir/src/operator/image/image_random.cc.o CMakeFiles/mxnet.dir/src/operator/image/resize.cc.o CMakeFiles/mxnet.dir/src/operator/instance_norm.cc.o CMakeFiles/mxnet.dir/src/operator/l2_normalization.cc.o CMakeFiles/mxnet.dir/src/operator/leaky_relu.cc.o CMakeFiles/mxnet.dir/src/operator/loss_binary_op.cc.o CMakeFiles/mxnet.dir/src/operator/make_loss.cc.o CMakeFiles/mxnet.dir/src/operator/nn/activation.cc.o CMakeFiles/mxnet.dir/src/operator/nn/batch_norm.cc.o CMakeFiles/mxnet.dir/src/operator/nn/concat.cc.o CMakeFiles/mxnet.dir/src/operator/nn/convolution.cc.o CMakeFiles/mxnet.dir/src/operator/nn/ctc_loss.cc.o CMakeFiles/mxnet.dir/src/operator/nn/cudnn/cudnn_algoreg.cc.o CMakeFiles/mxnet.dir/src/operator/nn/cudnn/cudnn_batch_norm.cc.o CMakeFiles/mxnet.dir/src/operator/nn/deconvolution.cc.o CMakeFiles/mxnet.dir/src/operator/nn/dropout.cc.o CMakeFiles/mxnet.dir/src/operator/nn/fully_connected.cc.o CMakeFiles/mxnet.dir/src/operator/nn/group_norm.cc.o CMakeFiles/mxnet.dir/src/operator/nn/im2col.cc.o CMakeFiles/mxnet.dir/src/operator/nn/layer_norm.cc.o CMakeFiles/mxnet.dir/src/operator/nn/log_softmax.cc.o CMakeFiles/mxnet.dir/src/operator/nn/lrn.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_act.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_base.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_concat.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_convolution.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_copy.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_deconvolution.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_fully_connected.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_log_softmax.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_pooling.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_reshape.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_rnn.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_slice.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_softmax.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_softmax_output.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_sum.cc.o CMakeFiles/mxnet.dir/src/operator/nn/mkldnn/mkldnn_transpose.cc.o CMakeFiles/mxnet.dir/src/operator/nn/moments.cc.o CMakeFiles/mxnet.dir/src/operator/nn/pooling.cc.o CMakeFiles/mxnet.dir/src/operator/nn/softmax.cc.o CMakeFiles/mxnet.dir/src/operator/nn/softmax_activation.cc.o CMakeFiles/mxnet.dir/src/operator/nn/softmin.cc.o CMakeFiles/mxnet.dir/src/operator/nn/upsampling.cc.o CMakeFiles/mxnet.dir/src/operator/nnpack/nnpack_util.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/linalg/np_eig.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/linalg/np_eigvals.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/linalg/np_gesvd.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/linalg/np_lstsq.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/linalg/np_matrix_rank.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/linalg/np_norm.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/linalg/np_norm_backward.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/linalg/np_norm_forward.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/linalg/np_pinv.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/linalg/np_potrf.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/linalg/np_qr.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/linalg/np_solve.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/linalg/np_tensorinv.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/linalg/np_tensorsolve.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_bincount_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_boolean_mask_assign.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_broadcast_reduce_op_boolean.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_broadcast_reduce_op_index.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_broadcast_reduce_op_value.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_constraint_check.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_cross.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_cumsum.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_delete_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_diff.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_dot.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_ediff1d_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_einsum_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_elemwise_broadcast_logic_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_elemwise_broadcast_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_elemwise_broadcast_op_extended.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_elemwise_broadcast_op_extended_sec.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_elemwise_unary_op_basic.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_fill_diagonal_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_init_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_insert_op_scalar.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_insert_op_slice.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_insert_op_tensor.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_interp_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_kron.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_matmul_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_matrix_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_memory_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_moments_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_nonzero_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_pad_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_percentile_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_polynomial_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_repeat_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_tensordot_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_trace_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_tri_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_tril_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_triu_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_true_divide.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_unique_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_where_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/np_window_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/random/dist_common.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/random/np_bernoulli_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/random/np_choice_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/random/np_exponential_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/random/np_gamma_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/random/np_laplace_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/random/np_location_scale_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/random/np_multinomial_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/random/np_normal_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/random/np_pareto_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/random/np_power_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/random/np_rayleigh_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/random/np_uniform_op.cc.o CMakeFiles/mxnet.dir/src/operator/numpy/random/np_weibull_op.cc.o CMakeFiles/mxnet.dir/src/operator/operator.cc.o CMakeFiles/mxnet.dir/src/operator/operator_tune.cc.o CMakeFiles/mxnet.dir/src/operator/operator_util.cc.o CMakeFiles/mxnet.dir/src/operator/optimizer_op.cc.o CMakeFiles/mxnet.dir/src/operator/pad.cc.o CMakeFiles/mxnet.dir/src/operator/pooling_v1.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/calibrate.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/dequantize.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/mkldnn/mkldnn_quantized_act.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/mkldnn/mkldnn_quantized_batch_norm.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/mkldnn/mkldnn_quantized_concat.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/mkldnn/mkldnn_quantized_conv.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/mkldnn/mkldnn_quantized_elemwise_add.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/mkldnn/mkldnn_quantized_flatten.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/mkldnn/mkldnn_quantized_fully_connected.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/mkldnn/mkldnn_quantized_pooling.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/quantize.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/quantize_graph_pass.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/quantize_v2.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/quantized_activation.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/quantized_batch_norm.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/quantized_concat.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/quantized_conv.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/quantized_elemwise_add.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/quantized_elemwise_mul.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/quantized_flatten.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/quantized_fully_connected.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/quantized_indexing_op.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/quantized_pooling.cc.o CMakeFiles/mxnet.dir/src/operator/quantization/requantize.cc.o CMakeFiles/mxnet.dir/src/operator/random/multisample_op.cc.o CMakeFiles/mxnet.dir/src/operator/random/pdf_op.cc.o CMakeFiles/mxnet.dir/src/operator/random/sample_multinomial_op.cc.o CMakeFiles/mxnet.dir/src/operator/random/sample_op.cc.o CMakeFiles/mxnet.dir/src/operator/random/shuffle_op.cc.o CMakeFiles/mxnet.dir/src/operator/random/unique_sample_op.cc.o CMakeFiles/mxnet.dir/src/operator/regression_output.cc.o CMakeFiles/mxnet.dir/src/operator/rnn.cc.o CMakeFiles/mxnet.dir/src/operator/roi_pooling.cc.o CMakeFiles/mxnet.dir/src/operator/sequence_last.cc.o CMakeFiles/mxnet.dir/src/operator/sequence_mask.cc.o CMakeFiles/mxnet.dir/src/operator/sequence_reverse.cc.o CMakeFiles/mxnet.dir/src/operator/slice_channel.cc.o CMakeFiles/mxnet.dir/src/operator/softmax_output.cc.o CMakeFiles/mxnet.dir/src/operator/spatial_transformer.cc.o CMakeFiles/mxnet.dir/src/operator/subgraph/build_subgraph.cc.o CMakeFiles/mxnet.dir/src/operator/subgraph/default_subgraph_property.cc.o CMakeFiles/mxnet.dir/src/operator/subgraph/default_subgraph_property_v2.cc.o CMakeFiles/mxnet.dir/src/operator/subgraph/mkldnn/mkldnn_conv.cc.o CMakeFiles/mxnet.dir/src/operator/subgraph/mkldnn/mkldnn_fc.cc.o CMakeFiles/mxnet.dir/src/operator/subgraph/mkldnn/mkldnn_subgraph_property.cc.o CMakeFiles/mxnet.dir/src/operator/subgraph/tensorrt/nnvm_to_onnx.cc.o CMakeFiles/mxnet.dir/src/operator/subgraph/tensorrt/onnx_to_tensorrt.cc.o CMakeFiles/mxnet.dir/src/operator/subgraph/tensorrt/tensorrt.cc.o CMakeFiles/mxnet.dir/src/operator/subgraph_op_common.cc.o CMakeFiles/mxnet.dir/src/operator/svm_output.cc.o CMakeFiles/mxnet.dir/src/operator/swapaxis.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/amp_cast.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/broadcast_reduce_minmax_value.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/broadcast_reduce_norm_value.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/broadcast_reduce_op_index.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/broadcast_reduce_op_value.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/broadcast_reduce_prod_value.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/broadcast_reduce_sum_value.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/cast_storage.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/control_flow_op.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/diag_op.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/dot.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_binary_broadcast_op_basic.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_binary_broadcast_op_extended.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_binary_broadcast_op_logic.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_binary_op.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_binary_op_basic.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_binary_op_extended.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_binary_op_logic.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_binary_scalar_op_basic.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_binary_scalar_op_extended.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_binary_scalar_op_logic.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_scatter_op.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_sum.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_unary_op_basic.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_unary_op_logexp.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_unary_op_pow.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/elemwise_unary_op_trig.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/histogram.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/index_add_backward.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/index_add_forward.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/indexing_op.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/init_op.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/la_op.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/matrix_op.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/ordering_op.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/ravel.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/sparse_retain.cc.o CMakeFiles/mxnet.dir/src/operator/tensor/square_sum.cc.o CMakeFiles/mxnet.dir/src/operator/tvmop/op_module.cc.o CMakeFiles/mxnet.dir/src/profiler/aggregate_stats.cc.o CMakeFiles/mxnet.dir/src/profiler/nvtx.cc.o CMakeFiles/mxnet.dir/src/profiler/profiler.cc.o CMakeFiles/mxnet.dir/src/profiler/storage_profiler.cc.o CMakeFiles/mxnet.dir/src/profiler/vtune.cc.o CMakeFiles/mxnet.dir/src/resource.cc.o CMakeFiles/mxnet.dir/src/runtime/c_runtime_api.cc.o CMakeFiles/mxnet.dir/src/runtime/container.cc.o CMakeFiles/mxnet.dir/src/runtime/ndarray_handle.cc.o CMakeFiles/mxnet.dir/src/runtime/object.cc.o CMakeFiles/mxnet.dir/src/runtime/registry.cc.o CMakeFiles/mxnet.dir/src/storage/storage.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/c_api/c_api_error.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/c_api/c_api_graph.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/c_api/c_api_symbolic.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/core/graph.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/core/node.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/core/op.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/core/pass.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/core/symbolic.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/pass/correct_layout.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/pass/gradient.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/pass/infer_shape_type.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/pass/order_mutation.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/pass/place_device.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/pass/plan_memory.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/pass/print_graph_ir.cc.o CMakeFiles/mxnet.dir/3rdparty/tvm/nnvm/src/pass/saveload_json.cc.o | 3rdparty/mkldnn/src/libdnnl.a /usr/lib/libopenblas.so /usr/lib/librt.so /usr/lib/libopencv_highgui.so.4.3.0 3rdparty/openmp/runtime/src/libomp.so 3rdparty/dmlc-core/libdmlc.a /usr/lib/libopencv_videoio.so.4.3.0 /usr/lib/libopencv_imgcodecs.so.4.3.0 /usr/lib/libopencv_imgproc.so.4.3.0 /usr/lib/libopencv_core.so.4.3.0 /usr/lib/libgomp.so /usr/lib/libpthread.so || 3rdparty/dmlc-core/libdmlc.a 3rdparty/mkldnn/src/libdnnl.a 3rdparty/openmp/runtime/src/libomp.so
LANGUAGE_COMPILE_FLAGS = -Wall -Wno-sign-compare -O3 -fopenmp
LINK_LIBRARIES = -Wl,-rpath,/mnt/wkcn/proj/incubator-mxnet/build/3rdparty/openmp/runtime/src: -ldl 3rdparty/mkldnn/src/libdnnl.a /usr/lib/libopenblas.so /usr/lib/librt.so /usr/lib/libopencv_highgui.so.4.3.0 3rdparty/openmp/runtime/src/libomp.so -lpthread -llapack 3rdparty/dmlc-core/libdmlc.a /usr/lib/libopencv_videoio.so.4.3.0 /usr/lib/libopencv_imgcodecs.so.4.3.0 /usr/lib/libopencv_imgproc.so.4.3.0 /usr/lib/libopencv_core.so.4.3.0 -ldl -lpthread /usr/lib/libgomp.so /usr/lib/libpthread.so -lrt -latomic
OBJECT_DIR = CMakeFiles/mxnet.dir
POST_BUILD = cd /mnt/wkcn/proj/incubator-mxnet/build && /usr/bin/cmake -E copy /mnt/wkcn/proj/incubator-mxnet/build/3rdparty/mkldnn/include/dnnl_config.h /mnt/wkcn/proj/incubator-mxnet/include/mkldnn/ && /usr/bin/cmake -E copy /mnt/wkcn/proj/incubator-mxnet/build/3rdparty/mkldnn/include/dnnl_version.h /mnt/wkcn/proj/incubator-mxnet/include/mkldnn/
PRE_LINK = :
SONAME = libmxnet.so
SONAME_FLAG = -Wl,-soname,
TARGET_COMPILE_PDB = CMakeFiles/mxnet.dir/
TARGET_FILE = libmxnet.so
TARGET_PDB = libmxnet.pdb
@wkcn I didn't understand where should I add -latomic
@woreom
In the building directory, there is a file named build/build.ninja.
Open the file and search build libmxnet.so, append -latomic into the end of LINK_LIBRARIES. (about 4732th line).
@wkcn I did that now only file is not getting build. I get this error
[1/1] Linking CXX executable tests/mxnet_unit_tests
FAILED: tests/mxnet_unit_tests
: && /usr/bin/g++ -Wall -Wno-sign-compare -O3 -fopenmp -O3 -DNDEBUG tests/CMakeFiles/mxnet_unit_tests.dir/cpp/engine/engine_shutdown_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/engine/omp_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/engine/thread_local_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/engine/threaded_engine_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/kvstore/gpu_topology_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/misc/base.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/misc/libinfo_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/activation_perf.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/batchnorm_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/coreop_perf.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/dropout_perf.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/fully_conn_perf.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/krprod_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/mkldnn_operator_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/mkldnn_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/runner/core_op_runner_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/slice_channel_perf.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/tune/operator_tune_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/storage/storage_test.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/test_main.cc.o tests/CMakeFiles/mxnet_unit_tests.dir/cpp/thread_safety/thread_safety_test.cc.o -o tests/mxnet_unit_tests -Wl,-rpath,/mnt/USB/.mxnet/mxnet/build:/usr/local/lib lib/libgtest.a 3rdparty/dmlc-core/libdmlc.a /usr/lib/arm-linux-gnueabihf/libopenblas.so /usr/lib/arm-linux-gnueabihf/librt.so -llapack libmxnet.so 3rdparty/dmlc-core/libdmlc.a /usr/lib/gcc/arm-linux-gnueabihf/7/libgomp.so /usr/lib/arm-linux-gnueabihf/libpthread.so -lrt /usr/local/lib/libopencv_highgui.so.4.0.0 /usr/local/lib/libopencv_videoio.so.4.0.0 /usr/local/lib/libopencv_imgcodecs.so.4.0.0 /usr/local/lib/libopencv_imgproc.so.4.0.0 /usr/local/lib/libopencv_core.so.4.0.0 -ldl /usr/lib/arm-linux-gnueabihf/libopenblas.so /usr/lib/arm-linux-gnueabihf/librt.so -llapack && :
/usr/bin/ld: tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/activation_perf.cc.o: undefined reference to symbol '__atomic_fetch_sub_8@@LIBATOMIC_1.0'
/usr/bin/ld: //usr/lib/arm-linux-gnueabihf/libatomic.so.1: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
@wkcn @woreom to avoid manually editing the build.ninja file, you can also specify this line
when configuring the project with cmake. This is currently necessary for the ARMv6 architecture which is used by Raspberry Pi 1. Maybe we can detect this automatically.
Also be sure to apt install ccache to speed up subsequent compilation attempts.
I ended up compiling everything with gcc-4.9 and g++-4.9 (python,OpenCV,mxnet). it also seems the version of your python is also important I used python-3.7.4
Most helpful comment
Based on https://github.com/apache/incubator-mxnet/pull/18513 we can do portable and compliant binary releases later in principle. But this will require compiling the toolchain ourselves for ARM, as flang compiler binary is not available for ARM.
But for the raspberry pi setup, the portability aspect may not be so important. We can decide to publish non-portable (target one or a few select OS version) binaries. (In that case we don't need to use the flang compiler) If you're interested in building them, I'm happy to discuss more about how to proceed.