нет, с плюсами я знаком далеко не очень хорошо. Но полез я в них не за ради интереса, а потому что мне нужна библиотека плюсовая для фронта. А торч фронт через си++ реализовывает
для какого фронта? Ты что , солдат что ли?
Зря полез, не по тебе эта задача.
я имею виду продакшн. В голове уже плывёт слегка)
Ну ты троллишь жестко ))
То есть ты промышленник, руководитель предпирятия ?
получается что так. руководитель и работник в одном лице
тогда надо нанять специалистов, поставить им задачу, и вот. Естественно, деньги заплатить, договор заключить.
Пришли эту строчку из этого файла C:\cmake\pyModelTest\src\libtorch\include\c10/macros/Macros.h(143): warning C40 и две строки до и после неё.
http://pastie.org/p/3rX7rcsG1hxI3KEIEaTMKF
Ну и стандарт надо поднять, как минимум.
// Direct port of LLVM_ATTRIBUTE_USED. #if __has_attribute(used) #define C10_USED __attribute__((__used__)) #else #define C10_USED #endif тут используется нестандартная (как я понимаю) функция препроцессора __has_attribute, которую , видимо, понимает только один компилятор - тот, под который написан этот торч. Видимо, должно было быть использовано это https://en.cppreference.com/w/cpp/feature_test
В мануале библиотеки написано что она рассчитана на работу с cmake. У меня стоит VS2015, там, вроде msvc используется. Я скачал cmake 3.24, сделал всё точно по инструкции. Почему тогда ругается msvc, а не cmake?
Оно требует 20ый стандарт, кажется, и минимум 17ый по string_vew. VS2015 не поддерживает 17ый стандарт, нужен более новый компилятор (сейчас VS уже 2022)
Короче, либо ставь питон и TORCH-и из него, либо учи С++ от начала и до просветления, потом садись за ТОРЧ
Я удивлён тем что cmake каким то образом с vs связывается в работе. У меня ведь могло и вообще не стоять vs. Я думал cmake автономен и т.к. версия свежая, то стандарты все поддерживать должен. Т.е. ближайшее рабочее решение переставить vs на более новый? На питоне и торче я и так пишу в степени достаточной чтобы обучить нейросеть. Вопрос в том что у питона нет библиотек. Приходится экспортировать модель в c++.
На странице этого ТОРЧа должно быть указано, какие компиляторы он поддерживает. (на каких его можно собрать).
Там и написано - юзайте cmake: To load your serialized PyTorch model in C++, your application must depend on the PyTorch C++ API – also known as LibTorch. The LibTorch distribution encompasses a collection of shared libraries, header files and CMake build configuration files. While CMake is not a requirement for depending on LibTorch, it is the recommended approach and will be well supported into the future. For this tutorial, we will be building a minimal C++ application using CMake and LibTorch that simply loads and executes a serialized PyTorch model. https://pytorch.org/tutorials/advanced/cpp_export.html
У меня ведь могло и вообще не стоять vs. Не могло. Я думал cmake автономен и т.к. версия свежая, то стандарты все поддерживать должен. Нет, ты думал неправильно. CMake не компилятор, это лишь система сборки. Т.е. ближайшее рабочее решение переставить vs на более новый? Да На питоне и торче я и так пишу в степени достаточной чтобы обучить нейросеть. Вопрос в том что у питона нет библиотек. Приходится экспортировать модель в c++. Торч из питона доступен.
Я понял, спасибо! Ща виртуалку накачу и поставлю свежий vs.
Ты вообще без cmake можешь сделать проект в студии, подключить все что нужно. А сам по себе то cmake ничего не может, он просто за тебя и для тебя строит проект под конкретный компилятор. И да - компилятор должен быть при этом ))
Вот его требования (и они уже устаревшие в документации, видимо) https://github.com/pytorch/pytorch#prerequisites Там описан 14ый стандарт и CLang. Скорее всего, только на кланге это и собирается. Но там используется string_view - это 17ый
Почему, я понял. Я думал что он компилирует. А он, оказывается только собирает. Я, конечно, не всё в этом понял, но примерно понял
Ну , ты уже понял неправильно...
Вот и не понял. Странно все это )
Cmake не собирает, он генератор под разные системы сборки
Обсуждают сегодня