Just a shot in the dark, but this -isysroot option might cause problems 
(and the following Mac-specific option doesn't look right either):

-isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk
 
-mmacosx-version-min=10.15

Maybe this causes a mixup of C++ stdlib headers in the Emscripten SDK and 
the Xcode SDKs.

Looking at your CMakeLists.txt file I have no idea where those macOS 
specific build options would come from though.

One very obscure problem I've seen in the past is that global environment 
variables might pollute your Emscripten build options (e.g. run "env" and 
check the output for anything suspicious). I've seen this with the CPATH 
variable (however your problem looks different - but maybe there are other 
env variables which influence the build).

To find out whether the problem is in your system setup you could try 
building my Pacman clone here:

https://github.com/floooh/pacman.c#build-and-run-wasmhtml-version-via-emscripten

If this also fails, the problem could be in your setup (however this is a 
plain C project, which is a much easier case than a C++ project using the 
C++ stdlib).

Cheers,
-Floh.
On Saturday, 4 December 2021 at 14:00:47 UTC+1 [email protected] wrote:

> I built my opencv libraries for WebAssembly and have a simple program,My 
> *Program*:
> #include"opencv2/opencv.hpp"
> #include<iostream>
> #include<emscripten.h>
>
> using namespace std;
> using namespace cv;
>
> int main(){
> cout<<"Let's see\n";
> uint8_t uarr[] = {1,2,3,4,5,6,7,8,9,10,11,12};
> int rows=2;
> int cols=2;
> Mat mat1(rows,cols,CV_8UC3, uarr);
>
> cout<<"Put oil in the car: "<<mat1<<"\n"; 
> return 1;
> }
>
> My *CMakeLists.txt:*
>
> cmake_minimum_required( VERSION 3.1 )
> set( CMAKE_CXX_STANDARD 11 )
> set(CMAKE_TRY_COMPILE_TARGET_TYPE "STATIC_LIBRARY")
> project( HelloCV )
>
> # Does not work
> # find_package( OpenCV REQUIRED PATHS third-party/opencv-4.1.0/build_wasm 
> NO_DEFAULT_PATH)
>
> # Needed for opencv2/opencv.hpp
> include_directories( /Users/arvindarya/Desktop/aspen/opencv/include )
>
> # Needed by opencv.hpp for opencv2/opencv_modules.hpp
> include_directories( /Users/arvindarya/Desktop/aspen/opencv/build_wasm )
>
> # Needed by opencv_modules.hpp for every module
> file( GLOB opencv_include_modules 
> "/Users/arvindarya/Desktop/aspen/opencv/modules/*/include" )
> include_directories( ${opencv_include_modules} )
>
> # Our hello world executable
> add_executable( hello image.cpp )
>
> # Link to opencv.js precompiled libraries
> file( GLOB opencv_js 
> "/Users/arvindarya/Desktop/aspen/opencv/build_wasm/lib/*.a" )
> target_link_libraries( hello ${opencv_js} )
>
>
> I am running
> *emmake cmake *. 
>
> and
> *make *
>
> I am getting an *error*:
>
> clang-14: warning: argument unused during compilation: 
> '-mmacosx-version-min=10.15' [-Wunused-command-line-argument]
>
> In file included from /Users/arvindarya/Desktop/aspen/image.cpp:3:
>
> In file included from 
> /Users/arvindarya/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1/iostream:37:
>
> In file included from 
> /Users/arvindarya/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1/ios:215:
>
> /Users/arvindarya/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1/__locale:40:11:
>  
> fatal error: 'xlocale.h' file not found
>
> # include <xlocale.h>
>
>           ^~~~~~~~~~~
>
> 1 error generated.
>
> em++: error: '/Users/arvindarya/emsdk/upstream/bin/clang++ -target 
> wasm32-unknown-emscripten -DEMSCRIPTEN -fignore-exceptions 
> -fvisibility=default -mllvm -combiner-global-alias-analysis=false -mllvm 
> -enable-emscripten-sjlj -mllvm -disable-lsr -D__EMSCRIPTEN_major__=3 
> -D__EMSCRIPTEN_minor__=0 -D__EMSCRIPTEN_tiny__=0 -D_LIBCPP_ABI_VERSION=2 
> -Werror=implicit-function-declaration -Xclang -iwithsysroot/include/SDL 
> --sysroot=/Users/arvindarya/emsdk/upstream/emscripten/cache/sysroot -Xclang 
> -iwithsysroot/include/compat 
> -I/Users/arvindarya/Desktop/aspen/opencv/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/build_wasm 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/calib3d/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/core/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/dnn/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/features2d/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/flann/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/gapi/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/highgui/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/imgcodecs/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/imgproc/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/ml/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/objdetect/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/photo/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/stitching/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/ts/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/video/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/videoio/include 
> -I/Users/arvindarya/Desktop/aspen/opencv/modules/world/include -isysroot 
> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk
>  
> -mmacosx-version-min=10.15 -std=gnu++11 -MD -MT 
> CMakeFiles/hello.dir/image.cpp.o -MF CMakeFiles/hello.dir/image.cpp.o.d -c 
> /Users/arvindarya/Desktop/aspen/image.cpp -o 
> CMakeFiles/hello.dir/image.cpp.o' failed (returned 1)
>
> make[2]: *** [CMakeFiles/hello.dir/image.cpp.o] Error 1
>
> make[1]: *** [CMakeFiles/hello.dir/all] Error 2
>
> make: *** [all] Error 2
>
> Can anyone help me with this.I want to run a WebAssembly with some opencv 
> this is the most basic code. Is something wrong with my CMake. I cannot 
> even get <iostream> work there is something seriously wrong. Please help 
> me. I have tried emcc --clear-cache it does not work.
>

-- 
You received this message because you are subscribed to the Google Groups 
"emscripten-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/emscripten-discuss/23859e4c-32c2-467f-89f7-8d4cca0e8d9an%40googlegroups.com.

Reply via email to