2010-07-04 25 views
23

kullanarak bağlayın./Usr/lib'deki destek kitaplıklarının hem statik hem de dinamik sürümlerini aldım. Şimdi, CMake'in benim çalıştırılabilirimin bağlantısı sırasında statik sürümleri tercih etmesini istiyorum. Ne yapabilirim? senin CMakeLists.txt dosyasındaBoost kitaplıklarının statik sürümlerini CMake

cevap

32

:

Ben
set(Boost_USE_STATIC_LIBS ON) 
find_package(Boost REQUIRED ...) 

... Kullanmak istediğiniz kütüphanelerin isimlerini koymak ve daha sonra aşağıda ardından target_link_libraries(targetname ${Boost_LIBRARIES}) isteğe. Eğer oldukça yeni bir CMake dağılımı varsa, tam olarak ilan edildiği gibi çalışmalıdır. Bunu kendi projelerimde de aynen yapıyorum.

+0

Harika çalışma. Çok teşekkürler – domachine

+0

Denedim. Sadece arama için görünüyor. Statik bağlantı yapmak isterseniz, yine de fazladan iş yapmanız gerekir. –

+0

@Peter Lee: Burada ... ... 'seçeneğine sahip olmak istediğiniz isteğe bağlı olarak kullanmak istediğiniz kütüphanelerin isimlerini ve daha sonra aşağıda 'target_link_libraries' (targetname $ {Boost_LIBRARIES}) koyabilirsiniz. Eğer oldukça yeni bir CMake dağılımı varsa, tam olarak ilan edildiği gibi çalışmalıdır. Bunu kendi projelerimde de aynen yapıyorum. – greyfade