Git Product home page Git Product logo

Comments (10)

egorpugin avatar egorpugin commented on June 26, 2024

Yes, please.
Post cmakelists.
Also try to run sw setup and re-try cmake.

from sw.

egorpugin avatar egorpugin commented on June 26, 2024

Where is sw.exe located?
Remove spaces in the directory name.
I see this
Found SW: C:/SW Client

from sw.

Sree0211 avatar Sree0211 commented on June 26, 2024

sw.exe is located in C:/SWClient (I modified the spaces now and tried, still the same problem)

from sw.

Sree0211 avatar Sree0211 commented on June 26, 2024

cmake_minimum_required(VERSION 3.11)
project(OCR_Test CXX)

set_property(GLOBAL PROPERTY USE_FOLDERS ON)
set_property(GLOBAL PROPERTY PREDEFINED_TARGETS_FOLDER "CMake Targets")

set(OpenCV_DIR "C:/opencv/build")
find_package(OpenCV 4.2 REQUIRED)
set(OpenCV_BASEDIR "C:/opencv/build/x64/vc14/bin")

set(SW_BUILD_SHARED_LIBS 1)
set(DEPENDENCIES
org.sw.demo.google.tesseract.libtesseract-master
org.sw.demo.intel.opencv.imgproc
org.sw.demo.intel.opencv.highgui)

set(SW_DIR "C:/Users/sreenath/.sw/storage/etc/sw/static")
set(SW_EXECUTABLE "C:/SWClient")

find_package(SW REQUIRED)
sw_add_package(${DEPENDENCIES})
sw_execute()

set(Tesseract_DIR "C:/vcpkg/packages/tesseract_x64-windows-static/share/tesseract")
set(Leptonica_DIR "C:/vcpkg/packages/leptonica_x64-windows-static/share/leptonica")
set(CURL_DIR "C:/vcpkg/packages/curl_x64-windows-static/share/curl")

set(Tesseract_LIB "C:/Program Files/tesseract-ocr")
find_library(Tesseract_LIB NAMES tesseract)

find_package(Leptonica REQUIRED)
find_package(Tesseract REQUIRED)

add_executable(OCR_Test
main.cpp)

target_link_libraries(OCR_Test PUBLIC
${DEPENDENCIES}
Tesseract::Tesseract
Leptonica::Leptonica)

target_compile_features(OCR_Test PUBLIC cxx_std_17)

set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT ${PROJECT_NAME})
include_directories(OCR_Test PUBLIC ${Tesseract_INCLUDE_DIRS})

from sw.

egorpugin avatar egorpugin commented on June 26, 2024

