2010-01-05 17 views
8

Bir C++ projesi üzerinde çalışıyorum ve son zamanlarda buna küçük bir destek parçası eklememiz gerekiyor. Boost kısmı gerçekten çok azdır (Boost :: Python), böylelikle her şeyin bir overkill gibi görünmesi için bjam kullanmaktadır (ayrıca, projede çalışan herkes, make ile rahat hisseder ve reçel bilgisi yoktur).Düzenli makbuzlar kullanarak güçlendirilmiş bağımlı bir proje nasıl oluşturulur?

Zaten bazı testler yaptım, ancak daha önce sözü edilen kütüphaneyi makefile eklemenin bir yolunu bulamıyorum ve yapıyı başarılı hale getiriyorum.

Tüm yardımlarınız fazlasıyla apreciated. :)

cevap

2

Aynı sorun vardı ve bu tutorial'da bir çözüm buldum. 1) kaynağı -fPIC gcc seçeneğiyle bir nesne dosyasına derlemeniz ve 2) bu nesneyi -shared gcc seçeneğiyle bir kütüphaneye derlemeniz gerekir. Tabii ki Boost.Python kütüphanesine (genellikle -lboost_python, ancak debian sistemim için -lboost_python-mt-py25, -I/usr/include/pythyon25'u da eklemem gerekiyor) link vermelisiniz. Makefileğimde, bu iki adımı tek bir komutta bitiriyorum. Ayrıca bkz. S. Bu presentation 13.

+0

Teşekkür ederiz. Tam olarak aradığım cevap buydu. :) – Fabzter

1

Eğer bjam'dan rahatsızlık duyuyorsanız, Boost.Cmake'u kullanmayı düşünebilirsiniz.
Alternatif olarak, en azından bjam dosyaları ile ne yaptığını daha kolay görebilmeniz gerekir. makefile bakınca, bana sadece ihtiyacınız Boost alt kümesini ayıklamak için Boost en bcp utility kullanabilirsiniz o kısmı

1

Çalıştır bjam. Bu, yapım sürenizi en aza indirir & boyut. Yine de sorunuza cevap vermiyor. Boost.Python kitaplıklarını ayrı olarak oluşturmayı ve doğrudan kaynak kontrol sisteminize bakmayı düşünebilirsiniz. O zaman kimse onları inşa etmemeli.

İlgili konular