Coder Social home page Coder Social logo

Comments (3)

MuravyevArtem avatar MuravyevArtem commented on September 24, 2024

Еще раз здравствуйте! Попытался скомпилировать код из раздела Example: Asio service в VisualStudio 2019. Создал пустой проект, создал файл Test.cpp и скопировал в него код из раздела Example: Asio service. Также настроил все пути к требуемым каталогам CppServer, CppCommon и Asio (взят с сайта https://think-async.com/Asio/). При попытке компиляции выдает такой результат:

1>------ Сборка начата: проект: Project1, Конфигурация: Release x64 ------
1>Test.cpp
1>Please define _WIN32_WINNT or _WIN32_WINDOWS appropriately. For example:
1>- add -D_WIN32_WINNT=0x0501 to the compiler command line; or
1>- add _WIN32_WINNT=0x0501 to your project's Preprocessor Definitions.
1>Assuming _WIN32_WINNT=0x0501 (i.e. Windows XP target).
1>Test.obj : error LNK2001: неразрешенный внешний символ ""void __cdecl asio::asio_handler_deallocate(void *,unsigned __int64,...)" (?asio_handler_deallocate@asio@@YAXPEAX_KZZ)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""class std::error_category const & __cdecl asio::system_category(void)" (?system_category@asio@@YAAEBVerror_category@std@@xz)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""class std::error_category const & __cdecl asio::ssl::error::get_stream_category(void)" (?get_stream_category@error@ssl@asio@@YAAEBVerror_category@std@@xz)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""void * __cdecl asio::asio_handler_allocate(unsigned __int64,...)" (?asio_handler_allocate@asio@@YAPEAX_KZZ)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""protected: static void __cdecl asio::detail::winsock_init_base::throw_on_error(struct asio::detail::winsock_init_base::data &)" (?throw_on_error@winsock_init_base@detail@asio@@KAXAEAUdata@123@@z)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""protected: static void __cdecl asio::detail::winsock_init_base::cleanup(struct asio::detail::winsock_init_base::data &)" (?cleanup@winsock_init_base@detail@asio@@KAXAEAUdata@123@@z)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""protected: static void __cdecl asio::detail::winsock_init_base::startup(struct asio::detail::winsock_init_base::data &,unsigned char,unsigned char)" (?startup@winsock_init_base@detail@asio@@KAXAEAUdata@123@EE@Z)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""unsigned long __cdecl asio::detail::win_tss_ptr_create(void)" (?win_tss_ptr_create@detail@asio@@Yakxz)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""private: void __cdecl asio::detail::strand_service::do_post(class asio::detail::strand_service::strand_impl * &,class asio::detail::win_iocp_operation *,bool)" (?do_post@strand_service@detail@asio@@AEAAXAEAPEAVstrand_impl@123@PEAVwin_iocp_operation@23@_N@Z)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""private: bool __cdecl asio::detail::strand_service::do_dispatch(class asio::detail::strand_service::strand_impl * &,class asio::detail::win_iocp_operation *)" (?do_dispatch@strand_service@detail@asio@@AEAA_NAEAPEAVstrand_impl@123@PEAVwin_iocp_operation@23@@z)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""public: void __cdecl asio::detail::win_iocp_io_context::post_deferred_completion(class asio::detail::win_iocp_operation *)" (?post_deferred_completion@win_iocp_io_context@detail@asio@@QEAAXPEAVwin_iocp_operation@23@@z)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""class std::error_category const & __cdecl asio::error::get_ssl_category(void)" (?get_ssl_category@error@asio@@YAAEBVerror_category@std@@xz)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""class std::error_category const & __cdecl asio::error::get_misc_category(void)" (?get_misc_category@error@asio@@YAAEBVerror_category@std@@xz)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""public: __cdecl CppServer::Asio::Service::Service(int,bool)" (??0Service@Asio@CppServer@@qeaa@H_N@Z)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""public: static void __cdecl CppCommon::Thread::SleepFor(class CppCommon::Timespan const &)" (?SleepFor@Thread@CppCommon@@SAXAEBVTimespan@2@@z)"
1>Test.obj : error LNK2001: неразрешенный внешний символ ""public: static unsigned __int64 __cdecl CppCommon::Thread::CurrentThreadId(void)" (?CurrentThreadId@Thread@CppCommon@@SA_KXZ)"
1>D:\MainFiles\desctop\BlockadeClassic\Project1\x64\Release\Project1.exe : fatal error LNK1120: неразрешенных внешних элементов: 16
1>Сборка проекта "Project1.vcxproj" завершена с ошибкой.
========== Сборка: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

В чем может быть проблема?

from cppserver.

chronoxor avatar chronoxor commented on September 24, 2024

Did you try to build CppServer following this instruction?
https://github.com/chronoxor/CppServer#how-to-build

from cppserver.

MuravyevArtem avatar MuravyevArtem commented on September 24, 2024

У меня получилось собрать библиотеки cppserver.lib и cppcommon.lib. Я добавил их в зависимости проекта. Но при компиляции возникают те же самые ошибки asio. Я так понимаю, необходима еще и библиотека asio.lib. Но не понимаю как ее скомпилировать из исходников с сайта http://think-async.com/. В разделе http://think-async.com/Asio/asio-1.12.2/doc/asio/using.html есть пункт "Building the tests and examples with MSVC", но нет пункта, как собрать саму библиотеку. Извините, если спрашиваю глупости - у меня маловато опыта в сборке библиотек. В google полно руководств, как собрать библиотеки boost. Но на сколько я понял - boost.asio не работает с Вашей библиотекой cppserver.lib. Не могли бы Вы порекомендовать что нибудь для решения проблемы с asio?

from cppserver.

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.