Проблема при компиляции кода C++ в WASM с использованием emcc
Я пытаюсь скомпилировать код C++ в WASM, но сталкиваюсь с проблемами. Мой код на C++ включал библиотеки dlib и OpenCV. Я успешно скомпилировал OpenCV и dlib для среды C++. Кроме того, я установил в свою систему emscripten.
Структура каталогов
C диск
|..
| - dlib
| - emsdk
| - opencv
| - cpp_project
теперь, когда я нахожусь внутри каталога cpp_project в командной строке (открываемой в режиме администратора), я выполняю следующую команду.
emcc -msse3 -msimd128 -std= C++11 -O3 -I ../dlib ../opencv/build/include/opencv2/core.hpp ../dlib/dlib/all/source.cpp -lstdC++ -lpthread -s USE_PTHREADS=1 -s PTHREAD_POOL_SIZE=4 -s TOTAL_MEMORY=1024MB -s "EXTRA_EXPORTED_RUNTIME_METHODS=['ccall', 'cwrap']" -s WASM=1 -o main.js
Я получаю следующую ошибку:
../opencv/build/include/opencv2/core.hpp:52:10: фатальная ошибка: файл opencv2/core/cvdef.h не найден
#include "opencv2/core/cvdef.h" ^~~~~~~~~~~~~~~~~~~~~ Возникла 1 ошибка.
Пожалуйста, помогите мне.
1 ответ
Вы должны изменить -I ../dlib ../opencv/build/include/opencv2/core.hpp
к-I ../dlib -I ../opencv/build/include