mirror of
https://github.com/Telecominfraproject/wlan-cloud-lib-poco.git
synced 2025-10-29 09:42:31 +00:00
* chore: 1.12.2 versions and notes * chore: spelling fix * fix(): Linking Crypto-testrunner fails #3688 * fix(Event): POSIX Event state need not be atomic #3699 * fix(OpenSSLInitializer): SIGABRT in OSSL_PROVIDER_unload with static OpenSSL3 #3698 * #3700: Release script must include build_vs170.cmd * fix(mingw): lowercase winsock2 and iphlpapi to allow cross compile #3711 * fix(PollSet): wakeup fd is never read #3708 * fix(PollSet): wakeup fd is never read (windows portion and some other optimizations) #3708 * fix(PollSet): wakeup fd is never read #3708 * fix(PollSet): Compiling with clang_cl_x64_x64 on Visual Studio 2022 failed #3716 * fix(SpinlockMutex): VS2022 compilation issues #3693 * Only support extracting JSON fields when the SDK supports it (#3717) * Added preprocessor defined to detect support for JSON * Only support extracting JSON fields when the SDK supports it * Fix version comparison * fix(MSVC): PocoNet Project File does not support Visual Studio 2022 #3719 * Update max MSVC version information (#3720) add visual studio 2022 support * Added missing Crypto Header to ProGen source (#3722) * fix(Crypto): fails to build with Visual Studio projects #3721 * Crypto: Progen again to add new files and bring back ARM64 configuration (#3724) * Progen Crypto to re-add ARM64 * Add new files * Add how to install using Conan section on README (#3727) Signed-off-by: Uilian Ries <uilianries@gmail.com> * fix(Platform): LoongArch support #3460 * fix(format): Poco::format and C++20 #3733 * fix: g++ C++20 warnings #3734 * core(CI): add c++20 * fix(CI): skip MySQL tests for c++20 * release 1.12.2 Co-authored-by: Günter Obiltschnig <guenter.obiltschnig@appinf.com> Co-authored-by: Hernan Martinez <hernan.c.martinez@gmail.com> Co-authored-by: Byungjun Lee <40881444+OneTop4458@users.noreply.github.com> Co-authored-by: Hernan Martinez <hmartinez@malwarebytes.com> Co-authored-by: Uilian Ries <uilianries@gmail.com>
61 lines
2.4 KiB
Plaintext
61 lines
2.4 KiB
Plaintext
POCO C++ Libraries Windows Platform Notes
|
|
AAAIntroduction
|
|
|
|
!!!Introduction
|
|
|
|
The Windows versions of the POCO C++ Libraries are built with Visual Studio.
|
|
Basic support for building with MinGW is there as well, but at this time
|
|
is not officially supported and may or may not work.
|
|
|
|
Starting with release 1.10.0 the POCO C++ Libraries support new
|
|
build configurations in the solution files for Visual Studio 2015 and newer,
|
|
for building Win32 (32-bit) and x64 (64-bit) variants.
|
|
|
|
The following build configurations are available:
|
|
* debug_shared, release_shared: dynamic link libraries (DLL) and dynamically linked executables, with DLL C/C++ runtime libraries.
|
|
* debug_static_md, release_static_md: static libraries and statically linked executables with DLL C/C++ runtime libraries.
|
|
* debug_static_mt, release_static_mt: static libraries and statically linked executables with static runtime libraries.
|
|
|
|
|
|
!!!Libraries And Linking Considerations
|
|
|
|
!!Automatic Linking of POCO C++ Libraries
|
|
|
|
The POCO C++ Libraries header files contain <[#pragma comment]> directives that enable
|
|
automatic linking of the required POCO libraries to an application. For this to work,
|
|
a few rules must be kept in mind.
|
|
|
|
* The default is to link the POCO C++ Libraries dynamically (DLL).
|
|
* To link statically, the code using the POCO C++ Libraries must be compiled
|
|
with the preprocessor symbol <[POCO_STATIC]> defined.
|
|
|
|
|
|
!!Library Naming Conventions
|
|
|
|
The following naming conventions are used:
|
|
|
|
* DLL import libraries are named PocoLIB.lib for the release build
|
|
and PocoLIBd.lib for the debug build.
|
|
* Static libraries built using the static multithreaded C/C++ runtime libraries
|
|
are named PocoLIBmt.lib (release) and PocoLIBmtd.lib (debug).
|
|
* Static libraries built using the DLL C/C++ runtime libraries are
|
|
named PocoLIBmd.lib (release) and PocoLIBmdd.lib (debug).
|
|
|
|
32-bit libraries are placed in the <*lib*> directory. 64-bit libraries
|
|
are placed in the <*lib64*> directory. DLLs are placed in <*bin*> (32-bit)
|
|
or <*bin64*> (64-bit). 64-bit DLLs are named PocoLIB64.dll for release
|
|
and PocoLIB64d.dll for debug, respectively.
|
|
|
|
|
|
!!MSVC Compiler Notes
|
|
|
|
!!!C++ standard version not properly defined
|
|
|
|
In order to work around that, `/Zc:__cplusplus` compiler flag is necesary.
|
|
|
|
See the following issues for details and explanations:
|
|
|
|
* https://github.com/pocoproject/poco/issues/3665
|
|
* https://devblogs.microsoft.com/cppblog/msvc-now-correctly-reports-__cplusplus/
|
|
|