Không thể biên dịch chương trình libtorch C++ đơn giản kể từ khi nâng cấp Ubuntu lên 21.10.
Sử dụng QT Creator, đã thử một số phiên bản (Desktop QT 5.12.5, 5.15.2, 6.1.2, 6.2.1), cả gcc & clang đều không thành công.
Cũng đã thử phiên bản ABI=0 libtorch.
Luôn gặp lỗi: /usr/local/include/torch/csrc/api/include/torch/types.h:39: lỗi: khai báo mâu thuẫn âconstexpr const auto torch::(kUInt8, kInt8, v.v.)â ½
Cũng đã thử từ c++14 đến 2a INCLUDEPATH += /usr/include/c++/10 w/o thành công
cấu hình:
MẪU = ứng dụng
CẤU HÌNH += cmdline c++14
CONFIG += chủ đề
CẤU HÌNH += CUDA
#CONFIG += bảng điều khiển c++14 no_keywords
CẤU HÌNH -= app_bundle
CẤU HÌNH -= qt
QMAKE_CXXFLAGS += -D_GLIBCXX_USE_CXX11_ABI=1
QMAKE_LFLAGS += -INCLUDE:?warp_size@cuda@at@@YAHXZ
QMAKE_LFLAGS += -Wl,--no-as-need
#QMAKE_LFLAGS += -Wl,--copy-dt-needed-entries
ĐỊNH NGHĨA += QT_DEPRECATED_WARNINGS
DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # vô hiệu hóa tất cả các API không dùng nữa trước Qt 6.0.0
BAO GỒM += /usr/include/c++/11
QMAKE_LIBDIR += /usr/lib/x86_64-linux-gnu
BAO GỒM += /usr/local/include/torch/csrc/api/include
QMAKE_LIBDIR += /usr/local/lib
CONFIG += link_pkgconfig
PKGCONFIG += mysqlclient
PKGCONFIG += libcurl
PKGCONFIG += libxml-2.0
PKGCONFIG += glib-2.0
PKGCONFIG += cuda-11.3
PKGCONFIG += cudart-11.3
PKGCONFIG += opencv4
LIBS += -ltorch
LIBS += -ltorch_cpu -lc10
LIBS += -ltorch_cuda -lc10_cuda