Thanks jj,
I was able to successfully compile opencv (
https://github.com/kakukogou/opencv/tree/opencvjs) after installing the
incoming branch but still there are errors coming when I tried to run the
segmentation demo(https://github.com/kakukogou/opencvjs_demo_segmentation).
When I build 'make', I am getting the following error:
mkdir -p ./bin
/home/gunjan/gsoc/emsdk-07-26-2016/emsdk_portable/emscripten/incoming/emcc \
../src/segmentation.cpp \
../src/export.cpp \
-I
/home/gunjan/gsoc/emsdk-07-26-2016/emsdk_portable/emscripten/incoming/opencv/release_asm/install/include
\
/home/gunjan/gsoc/emsdk-07-26-2016/emsdk_portable/emscripten/incoming/opencv/release_asm/install/lib/libopencv_core.so
\
/home/gunjan/gsoc/emsdk-07-26-2016/emsdk_portable/emscripten/incoming/opencv/release_asm/install/lib/libopencv_imgproc.so
\
-s EXPORTED_FUNCTIONS="['_on_mouse', '_on_init', '_on_process']" \
-O3 \
--llvm-lto 1 \
--closure 1 \
-s PRECISE_F32=1 \
%703 = extractelement <2 x i64> %bc.i.i135, i32 0
0 llc 0x0000000000e38d98
llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 56
1 llc 0x0000000000e37026 llvm::sys::RunSignalHandlers() + 54
2 llc 0x0000000000e37189
3 libpthread.so.0 0x00007f291f9c43d0
4 llc 0x0000000000b65091
llvm::CallInst::init(llvm::FunctionType*, llvm::Value*,
llvm::ArrayRef<llvm::Value*>,
llvm::ArrayRef<llvm::OperandBundleDefT<llvm::Value*> >, llvm::Twine const&)
+ 177
5 llc 0x0000000000ef3982
6 llc 0x0000000000ef6cb0
7 llc 0x0000000000b8677f
llvm::legacy::PassManagerImpl::run(llvm::Module&) + 783
8 llc 0x0000000000569e5b
9 llc 0x000000000054bb10 main + 256
10 libc.so.6 0x00007f291ed69830 __libc_start_main + 240
11 llc 0x0000000000562349 _start + 41
Stack dump:
0. Program arguments:
/home/gunjan/gsoc/emsdk-07-26-2016/emsdk_portable/clang/fastcomp/build_incoming_64/bin/llc
/tmp/tmpPJYtDm/a.out.bc -march=js -filetype=asm -o /tmp/tmpdIDpbR.4.js
-emscripten-precise-f32 -emscripten-global-base=8 -O3
1. Running pass 'Expand and lower illegal >i32 operations into 32-bit
chunks' on module '/tmp/tmpPJYtDm/a.out.bc'.
Traceback (most recent call last):
File
"/home/gunjan/gsoc/emsdk-07-26-2016/emsdk_portable/emscripten/incoming/emcc",
line 13, in <module>
emcc.run()
File
"/home/gunjan/gsoc/emsdk-07-26-2016/emsdk_portable/emscripten/incoming/emcc.py",
line 1490, in run
final = shared.Building.emscripten(final, append_ext=False,
extra_args=extra_args)
File
"/home/gunjan/gsoc/emsdk-07-26-2016/emsdk_portable/emscripten/incoming/tools/shared.py",
line 1691, in emscripten
call_emscripten(cmdline)
File
"/home/gunjan/gsoc/emsdk-07-26-2016/emsdk_portable/emscripten/incoming/emscripten.py",
line 1721, in _main
temp_files.run_and_clean(lambda: main(
File
"/home/gunjan/gsoc/emsdk-07-26-2016/emsdk_portable/emscripten/incoming/tools/tempfiles.py",
line 64, in run_and_clean
return func()
File
"/home/gunjan/gsoc/emsdk-07-26-2016/emsdk_portable/emscripten/incoming/emscripten.py",
line 1726, in <lambda>
DEBUG=DEBUG,
File
"/home/gunjan/gsoc/emsdk-07-26-2016/emsdk_portable/emscripten/incoming/emscripten.py",
line 1627, in main
temp_files=temp_files, DEBUG=DEBUG)
File
"/home/gunjan/gsoc/emsdk-07-26-2016/emsdk_portable/emscripten/incoming/emscripten.py",
line 86, in emscript
funcs, metadata, mem_init = get_and_parse_backend(infile, settings,
temp_files, DEBUG)
*File
"/home/gunjan/gsoc/emsdk-07-26-2016/emsdk_portable/emscripten/incoming/emscripten.py",
line 146, in get_and_parse_backend backend_output =
open(temp_js).read()IOError: [Errno 2] No such file or directory:
'/tmp/tmpdIDpbR.4.js'Makefile:7: recipe for target 'segmentation'
failedmake: *** [segmentation] Error 1*
Can someone help me here, anyone who may have faced a similar issue?
Thanks,
Gunjan.
On Tuesday, 21 June 2016 08:13:47 UTC-4, jj wrote:
>
> Thanks for reporting,
>
> I think this is fixed by
> https://github.com/kripken/emscripten/commit/2e56e7764fcfac0dc617723283cf064dd7115cbd,
>
> which is currently in the incoming branch (./emsdk install
> sdk-incoming-64bit && ./emsdk activate sdk-incoming-64bit)
>
> 2016-06-14 10:11 GMT+03:00 Gunjan Shrivastava <[email protected]
> <javascript:>>:
>
>> Hello Kuo,
>>
>>
>> I am trying to compile OpenCV library in Emscripten using
>> https://github.com/kakukogou/opencv/tree/opencvjs. I successfully
>> completed the steps till:
>>
>>
>> emcmake cmake -DBUILD_CUDA_STUBS=OFF -DBUILD_DOCS=OFF
>> -DBUILD_EXAMPLES=OFF -DBUILD_JASPER=OFF -DBUILD_JPEG=OFF
>> -DBUILD_OPENEXR=OFF -DBUILD_PERF_TESTS=OFF -DBUILD_PNG=OFF -DBUILD_TBB=OFF
>> -DBUILD_TESTS=OFF -DBUILD_TIFF=OFF -DBUILD_WITH_DEBUG_INFO=OFF
>> -DBUILD_ZLIB=OFF -DBUILD_opencv_apps=OFF -DBUILD_opencv_ts=OFF
>> -DBUILD_opencv_world=OFF -DWITH_1394=OFF -DWITH_CLP=OFF -DWITH_CUBLAS=OFF
>> -DWITH_CUDA=OFF -DWITH_CUFFT=OFF -DWITH_FFMPEG=OFF -DWITH_GDAL=OFF
>> -DWITH_GIGEAPI=OFF -DWITH_GSTREAMER=OFF -DWITH_GSTREAMER_0_10=OFF
>> -DWITH_GTK=OFF -DWITH_GTK_2_X=OFF -DWITH_JASPER=OFF -DWITH_JPEG=OFF
>> -DWITH_LIBV4L=OFF -DWITH_NVCUVID=OFF -DWITH_OPENCL=OFF
>> -DWITH_OPENCLAMDBLAS=OFF -DWITH_OPENCLAMDFFT=OFF -DWITH_OPENEXR=OFF
>> -DWITH_OPENGL=OFF -DWITH_OPENMP=OFF -DWITH_OPENNI=OFF -DWITH_OPENNI2=OFF
>> -DWITH_PNG=OFF -DWITH_PVAPI=OFF -DWITH_QT=OFF -DWITH_TBB=OFF
>> -DWITH_TIFF=OFF -DWITH_UNICAP=OFF -DWITH_V4L=OFF -DWITH_VTK=OFF
>> -DWITH_WEBP=OFF -DWITH_XIMEA=OFF -DWITH_XINE=OFF -DBUILD_SHARED_LIBS=ON
>> -DBUILD_PACKAGE=ON -DCMAKE_COLOR_MAKEFILE=ON -DWITH_EIGEN=ON
>> -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_CXX_FLAGS_RELEASE="-DNDEBUG -O3 -s
>> PRECISE_F32=1 -Wno-warn-absolute-paths"
>> -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="-O3 -s PRECISE_F32=1"
>> -DCMAKE_C_FLAGS_RELEASE="-DNDEBUG -O3 -s PRECISE_F32=1"
>> -DCMAKE_C_FLAGS_RELWITHDEBINFO="-O3 -s PRECISE_F32=1"
>> -DCMAKE_EXE_LINKER_FLAGS_RELEASE="-O3 -s PRECISE_F32=1"
>> -DCMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO="-O3 -g -s PRECISE_F32=1"
>> -DCMAKE_MODULE_LINKER_FLAGS_RELEASE="-O3 -s PRECISE_F32=1"
>> -DCMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO="-O3 -g -s PRECISE_F32=1"
>> -DCMAKE_SHARED_LINKER_FLAGS_RELEASE="-O3 -s PRECISE_F32=1"
>> -DCMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO="-O3 -g -s PRECISE_F32=1" ..
>>
>>
>> but I am getting following error on ‘emmake make’:
>>
>>
>> [ 5%] Built target zlib
>>
>> [ 5%] Generating opencl_kernels_core.cpp, opencl_kernels_core.hpp
>>
>> Scanning dependencies of target opencv_core
>>
>> [ 7%] Building CXX object
>> modules/core/CMakeFiles/opencv_core.dir/src/rand.cpp.o
>>
>> In file included from
>> /home/gunjan/Downloads/emsdk_portable/opencv/modules/core/src/rand.cpp:49:
>>
>> In file included from
>> /home/gunjan/Downloads/emsdk_portable/opencv/modules/core/src/precomp.hpp:55:
>>
>> In file included from
>> /home/gunjan/Downloads/emsdk_portable/opencv/modules/core/include/opencv2/core/private.hpp:58:
>>
>> In file included from /usr/include/eigen3/Eigen/Core:263:
>>
>> */usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:333:76: error:
>> no matching function for call to '_mm_prefetch'*
>>
>> *template<> EIGEN_STRONG_INLINE void prefetch<float>(const float* addr)
>> { _mm_prefetch((const char*)(addr), _MM_HINT_T0);* }
>>
>>
>> ^~~~~~~~~~~~
>>
>> */home/gunjan/Downloads/emsdk_portable/emscripten/master/system/include/emscripten/xmmintrin.h:129:1:
>>
>> note: candidate function not viable: no known conversion from 'const char
>> *' to 'void *' for 1st*
>>
>> * argument*
>>
>> *_mm_prefetch(void *__p, int __i)*
>>
>>
>> Please refer the screenshot for additional information.
>>
>> Any help in this regard would be greatly beneficial for my project.
>> Please let me know if you need any other detail.
>>
>>
>>
>> Thank you.
>>
>> -Gunjan
>>
>>
>>
>>
>> On Wednesday, 31 December 2014 01:51:22 UTC-5, Tzu-Hao Kuo (Kaku) wrote:
>>>
>>> HI,
>>>
>>> I recently evaluate the performance of OpenCV with asm.js.
>>> Thanks to the OpenCV team, there are already lots of performance tests in
>>> each OpenCV module.
>>> What I have done is that compile OpenCV library and its performance tests
>>> both in native and with asm.js.
>>> Run the native performance test and the javascript performance test (with
>>> the Firefox javascript engine).
>>> And the statistics data could be found in the following Google Sheet
>>> link:https://docs.google.com/spreadsheets/d/1w8gr1_q_dQclTaGyiMtAhlwj_5_HPVKbHWfwUszPU40/edit?usp=sharing
>>>
>>> In summary, there are about 20% tests are faster or equal to the native
>>> performance and about 60% tests are faster than 3x native performance.
>>>
>>> Some patterns are observed.
>>> First, tests with operations which convert floating point values into
>>> integer values are much slower.
>>> Second, in native environment, single operation is much faster when it is
>>> dealing with integer type data comparing to dealing with floating point
>>> values;
>>> however, in javascript environment, the same operation performs equally in
>>> each data type, which leads to relatively larger performance drop in
>>> non-floating point data type.
>>>
>>>
>>> By traversing old posts, I found several people have tried to use OpenCV
>>> in their own projects, however, there is few performance information.
>>> I post this message here is intending to open a discussion forum which
>>> could collect information about OpenCV with asm.js and especially the
>>> performance.
>>> This message is also posted as a discussion bug in Mozilla Bugzilla, the
>>> link is, https://bugzilla.mozilla.org/show_bug.cgi?id=1116674.
>>>
>>> Tzuhao
>>>
>> --
>> 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] <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>
--
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].
For more options, visit https://groups.google.com/d/optout.