SORU
12 EYLÜL 2008, Cuma


GCC ile derlenmiş üstbilgi

Kimse herhangi bir başarı başlıkları GCC ile derlenmiş bir çalışma oldu? Benim girişimleri hiç şans vardı ve bunu ayarlamak için ne kadar çok iyi örnek görmedim. Ubuntu gcc 3.4.4 özellik listesi ve 4.0 kullanarak denedim.

CEVAP
29 Mayıs 2010, CUMARTESİ


Kesinlikle başarılı oluyorum. Öncelikle, aşağıdaki kodu kullandım


#include <boost/xpressive/xpressive.hpp>
#include <iostream>

using namespace std;
using namespace boost::xpressive;

//A simple regex test
int main()
{
    std::string hello( "hello world!" );

    sregex rex = sregex::compile( "(\\w ) (\\w )!" );
    smatch what;

    if( regex_match( hello, what, rex ) )
    {
        std::cout << what[0] << '\n'; // whole match
        std::cout << what[1] << '\n'; // first capture
        std::cout << what[2] << '\n'; // second capture
    }
    return 0;
}

Bu Xpressive Boost Merhaba adil bir dünya (bkz: aşağıdaki link). İlk, gcc -H seçeneği ile derlenmiş. Eskiden bu başlıkları muazzam bir liste gösterdi. Sonra, bir göz attım bayraklar benim IDE derleme (:: kod blokları) ve böyle bir şey gördüm üretti:

g -Wall -fexceptions -g -c main.cpp -o obj/Debug/main.o

Bu Xpressive derlemek için bir komut yazdım.hes aynı bayraklarla dosya:

sudo g -Wall -fexceptions -g /usr/local/include/boost/xpressive/xpressive.hpp

Orijinal kodu -H ile tekrar derledim ve bu çıkış var:

g   -Wall -fexceptions -H  -g     -c main.cpp -o obj/Debug/main.o
! /usr/local/include/boost/xpressive/xpressive.hpp.gch
main.cpp
. /usr/include/c  /4.4/iostream
.. /usr/include/c  /4.4/x86_64-linux-gnu/bits/c  config.h
.. /usr/include/c  /4.4/ostream
.. /usr/include/c  /4.4/istream
main.cpp

Bu ! derleyici önceden derlenmiş üstbilgi kullanmak mümkün olduğu anlamına gelir. Bir x kullanmak mümkün değildi anlamına gelir. Uygun derleyici bayraklarını kullanarak çok önemlidir. -H ve bazı hız testleri koştu çıkardım. Önceden derlenmiş üstbilgi 11 saniye 14 saniye bir gelişme vardı. Kötü değil ama şahane de değil.

Not: Burada örnek için: link http://www.boost.org/doc/libs/1_43_0/doc/html/xpressive/user_s_guide.html#boost_xpressive.user_s_guide.examples sonrası çalışmak için alamadım.

BTW: aşağıdaki g kullanıyorum

g (Ubuntu 4.4.3-4ubuntu5) 4.4.3

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • RiceBunny

    RiceBunny

    16 ŞUBAT 2006
  • RogerBuckChrist

    RogerBuckChr

    9 Temmuz 2011
  • Rugiagialia

    Rugiagialia

    1 Ocak 2008