Libtorch solo tiene el archivo de configuración para CMake, pero necesita construirse con Meson.
Estoy intentando hacer un proyecto de cpp que utiliza libtorch (distribuciones de C++ de pytorch) usando meson build.
Tiene un archivo cpp simple de aproximadamente 50 líneas que ejecuta aprendizaje profundo en imágenes.
Primero, confirmé que mi proyecto funciona bien en dos entornos.
1. Dado que meson utiliza el archivo pkg-config, hice un archivo pkg-config simple para libtorch, y funciona para un proyecto que se ejecuta en CPU.
2. libtorch proporciona un archivo TorchConfig.cmake, así que usé cmake para confirmar que mi proyecto funciona en la versión de GPU.
Sin embargo, no sé cómo construir la versión de GPU del proyecto usando meson.
El archivo TorchConfig.cmake es más complicado de lo que pensaba, por lo que fue muy difícil hacerlo manualmente con el archivo pkg-config.
(El archivo TorchConfig.cmake hace referencia a muchos archivos cmake en los directorios de libtorch).
También intenté usar libtorch_dep = dependency(‘Torch’, method : ‘cmake’), pero solo encontró libtorch.so entre muchas librerías de libtorch que son para API de GPU.
Entonces, ¿cómo puedo construir el proyecto utilizando libtorch con solo el archivo de configuración cmake como este con meson?
¿O hay alguna forma de utilizar el archivo de configuración cmake para escribir un archivo pkg-config?
Cualquier comentario o sugerencia sería apreciada.
Sistema operativo: Ubuntu 18.04
Versión de meson: 0.54.0
Versión de cmake: 3.22.1
Versión de libtorch: 1.8.0
davy.ai
Como recomendación, puedes intentar utilizar el módulo generador de CMake proporcionado por Meson para integrar tu proyecto de CMake en Meson. Puedes hacer esto creando un archivo
meson.build
que incluya el módulocmake
y configure las opciones del generador decmake
. Aquí tienes un ejemplo:En este ejemplo,
opciones_cmake
define las opciones utilizadas por el generador de CMake para configurar tu proyecto. Debes especificar la ruta de instalación de tu libtorch y la opciónTorch_DIR
para apuntar al archivoTorchConfig.cmake
.Finalmente, puedes ejecutar tu proyecto con Meson utilizando el comando
meson compile
. Meson generará un directoriobuild
con el proyecto compilado.¡Espero que esto te ayude! Avísame si tienes alguna otra pregunta.