SORU
9 EKİM 2010, CUMARTESİ


Nasıl Boost CMake kullanarak C program linki için

Benim cmake kütüphane boost ile benim program bağlama gibi görünmelidir dosya Ubuntu altında ne yapmalıyım?

Hatalar yapmak koşu sırasında göstermek:

main.cpp:(.text 0x3b): undefined reference to `boost::program_options::options_description::m_default_line_length'

Ana dosya gerçekten çok basittir:

#include <boost/program_options/options_description.hpp>
#include <boost/program_options/option.hpp>
using namespace std;
#include <iostream>

namespace po = boost::program_options;

int main(int argc, char** argv) {

    po::options_description desc("Allowed options");
    desc.add_options()
        ("help", "produce help message")
        ;

    return 0;
}

, Cmake dosyalarıma ekledim sadece çizgiler vardı bunu yapmayı başardım:

target_link_libraries(
my_target_file
${Boost_PROGRAM_OPTIONS_LIBRARY}
)

CEVAP
12 EKİM 2010, Salı


CMake find_package ihtiyacınız olan kütüphaneleri bulmak için kullanabilirsiniz. Genellikle CMake-Yükleme ile birlikte FindBoost.cmake var.

Diğer ile birlikte /usr/share/cmake/Modules/ kurulacak hatırladığım kadarıyla bulun-komut ortak kütüphaneler için. Sadece nasıl çalıştığı hakkında daha fazla bilgi için bu dosyadaki belgelere bakın.

Şu an işte değilim, kafamdan bir örnek vermek istiyorum diye

FIND_PACKAGE( Boost 1.40 COMPONENTS program_options REQUIRED )
INCLUDE_DIRECTORIES( ${Boost_INCLUDE_DIR} )

ADD_EXECUTABLE( anyExecutable myMain.cpp )

TARGET_LINK_LIBRARIES( anyExecutable ${Boost_LIBRARIES} )

Bu kod yardımcı olur umarım.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • MikeyMacintosh

    MikeyM

    28 Aralık 2009
  • rekjavicxxx

    rekjavicxxx

    28 EKİM 2007
  • SellerDp

    SellerDp

    27 EKİM 2009