benz725 opened a new issue #19731:
URL: https://github.com/apache/incubator-mxnet/issues/19731
## Description
**I want to use tensorrt with my mxnet, i compile the mxnet with the source
code. when I add the flag cmake -D USE_TENSORRT=1, i report compile error like
this:**
CMake Error at
/home/yfzx/.local/lib/python3.7/site-packages/cmake/data/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:165
(message):
Could NOT find Protobuf (missing: Protobuf_INCLUDE_DIR)
Call Stack (most recent call first):
/home/yfzx/.local/lib/python3.7/site-packages/cmake/data/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:458
(_FPHSA_FAILURE_MESSAGE)
/home/yfzx/.local/lib/python3.7/site-packages/cmake/data/share/cmake-3.18/Modules/FindProtobuf.cmake:626
(FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:240 (find_package)
### Error Message
###reported CMakeError.log content is here:
Performing C SOURCE FILE Test CMAKE_HAVE_LIBC_PTHREAD failed with the
following output:
Change Dir:
/home/yfzx/mxnet-src/apache-mxnet-src-1.7.0-incubating/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make cmTC_e1cfd/fast && /usr/bin/make -f
CMakeFiles/cmTC_e1cfd.dir/build.make CMakeFiles/cmTC_e1cfd.dir/build
make[1]:
进入目录“/home/yfzx/mxnet-src/apache-mxnet-src-1.7.0-incubating/build/CMakeFiles/CMakeTmp”
Building C object CMakeFiles/cmTC_e1cfd.dir/src.c.o
/usr/bin/cc -Wall -Wno-unknown-pragmas -Wno-sign-compare -O3
-DCMAKE_HAVE_LIBC_PTHREAD -fPIE -o CMakeFiles/cmTC_e1cfd.dir/src.c.o -c
/home/yfzx/mxnet-src/apache-mxnet-src-1.7.0-incubating/build/CMakeFiles/CMakeTmp/src.c
Linking C executable cmTC_e1cfd
/home/yfzx/.local/lib/python3.7/site-packages/cmake/data/bin/cmake -E
cmake_link_script CMakeFiles/cmTC_e1cfd.dir/link.txt --verbose=1
/usr/bin/cc -Wall -Wno-unknown-pragmas -Wno-sign-compare -O3
-DCMAKE_HAVE_LIBC_PTHREAD CMakeFiles/cmTC_e1cfd.dir/src.c.o -o cmTC_e1cfd
CMakeFiles/cmTC_e1cfd.dir/src.c.o:在函数‘main’中:
src.c:(.text.startup+0x23):对‘pthread_create’未定义的引用
src.c:(.text.startup+0x2c):对‘pthread_detach’未定义的引用
src.c:(.text.startup+0x35):对‘pthread_cancel’未定义的引用
src.c:(.text.startup+0x40):对‘pthread_join’未定义的引用
src.c:(.text.startup+0x4b):对‘pthread_atfork’未定义的引用
collect2: error: ld returned 1 exit status
CMakeFiles/cmTC_e1cfd.dir/build.make:105: recipe for target 'cmTC_e1cfd'
failed
make[1]: *** [cmTC_e1cfd] Error 1
make[1]:
离开目录“/home/yfzx/mxnet-src/apache-mxnet-src-1.7.0-incubating/build/CMakeFiles/CMakeTmp”
Makefile:140: recipe for target 'cmTC_e1cfd/fast' failed
make: *** [cmTC_e1cfd/fast] Error 2
Source file was:
#include <pthread.h>
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:
/home/yfzx/mxnet-src/apache-mxnet-src-1.7.0-incubating/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make cmTC_9390f/fast && /usr/bin/make -f
CMakeFiles/cmTC_9390f.dir/build.make CMakeFiles/cmTC_9390f.dir/build
make[1]:
进入目录“/home/yfzx/mxnet-src/apache-mxnet-src-1.7.0-incubating/build/CMakeFiles/CMakeTmp”
Building C object CMakeFiles/cmTC_9390f.dir/CheckFunctionExists.c.o
/usr/bin/cc -Wall -Wno-unknown-pragmas -Wno-sign-compare -O3
-DCHECK_FUNCTION_EXISTS=pthread_create -fPIE -o
CMakeFiles/cmTC_9390f.dir/CheckFunctionExists.c.o -c
/home/yfzx/.local/lib/python3.7/site-packages/cmake/data/share/cmake-3.18/Modules/CheckFunctionExists.c
Linking C executable cmTC_9390f
/home/yfzx/.local/lib/python3.7/site-packages/cmake/data/bin/cmake -E
cmake_link_script CMakeFiles/cmTC_9390f.dir/link.txt --verbose=1
/usr/bin/cc -Wall -Wno-unknown-pragmas -Wno-sign-compare -O3
-DCHECK_FUNCTION_EXISTS=pthread_create
CMakeFiles/cmTC_9390f.dir/CheckFunctionExists.c.o -o cmTC_9390f -lpthreads
/usr/bin/ld: 找不到 -lpthreads
collect2: error: ld returned 1 exit status
CMakeFiles/cmTC_9390f.dir/build.make:105: recipe for target 'cmTC_9390f'
failed
make[1]: *** [cmTC_9390f] Error 1
make[1]:
离开目录“/home/yfzx/mxnet-src/apache-mxnet-src-1.7.0-incubating/build/CMakeFiles/CMakeTmp”
Makefile:140: recipe for target 'cmTC_9390f/fast' failed
make: *** [cmTC_9390f/fast] Error 2
## To Reproduce
(If you developed your own code, please provide a short script that
reproduces the error. For existing examples, please provide link.)
I use cuda 10.2, cudnn8.0.4, mxnet-src1.7.0, i have install tensorrt 7.2.1
with the offical tutorial, have pass the helloworld test
### Steps to reproduce
(Paste the commands you ran that produced the error.)
1.i copy the $mxnet-src-path$/config/linux_gpu.cmake to
$mxnet-src-path$/config.cmake, make some change like add one line "set(USE_NCCL
1)"
2.cd $mxnet-src-path$, then mkdir build, cd build, cmake -D USE_TENSORRT=1
..
## What have you tried to solve it?
1. When i remove the -D USE_TENSORRT=1 flag, it can compile correctly, whe i
add this flag, it will report like this issue;
2.
## Environment
***We recommend using our script for collecting the diagnostic information
with the following command***
`curl --retry 10 -s
https://raw.githubusercontent.com/apache/incubator-mxnet/master/tools/diagnose.py
| python3`
<details>
cuda 10.2, cudnn8.0.4, mxnet-src1.7.0, python 3.7.4(anaconda), nvidia driver
version:440.44
<summary>Environment Information</summary>
```
# Paste the diagnose.py command output here
```
</details>
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]