ΠΊΠ°ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ boost c linux
ΠΠ°ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Boost Π½Π° Ubuntu
Π― Π½Π° Ubuntu, ΠΈ Ρ Ρ ΠΎΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Boost. Π― ΠΏΡΠΎΠ±ΠΎΠ²Π°Π» Ρ
Π½ΠΎ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ° Π½Π΅ Π±ΡΠ»ΠΎ. ΠΠ°ΠΊΠΎΠ² Π½Π°ΠΈΠ»ΡΡΡΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Boost Π½Π° Ubuntu?
6 ΠΎΡΠ²Π΅ΡΠΎΠ²
ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ (ΡΡΠ΅Π±ΡΠ΅ΡΡΡ sudo )
ΠΈΠ»ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ½ΠΈΡΡ
ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²Π΅ΡΡΠΈΡ Boost, ΡΡΠΎ Π²Π°ΠΌ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ. ΠΡΠΎ Π΄Π»Ρ 1.55, Π½ΠΎ Π½Π΅ ΡΡΠ΅ΡΠ½ΡΠΉΡΠ΅ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈΠ»ΠΈ Π²ΡΡΡΠ½ΡΡ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΡΠ΅Π±Ρ:
ΠΏΠΎΠ»ΡΡΠΈΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΈΠ· Π½ΠΈΡ icu Π½Π° boost::regex ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ°:
ΡΠΎΠ³Π΄Π° ΠΏΠΎΡΡΡΠΎΠΉΡΠ΅ Π΅Π³ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ:
ΠΈ Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΠΈΡΠΎΠ³Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅Π³ΠΎ:
ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Boost Π½Π° Ubuntu Ρ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ boost::array :
ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ libboost-all-dev ΠΈ aptitude:
Π²ΡΡΠ°Π²ΡΡΠ΅ ΡΡΠΎ Π² ΡΠ°ΠΉΠ» c++ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ main.cpp :
ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²Π΅ΡΡΠΈΡ Boost, ΡΡΠΎ Π²Π°ΠΌ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ. ΠΡΠΎ Π΄Π»Ρ 1.55, Π½ΠΎ Π½Π΅ ΡΡΠ΅ΡΠ½ΡΠΉΡΠ΅ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈΠ»ΠΈ Π²ΡΡΡΠ½ΡΡ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΡΠ΅Π±Ρ:
ΠΏΠΎΠ»ΡΡΠΈΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ ΠΈΠ· Π½ΠΈΡ ΡΠ²Π»ΡΡΡΡΡ icu Π΄Π»Ρ boost:: regex ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ°:
Π΅ΡΠ»ΠΈ ΠΌΡ Ρ ΠΎΡΠΈΠΌ MPI, ΡΠΎ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ»Π°Π³ Π² user-config.ΡΠ°ΠΉΠ» Π΄ΠΆΠ΅ΠΌ:
Π½Π°ΠΉΡΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ΄Π΅Ρ:
ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ boost Π² ΠΏΠ°ΡΠ°Π»Π»Π΅Π»Ρ:
ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ / usr / local / lib ΡΠΆΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°. Π΅ΡΠ»ΠΈ Π½Π΅Ρ, ΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΅Π³ΠΎ Π² ΡΠ²ΠΎΠΉ ΠΠ£Π’Π¬ Π ΠΠΠΠΠΠΠ’ΠΠΠ LD:
ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Windows 10 Ubuntu ΡΠ΅ΡΠ΅Π· ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ (ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌ Ubuntu):
Ρ Π²Π°Ρ ΠΌΠΎΠ³ΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΠΎΠΈΡΠΊΠΎΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ°. ΠΡΠ»ΠΈ Π²Ρ ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π΅ΡΠ΅, Π½Π΅ Π±ΠΎΠΉΡΠ΅ΡΡ! ΠΠΠ Π·Π΄Π΅ΡΡ!
Π ΡΡΡΠΊΠΈΠ΅ ΠΠ»ΠΎΠ³ΠΈ
Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Boost
1. Π‘ΠΊΠ°ΡΠ°ΡΡ
ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Linux.
Π·Π°Π³ΡΡΠ·ΠΈΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Boost ΠΏΡΡΠΌΠΎ Ρ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ°,boost_1_61_0.tar.bz2οΌ
ΠΠΎΡΠ»Π΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ Π΅Π³ΠΎ Π² ΠΏΡΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ, Π° Π·Π°ΡΠ΅ΠΌ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΠΈ ΡΠ°Π·Π°ΡΡ
ΠΈΠ²ΠΈΡΡΠΉΡΠ΅, ΠΎΠ±ΡΡΠ½ΠΎ ΠΌΡ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΠΌ Π΅Π³ΠΎ Π² ΠΏΡΡΡ /usr/local ΠΏΠΎΠ΄
2. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ²
3. ΠΡΠΎΡΡΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Boost
ΠΡΠ° ΠΏΡΠΎΡΡΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ². ΠΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΡΡΡΠΎΠΊΡ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π» ΠΈΠ· ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°, Π° Π·Π°ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Boost.Lambda, ΡΡΠΎΠ±Ρ ΡΠΌΠ½ΠΎΠΆΠΈΡΡ Π΅Π΅ Π½Π° 3, Π° Π·Π°ΡΠ΅ΠΌ Π·Π°ΠΏΠΈΡΠ°ΡΡ Π΅Π΅ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ Π²ΡΠ²ΠΎΠ΄.
ΠΠ΄Π΅ΡΡ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ CMake Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, Π½ΠΈΠΆΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π° CMakeLists.txt.
ΠΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ,
4. ΠΠΎΡΠΎΠ²Π½ΠΎΡΡΡ ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Boost.
ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Boost, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ½Π°ΡΠ°Π»Π° ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π½Π΅Π΅ Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΡΠΉ ΠΈ ΡΠ°ΡΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Boost.
ΠΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Boost ΡΠ°ΠΊΠΆΠ΅ Π΅ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ.
ΠΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π²Π΅ΡΠ½ΠΈΡΠ΅ΡΡ ΠΊ ΠΏΡΡΠΈ ΠΊ ΡΡΠΊΠΎΡΠ΅Π½Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
5. ΠΡΠΈΠΌΠ΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
ΠΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΡ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ boost,
ΠΡΠ΅ Π΅ΡΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠΉΡΠ΅ Ρ CMake
ΠΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ.
How to install Boost on Ubuntu
I’m on Ubuntu, and I want to install Boost. I tried with
But there was no such package. What is the best way to install Boost on Ubuntu?
9 Answers 9
You can use apt-get command (requires sudo )
find packages you need and install them using the apt-get command.
Get the version of Boost that you require. This is for 1.55 but feel free to change or manually download yourself:
Get the required libraries, main ones are icu for boost::regex support:
Boost’s bootstrap setup:
Then build it with:
and eventually install it:
Installing Boost on Ubuntu with an example of using boost::array :
Install libboost-all-dev and aptitude:
Then paste this into a C++ file called main.cpp :
Get the version of Boost that you require. This is for 1.55 but feel free to change or manually download yourself (Boost download page):
Get the required libraries, main ones are icu for boost::regex support:
Boost’s bootstrap setup:
If we want MPI then we need to set the flag in the user-config.jam file:
Find the maximum number of physical cores:
Install boost in parallel:
Assumes you have /usr/local/lib setup already. if not, you can add it to your LD LIBRARY PATH:
Π ΡΡΡΠΊΠΈΠ΅ ΠΠ»ΠΎΠ³ΠΈ
Linux: ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠΉΡΠ΅ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ boost 1.69
Boost Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ» ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΊΠ°ΠΊ ΠΊΠ²Π°Π·ΠΈΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°.ΠΠ½ΠΎΠ³ΠΈΠ΅ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΈΠ½ΡΠ΅Π»Π»Π΅ΠΊΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ, ΡΠ½Π°ΡΠ°Π»Π° Π±ΡΠ»ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Π² boost, Π° Π·Π°ΡΠ΅ΠΌ Π²ΠΊΠ»ΡΡΠ΅Π½Ρ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π² boost ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΆΡΡΠ½Π°Π», Π°Π»Π³ΠΎΡΠΈΡΠΌ, Π΄Π°ΡΠ°, Π³Π΅ΠΎΠ³ΡΠ°ΡΠΈΡ, ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ°, ΡΠΎΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΠΎΡΠΎΠΊΠΎΠ², ΠΏΠΎΡΡΠΎΠΌΡ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΈΠ·ΡΡΠΈΡΡ C ++, ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈΠ·ΡΡΠΈΡΠ΅ boost.
Π·Π°ΠΏΠΈΡΠ°Π½ Π½ΠΈΠΆΠ΅LinuxΠ¨Π°Π³ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ boost1.69 Π½ΠΈΠΆΠ΅, Ρ Π½Π°Π΄Π΅ΡΡΡ, ΡΡΠΎ ΠΎΠ½Π° Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»Π΅Π·Π½Π° Π²ΡΠ΅ΠΌ.
ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ
ΠΠ΅ΡΡΠΈΡ Π΄Π»Ρ Linux: Ubuntu 18.04 LTS
1. Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ
# Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ mpi
# ΠΠ°Π±ΠΎΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² UNICODE, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΠΉ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ
# ΠΡΠΆΠ΅Π½ ΠΏΠΈΡΠΎΠ½
2. ΠΠ°Π³ΡΡΠ·ΠΈΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΎΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ.
ΠΠΎΡ ΡΠΊΠ°ΡΠ°Π» boost1.69, 0
Π Π°ΡΠΏΠ°ΠΊΠΎΠ²Π°ΡΡ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³
3. cd Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³
ΠΡΡΡ ΡΠ°ΠΉΠ» ΡΡΠ΅Π½Π°ΡΠΈΡ bootstrap.sh, Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΡΠΎΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΉ:
ΠΠ»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠ°ΠΌ Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅ Π²ΡΡΠ΅.
4. ΠΠ°ΡΠ½ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ boost.
ΠΠ΅ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΡ ΠΎΠ΄ΠΈΡ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ, Π²ΡΡ ΠΎΠ΄ΠΈΠΌ ΠΈ ΠΏΡΡΠ³Π°Π΅ΠΌ ΡΠ΅ΡΠ΅Π· ΡΠΊΠ°ΠΊΠ°Π»ΠΊΡ, Π±ΠΎΠΊΡΠΈΡΡΠ΅ΠΌ, Π²Π²ΠΎΠ΄ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
Π‘Π½ΠΈΠΌΠΎΠΊ ΡΠΊΡΠ°Π½Π° ΠΏΠΎΡΠ»Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
5. ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ boost, Π² / usr / local. Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
Π‘Π½ΠΈΠΌΠΎΠΊ ΡΠΊΡΠ°Π½Π° ΠΏΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ:
ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ. Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΠΊ ΡΠ°ΠΉΠ»Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΡΡ:
ΠΠΎΡΠ»Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΡΠΎΡ ΡΠ°Π½ΠΈΡΠ΅ Π΅Π³ΠΎ.
6. ΠΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ
(1) ΠΠ°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°. Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ, Π²Π²Π΅Π΄ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄ ΠΈ ΡΠΎΡ ΡΠ°Π½ΠΈΡΠ΅:
(2) ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΊΠΎΠ΄Π°. Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
(3) ΠΠΎΡΡΠ΄ΠΎΠΊ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
Π‘Π½ΠΈΠΌΠΎΠΊ ΡΠΊΡΠ°Π½Π° Π½ΠΈΠΆΠ΅
ΠΠ, Π³ΠΎΡΠΎΠ²ΠΎ.
ΠΠ½ΡΠ΅Π»Π»Π΅ΠΊΡΡΠ°Π»ΡΠ½Π°Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡ
AlamoFire Source Severtation Series (12) ΠΎΡΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ (Π²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΊΠ°Π»Π°)
ΠΡΠ° ΡΡΠ°ΡΡΡ ΠΏΡΠΈΠ½ΠΎΡΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ΄Π΅ΠΈ ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΊΠ°Π»Π΅ Π² AlamoFire ΠΡΠ΅ΡΡΡΠΏΠ½ΠΎΡΡΡ ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ Timeline ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΊΠ°Π»Π° ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΡΡΠΈΠ΅ Ρ Π½Π°ΡΠ°Π»Π° Π΄ΠΎ ΠΊΠΎΠ½ΡΠ° ΡΠ·Π»Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½.
ΠΠ½Π°Π»ΠΈΠ· ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ iOS initWithFrame, initWithCoder, awakeFromNib
ΠΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΡ ΡΠΈΠΏΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΠΉ ΡΠ°ΠΌΡ
Boost
Boost ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΠ°ΠΌΡΡ
ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ
ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌΠΈ Π‘++ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ. Π‘Π΅ΠΉΡΠ°Ρ ΡΠ»ΠΎΠΆΠ½ΠΎ Π΄Π°ΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ ΠΎΠ±Π»Π°ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ (Π²Π΅Π΄Ρ ΡΠ΅ΡΡ ΠΏΡΠΎ Π‘++), Π³Π΄Π΅ Π±Ρ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ boost ΠΈΠ»ΠΈ Ρ
ΠΎΡΡ Π±Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ Π΅Π³ΠΎ ΡΠ°ΡΡΠΈ. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π±ΡΡΡ ΡΡΠΎ ΠΎΠ±ΡΠ΅Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅, ΡΠ²ΠΎΠ΅ΠΎΠ±ΡΠ°Π·Π½ΠΎΠ΅ Π·Π½Π°ΠΌΡ, ΡΠΎΠ±ΠΈΡΠ°ΡΡΠ΅Π΅ ΠΏΠΎΠ΄ ΡΠΎΠ±ΠΎΠΉ ΡΠ΅Π»ΡΡ ΠΊΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡ
Π²Π°ΡΡΠ²Π°ΡΡ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΡΡ
Π·Π°Π΄Π°Ρ. ΠΠΌΠ΅Π½Π½ΠΎ ΠΈΠ·-Π·Π° ΡΠΎΠ³ΠΎ, ΡΡΠΎ boost Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΠΈ ΡΡΠΊΠΎΡΡΠ΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΠΠ, ΠΎΠ½ ΠΈ Π·Π°Π²ΠΎΠ΅Π²Π°Π» ΡΠ°ΠΊΡΡ Π±ΠΎΠ»ΡΡΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ. ΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, boost ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΈΠ³Ρ, ΠΏΠΎ ΡΠ΅ΠΌ ΠΆΠ΅ ΡΠ°ΠΌΡΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ: ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΡ, ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ, ΡΠΈΡΠΎΠΊΠ°Ρ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΡΡΡ (Π»Π΅Π³ΠΊΠΎ Π½Π°ΠΉΡΠΈ Π½ΡΠΆΠ½ΡΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ²), ΠΏΡΠΎΡΡΠΎΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ.
ΠΠ΅ ΠΏΠΎΠ΄ΡΠΌΠ°ΠΉΡΠ΅, ΡΡΠΎ Ρ ΠΏΠΈΡΡ Π²ΡΠ΅ ΡΡΠΈ ΡΡΠ°ΡΡΠΈ ΠΏΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ βΠ»ΠΈΡΠ½Π΅Π³ΠΎβ ΡΠΎΡΡΠ° ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΌΠ½Π΅ Π½Π΅ΡΠ΅Π³ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ β ΠΏΡΠΎΡΡΠΎ ΡΡΠΎΡ ΡΠΎΡΡ Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΡΠΆΠ΅ Π² ΡΠ°ΠΌΡΡ Π±Π»ΠΈΠΆΠ°ΠΉΡΠΈΡ ΡΡΠΎΠΊΠ°Ρ ΠΈ Π±Π΅Π· Π½Π΅Π³ΠΎ Π²Ρ Π½Π΅ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π°ΡΠΈΡ Ρ Π²Π°ΠΌΠΈ ΠΎΠ±ΡΠΈΡ ΠΈΠ³Ρ.
ΠΠ΄Π΅ Π²Π·ΡΡΡ Boost
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Boost
ΠΠ°ΠΊ Ρ ΡΠΆΠ΅ ΡΠΊΠ°Π·Π°Π», Π² ΡΠΎΡΡΠ°Π² boost Π²Ρ ΠΎΠ΄ΠΈΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ. ΠΡΡΠ°ΡΠΈ, Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΏΠ»ΡΡ Π±ΡΡΡΠ° Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΠΌ, Ρ.Π΅. ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΈ ΠΏΠΎΠ΄ Windows, ΠΈ ΠΏΠΎΠ΄ Linux, ΠΈ ΠΏΠΎΠ΄ MacOS β ΡΠΎ Π΅ΡΡΡ ΠΏΠΎΠ΄ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎΠΌ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ. Π Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π±Ρ ΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈΠ·-ΠΏΠΎΠ΄ Windows, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ΄ MacOS, Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π΄Π°ΠΆΠ΅ ΠΏΡΠΈΠΊΠ°ΡΠ°ΡΡΡΡ ΠΊ ΠΊΠΎΠ΄Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅ΠΌΡ boost β Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ Π²ΡΡ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ.
ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Boost:
ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Boost
ΠΡΡΡ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ±: ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ Π² ΠΏΠ°ΠΏΠΊΠ΅ boostβΠ° ΡΠ°ΠΉΠ»ΠΈΠΊ bootstrap.bat β ΠΎΠ½ ΡΠΎΠ±Π΅ΡΡΡ Π΄Π»Ρ Π²Π°Ρ bjam ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠΈ, ΡΡΠΎ Π½Π°Π΄ΡΠΆΠ½Π΅Π΅ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ.
Π§ΡΠΎ Π±Ρ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π²ΡΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ ΠΎΠΏΡΠΈΠΈ ΡΠ±ΠΎΡΠΊΠΈ Π½Π°Π΄ΠΎ Π²Π²Π΅ΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΠΎ Π½Π°ΡΠ°Π»Π° ΡΠ±ΠΎΡΠΊΠΈ ΡΠ°ΠΌΠΎΠ³ΠΎ Π±ΡΡΡΠ° ΠΏΠΎΠ·Π°Π±ΠΎΡΡΡΠ΅ΡΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π±Ρ Π½Π° Π΄ΠΈΡΠΊΠ΅ Π±ΡΠ»ΠΎ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ Ρ ΠΎΡΡ Π±Ρ 3-4 Π³ΠΈΠ³Π°Π±Π°ΠΉΡΠ° ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ°. ΠΠ³Π°, Π±ΡΡΡ ΡΡΠΎ ΡΡΡΠΊΠ° Π½Π΅ΠΌΠ°Π»Π΅Π½ΡΠΊΠ°Ρ. ΠΠ΄Π½Π°ΠΊΠΎ, Π½Π΅ Π²ΠΎΠ»Π½ΡΠΉΡΠ΅ΡΡ β ΠΊΠΎΠ³Π΄Π° Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±ΡΡΡ, ΠΎΠ½ΠΈ Π½Π΅ Π±ΡΠ΄ΡΡ ΡΠ°Π·ΡΠ°ΡΡΠ°ΡΡΡΡ Π΄ΠΎ Π³ΠΈΠ³Π°Π±Π°ΠΉΡΠ½ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² β ΠΏΡΠΎΡΡΠΎ Π±ΡΡΡ ΡΠΎΠ±ΠΈΡΠ°Π΅Ρ Π²ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π² ΠΊΡΡΠ΅ ΡΠ°Π·Π½ΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² (Π»ΠΈΠ½ΠΊΠΎΠ²ΠΊΠΈ), Π΄Π° ΠΈ ΠΏΠΎΡΠΎΠΌ, ΠΏΡΠΈ ΡΠ±ΠΎΡΠΊΠ΅ Π²Π°ΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, Π² Π½ΠΈΡ Π±ΡΠ΄ΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π»ΠΈΡΡ ΡΠ΅Π°Π»ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π²Π°ΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π±ΡΡΡΠ°, Π° Π²ΠΎΠ²ΡΠ΅ Π½Π΅ Π²ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°. ΠΡΠ»ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΈΠ· Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² Π»ΠΈΠ½ΠΊΠΎΠ²ΠΊΠΈ Π²Ρ Π½Π΅ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° β Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΈ ΡΠΎΠ³Π΄Π° ΡΠ±ΠΎΡΠΊΠ° Π±ΡΡΡΠ° ΠΏΡΠΎΠΉΠ΄ΡΡ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ Π±ΡΡΡΡΠ΅Π΅. ΠΠ΄Π½Π°ΠΊΠΎ, Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π°ΠΏΠ΅ΡΡΠ΄ Π½Π΅ Π·Π½Π°Π΅ΡΡ, ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡΡ ΠΎΠ½ΠΎ ΠΈΠ»ΠΈ Π½Π΅Ρ, ΠΏΠΎΡΠΎΠΌΡ Π»ΡΡΡΠ΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΡ β ΠΏΡΡΡΡ Π±ΡΠ΄Π΅Ρ, Π»ΠΈΡΠ½ΠΈΠΌ Π½Π΅ Π±ΡΠ΄Π΅Ρ.
ΠΡΠ°ΠΊ, Π΄Π°Π²Π°ΠΉΡΠ΅ Π·Π°ΠΏΡΡΡΠΈΠΌ ΡΠ±ΠΎΡΠΊΡ:
Π― ΠΎΡΠΊΠ»ΡΡΠΈΠ» ΡΠΎΡΠΊΡ Π±ΡΡΡ-ΠΏΠΈΡΠΎΠ½, Ρ.ΠΊ. ΠΎΠ½ Π½Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ΅Π½. ΠΡΠ»ΠΈ Π²Π°ΠΌ ΠΎΠ½ Π½ΡΠΆΠ΅Π½ ΠΈ ΠΏΠΈΡΠΎΠ½ (Π²ΠΊΠ»ΡΡΠ°Ρ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ ΠΈ Π»ΠΈΠ±Ρ) ΡΡΠΎΠΈΡ Ρ Π²Π°Ρ Π½Π° ΠΊΠΎΠΌΠΏΠ΅ β Π½Π΅ ΠΎΡΠΊΠ»ΡΡΠ°ΠΉΡΠ΅ Π΅Π³ΠΎ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π»ΠΈΡΡ ΡΠ΅Π±Π΅ ΠΊΠΎΡΠ΅, Π²ΠΊΠ»ΡΡΠΈΡΡ Π»ΡΠ±ΠΈΠΌΡΠΉ ΡΠ΅ΡΠΈΠ°Π» ΠΈ Π΄ΠΎΠ»Π³ΠΎ-Π΄ΠΎΠ»Π³ΠΎ ΡΠΌΠΎΡΡΠ΅ΡΡ Π΅Π³ΠΎβ¦ ΠΡΠΎΡΠ΅ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π±ΡΡΡΠ° ΠΎΡΠ΅Π½Ρ (Π½Ρ ΠΎΠΎΠΎΠΎΡΠ΅Π½Ρ) Π½Π΅ Π±ΡΡΡΡΡΠΉ. Π― Π²Π°Ρ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡ β ΡΠ΄Π΅Π»Π°ΠΉΡΠ΅ ΡΠ±ΠΎΡΠΊΡ Π±ΡΡΡΠ° ΡΠ°ΠΌΠΈ, Π½Π΅ ΠΏΡΡΠ°ΠΉΡΠ΅ΡΡ Π½Π°ΠΉΡΠΈ Π³Π΄Π΅ ΡΠΊΠ°ΡΠ°ΡΡ Π΅Ρ Π² ΡΠ΅ΡΠΈ β Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ, Π΅ΡΡΡ ΠΎΡΠ΅Π½Ρ Π±ΠΎΠ»ΡΡΠ°Ρ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ, ΡΡΠΎ ΠΎΠ½Π° Ρ Π²Π°Ρ ΠΏΡΠΎΡΡΠΎ Π½Π΅ Π·ΡΠ°Π±ΠΎΡΠ°Π΅Ρβ¦
ΠΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΏΠ°ΡΡΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΎΠ² β ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΠΎΠ±ΡΠ°ΡΠ°ΠΉΡΠ΅ Π½Π° Π½ΠΈΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ β ΡΠ±ΠΎΡΠΊΠ° Π²ΡΡ ΡΠ°Π²Π½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡΠΎΠΉΡΠΈ ΡΡΠΏΠ΅ΡΠ½ΠΎ.
Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΌΠΎΡΠ½ΠΎΡΡΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°, Π³Π΄Π΅-ΡΠΎ ΡΠ΅ΡΠ΅Π· 20-60 ΠΌΠΈΠ½ΡΡ ΡΠ±ΠΎΡΠΊΠ° Π±ΡΡΡΠ° Π·Π°ΠΊΠΎΠ½ΡΠΈΡΡΡ. Π ΠΏΠ°ΠΏΠΊΠ΅ boostβΠ° ΠΏΠΎΡΠ²ΠΈΡΡΡ Π½ΠΎΠ²Π°Ρ ΠΏΠ°ΠΏΠΊΠ° βstage/libsβ β Π² Π½Π΅ΠΉ Π»Π΅ΠΆΠ°Ρ Π²ΡΠ΅ ΡΠΎΠ±ΡΠ°Π½Π½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π±ΡΡΡΠ°.
ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Boost ΠΊ Visual C++
ΠΡΡΠ°Π»ΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΡ ΠΏΠ°ΠΏΠΊΡ Π² ΡΠΏΠΈΡΠΎΠΊ ΠΏΠ°ΠΏΠΎΠΊ Π±ΠΈΠ»ΠΈΠΎΡΠ΅ΠΊ Visual Studio. Π Π² ΡΠΏΠΈΡΠΎΠΊ ΠΏΠ°ΠΏΠΎΠΊ-ΠΈΠ½ΠΊΠ»ΡΠ΄ΠΎΠ² Π΄ΠΎΠ±Π°Π²ΠΈΡΡ βΠ²Π°ΡΠ°_ΠΏΠ°ΠΏΠΊΠ°_Π³Π΄Π΅_Π±ΡΡΡ/boostβ β ΡΠ°ΠΌ Π»Π΅ΠΆΠ°Ρ ΠΈΠ½ΠΊΠ»ΡΠ΄Ρ Π±ΡΡΡΠ°, Π° Π² Π»ΠΈΠ±Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅ΠΌ ΠΏΠ°ΠΏΠΊΡ βΠ³Π΄Π΅_Π»Π΅ΠΆΠΈΡ_Π±ΡΡΡ/stage/libβ. ΠΠ° ΡΡΠΎΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π±ΡΡΡΠ° Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½Π° ΠΈ ΠΎΠ½ Π³ΠΎΡΠΎΠ² ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. Π§ΡΠΎ Π±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ Π² ΡΡΠΎΠΌ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π·ΡΡΡ Π»ΡΠ±ΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Ρ ΡΠ°ΠΉΡΠ° boostβΠ° ΠΈ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ.
ΠΡΠΎΡ ΡΡΠΎΠΊ Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½. Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΡΠΎΠΊΠ΅ Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ Π²Π°ΠΌ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΠΈ Π½Π°ΡΡΡΠΎΠΈΡΡ luabind, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΈΠ»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΡΠΈΡ Π½Π°ΠΌ ΠΆΠΈΠ·Π½Ρ, Π° ΡΠΎΡΠ½Π΅Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ lua-ΡΠΊΡΠΈΠΏΡΡ Π² Π½Π°ΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ .
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΡΡΡΠ΄Π½ΠΎΡΡΠΈ ΠΏΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Π±ΡΡΡΠ°, Π½Π°ΠΏΠΈΡΠΈΡΠ΅ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°Ρ β Ρ ΠΏΠΎΡΡΠ°ΡΠ°ΡΡΡ ΠΏΠΎΠΌΠΎΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΠΎΠ±ΡΠ°ΡΠΈΠ²ΡΠ΅ΠΌΡΡΡ.