ncnn notes (1) compilación

Referencia: [ncnn] NCNN + WIN10 + VS2015 compilación y prueba

Referencia: programa subyacente herramienta: compilador cl

Aquí me he encontrado con una situación en la que mi cmake-gui o cmake no puede hacer nada. Puede configurar la variable de entorno para permitir que la ventana negra de powershell o cmd encuentre el compilador cl, pero esto no es lo que me gusta, porque no me gusta configurar demasiadas variables de entorno.

Siempre hay una forma, úsala:

o:

mkdir build-vs2015
cd build-vs2015
cmake -G"NMake Makefiles" -DCMAKE_BUILD_TYPE=release -DCMAKE_INSTALL_PREFIX=%cd%/install -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_MSVC_STATIC_RUNTIME=OFF ../cmake
nmake
nmake install

otros problemas:

NMAKE: error fatal U1077. Código de retorno "cl.exe" 0xc0000135

Causa: se debe a que no se verifica la variable de entorno de registro al instalar Visual Studio.

Solución: agregue la ruta de instalación de Visual Studio en las variables de entorno del sistema: vs ruta de instalación \ VC \ Bin, y vs ruta de instalación \ Common7 \ IDE

NMAKE: error fatal U1077. código de retorno 0x2

Causa: no se puede encontrar el archivo de encabezado contenido en el archivo de código

Solución: Vaya a la ruta de instalación vs \ VC \ Bin en cmd, ejecute vcvars32 y luego ejecute vcvas32.bat para establecer automáticamente las variables de entorno para vs

Lo sentimos, la compilación falló al usar este método de línea de comando. Se debió a NMAKE y volvió a cambiar a cmake-gui.

Referencia: compila y usa protobuf en la plataforma Windows

Se informará un error cuando cmake: No se puede encontrar el directorio gmock.

Referencia de la solución: Win10 vs2017 compila NCNN de Tencent

第一种:在protobuf根目录有个autogen.sh,直接在cmd里找到这个并运行,它会自动下载(但因为google下载会涉及到翻qiang,所以前提是能翻才能下载),个人推荐这种方式,因为下载的版本与protobuf版本是匹配的,不会太容易出现不必要的坑。(本人使用此方法)

No estoy seguro de si hay un problema con el muro, de todos modos, no miré a través de él, abrí powershell directamente en el directorio raíz de protobuf y ejecuté

 .\autogen.sh

Gmock se descargará automáticamente.

Luego usa cmake para pasar. Al compilar, protobuf pasó pero protobuf_lite falló.

Más tarde, probé protobuf 3.6.0, no verifiqué la prueba e instalé la ruta./install/protobuf.

La compilación y la instalación están completas.

Siguiente compilar ncnn

Es más sencillo usar cmake-gui directamente aquí.

Registre los problemas encontrados

1. Configure la ruta de protobuf y la ruta de opencv usted mismo

2. Genere el proyecto ncnn.sln. Habrá dos subproyectos que no se compilarán al compilar, a saber, caffe2ncnn y onnx2ncnn

La razón es que el atributo de compilación de la biblioteca estática protobuf que todos usan es MT

Cambie las propiedades de compilación de estos dos subproyectos a MT para compilar y pasar.

 

 

 

 

Supongo que te gusta

Origin blog.csdn.net/juluwangriyue/article/details/108790422
Recomendado
Clasificación