Try it like this and post logs.
Put copy-past between ```

project(OCR_Test CXX)

set_property(GLOBAL PROPERTY USE_FOLDERS ON)
set_property(GLOBAL PROPERTY PREDEFINED_TARGETS_FOLDER "CMake Targets")

set(SW_BUILD_SHARED_LIBS 1)
set(DEPENDENCIES
org.sw.demo.google.tesseract.libtesseract
org.sw.demo.intel.opencv.imgproc
org.sw.demo.intel.opencv.highgui)

find_package(SW REQUIRED)
sw_add_package(${DEPENDENCIES})
sw_execute()

add_executable(OCR_Test
main.cpp)

target_link_libraries(OCR_Test PUBLIC
${DEPENDENCIES})

target_compile_features(OCR_Test PUBLIC cxx_std_17)

set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT ${PROJECT_NAME})

from sw.

Sree0211 avatar Sree0211 commented on June 26, 2024

I tried your above CMakeLists suggestion. BUt I get SW cannot be found

Detecting CXX compile features - done
CMake Error at C:/Program Files/CMake/share/cmake-3.25/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find SW (missing: SW_EXECUTABLE)
Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.25/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
  C:/Users/sreenath/.sw/storage/etc/sw/static/SWConfig.cmake:22 (find_package_handle_standard_args)
  CMakeLists.txt:13 (find_package)


Configuring incomplete, errors occurred!
See also "C:/git/OCR_Test/Build/CMakeFiles/CMakeOutput.log".

from sw.

Sree0211 avatar Sree0211 commented on June 26, 2024

In my Cmake app, it couldn't locate SW_Executable, so I manually located it C:/SWClient/sw.exe, Then I get a new error

Downloading database from origin remote


Downloading: [org.sw.demo.google.tesseract.libtesseract-5.3.4]/[Source Archive]


Unpacking  : [org.sw.demo.google.tesseract.libtesseract-5.3.4]/[Source Archive]


Downloading: [pub.egorpugin.primitives.filesystem-0.3.1]/[Source Archive]


Unpacking  : [pub.egorpugin.primitives.filesystem-0.3.1]/[Source Archive]


[26/142] [pub.egorpugin.libuv-1.44.2]/src/timer.c

[27/142] [org.sw.demo.boost.thread-1.84.0]/src/tss_null.cpp
[28/142] [pub.egorpugin.libuv-1.44.2]/src/win/tty.c
[29/142] [org.sw.demo.boost.atomic-1.84.0]/src/find_address_sse2.cpp
[30/142] [org.sw.sw.client.driver.cpp.cl_generator-0.4.5]/[sw.rc]

[33/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/parse.cpp


[34/142] [pub.egorpugin.primitives.command-0.3.1]/src/uv_command.cpp


[41/142] [pub.egorpugin.libuv-1.44.2]/src/win/winapi.c


[46/142] [pub.egorpugin.libuv-1.44.2]/src/win/winsock.c


[48/142] [pub.egorpugin.libuv-1.44.2]/src/win/udp.c


[53/142] [pub.egorpugin.libuv-1.44.2]/src/win/error.c


[56/142] [org.sw.sw.client.driver.cpp.cl_generator-0.4.5]/src/sw/driver/tools/cl_generator.cpp


[57/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/regex_yaml.cpp


[58/142] [org.sw.demo.boost.filesystem-1.84.0]/src/utf8_codecvt_facet.cpp


[60/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/exceptions.cpp


[64/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/[sw.rc]


[65/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/emitterutils.cpp


[66/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/convert.cpp


[71/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/scantoken.cpp


[72/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/null.cpp


[74/142] [org.sw.demo.boost.thread-1.84.0]/src/win32/tss_dll.cpp


[81/142] [org.sw.demo.boost.filesystem-1.84.0]/src/directory.cpp


[82/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/nodeevents.cpp


[83/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/nodebuilder.cpp


[85/142] [org.sw.demo.boost.atomic-1.84.0]/src/wait_on_address.cpp


[86/142] [org.sw.demo.boost.filesystem-1.84.0]/src/path_traits.cpp


[88/142] [org.sw.demo.boost.atomic-1.84.0]/src/lock_pool.cpp


[89/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/emitterstate.cpp


[90/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/simplekey.cpp


[93/142] [org.sw.demo.boost.chrono-1.84.0]/[sw.rc]


[97/142] [org.sw.demo.boost.atomic-1.84.0]/src/find_address_sse41.cpp


[99/142] [org.sw.demo.boost.thread-1.84.0].lib


[100/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/parser.cpp


[101/142] [pub.egorpugin.primitives.command-0.3.1]/src/command.cpp


[102/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/node_data.cpp


[104/142] [org.sw.demo.boost.chrono-1.84.0].lib


[105/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/exp.cpp


[106/142] [org.sw.demo.boost.filesystem-1.84.0]/src/path.cpp


[107/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/binary.cpp


[109/142] [org.sw.demo.boost.atomic-1.84.0]/src/find_address_sse2.cpp


[111/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/singledocparser.cpp


[112/142] [org.sw.demo.boost.chrono-1.84.0]/src/chrono.cpp


[113/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/contrib/graphbuilder.cpp


[114/142] [pub.egorpugin.libuv-1.44.2].lib


[117/142] [org.sw.demo.boost.chrono-1.84.0]/src/process_cpu_clocks.cpp


[118/142] [org.sw.demo.boost.atomic-1.84.0].dll


[119/142] [org.sw.demo.boost.atomic-1.84.0].lib


[120/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/scanscalar.cpp


[121/142] [org.sw.demo.boost.filesystem-1.84.0]/src/operations.cpp


[122/142] [pub.egorpugin.primitives.main-0.3.1].lib


[127/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0]/src/tag.cpp


[128/142] [org.sw.demo.boost.filesystem-1.84.0]/src/codecvt_error_category.cpp


[129/142] [org.sw.demo.boost.filesystem-1.84.0].lib


[130/142] [org.sw.demo.boost.chrono-1.84.0].dll


[131/142] [org.sw.demo.boost.thread-1.84.0].dll


[132/142] [org.sw.demo.jbeder.yaml_cpp-0.8.0].dll


[133/142] [org.sw.demo.boost.filesystem-1.84.0].dll


[134/142] [org.sw.sw.client.driver.cpp.cl_generator-0.4.5].exe


[135/142] [loc.sw.self.e58a9b-0.0.34] generate: "C:/Users/sreenath/.sw/storage/pkg/a0/ef/79bd/obj/bld/550076/bd/options_cl.generated.h", "C:/Users/sreenath/.sw/storage/pkg/a0/ef/79bd/obj/bld/550076/bd/options_cl.generated.cpp"


[136/142] [config pch]


Exception in file D:/dev/cppan2/client2/src/sw/builder/command.cpp:845, function execute1: When executing: [pub.egorpugin.primitives.command-0.3.1]/src/command.cpp
C:/Users/sreenath/.sw/storage/pkg/9d/a6/8d0d/src/sdir/src/command/src/command.cpp(142): error C2039: 'contains': is not a member of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include\xstring(4871): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:/Users/sreenath/.sw/storage/pkg/9d/a6/8d0d/src/sdir/src/command/src/command.cpp(147): note: see reference to function template instantiation 'auto primitives::Command::setProgram::<lambda_1>::()::<lambda_1>::operator ()<const char(&)[6]>(_T1) const' being compiled
        with
        [
            _T1=const char (&)[6]
        ]
C:/Users/sreenath/.sw/storage/pkg/9d/a6/8d0d/src/sdir/src/command/src/command.cpp(147): error C3487: 'bool': a
ll return expressions must deduce to the same type: previously it was 'void'
C:/Users/sreenath/.sw/storage/pkg/9d/a6/8d0d/src/sdir/src/command/src/command.cpp(144): error C3487: 'bool': all return expressions must deduce to the same type: previously it was 'void'
C:/Users/sreenath/.sw/storage/pkg/9d/a6/8d0d/src/sdir/src/command/src/command.cpp(144): error C2562: 'primitives::Command::setProgram::<lambda_1>::()::<lambda_1>::operator ()': 'void' function returning a value
C:/Users/sreenath/.sw/storage/pkg/9d/a6/8d0d/src/sdir/src/command/src/command.cpp(147): note: see declaration of 'primitives::Command::setProgram::<lambda_1>::()::<lambda_1>::operator ()'
C:/Users/sreenath/.sw/storage/pkg/9d/a6/8d0d/src/sdir/src/command/src/command.cpp(147): error C2296: '||': illegal, left operand has type 'void'
C:/Users/sreenath/.sw/storage/pkg/9d/a6/8d0d/src/sdir/src/command/src/command.cpp(147): error C2297: '||': illegal, right operand has type 'void'
command failed: exit code = 2
Total errors: 1

sw command: C:/SWClient/sw.exe -shared -platform x64 -compiler msvc-19.0 -d C:/git/OCR_Test/Build/.sw/cmake -config d,msr,rwdi,r integrate -cmake-deps C:/git/OCR_Test/Build/.sw/cmake/sw.txt -cmake-file-version 9
CMake Error at C:/Users/sreenath/.sw/storage/etc/sw/static/SWConfig.cmake:267 (message):
  sw: non-zero exit code: 1
Call Stack (most recent call first):
  CMakeLists.txt:15 (sw_execute)

from sw.

egorpugin avatar egorpugin commented on June 26, 2024
  1. Re-run sw setup and remove manual path in CMakeLists.txt
  2. sw requires the latest VS2022 or VS2022 Build Tools to be installed.

Fix these two points and you should be set up.

from sw.

Sree0211 avatar Sree0211 commented on June 26, 2024

Is there a way to make use of sw for tesseract in VS 2015 ?

from sw.

egorpugin avatar egorpugin commented on June 26, 2024

You can try to build tess for VS2015, but you need VS2022 Build Tools (they are free to use) for sw itself.

from sw.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.