Kirjoittaja Aihe: g++ regex Ubuntu 14.04:ssä  (Luettu 2434 kertaa)

teele

  • Käyttäjä
  • Viestejä: 852
    • Profiili
g++ regex Ubuntu 14.04:ssä
« : 17.06.16 - klo:09.57 »

Yritin kääntää seuraavan koeohjelman Ubuntu 14.04 g++ -ohjelmaksi

Koodia: [Valitse]
//Sample Program
#include <regex>
#include <iostream>
using namespace std;

int main() {
    regex  reg("[0-9]+");
    if (regex_match("123000", reg)) {
        cout << "It's a match!" <<endl;
    }
 return 0;
}

komennolla

Koodia: [Valitse]
g++ rex01.cpp -o rex01 -Wall -pedantic -std=c++11

mutta tuloksena oli ilmoitus

Koodia: [Valitse]

terminate called after throwing an instance of 'std::regex_error'
  what():  regex_error
Keskeytetty (luotiin core-tiedosto)

Googlesta löytyi, että pitäisi olla gcc-4.9 tai gcc-5. Mikä olisi hyvä tapa saada regex toimimaan niin, että tekisin mahdollisimman vähän muutoksia lts-ominaisuuden säilyttämiseksi Ubuntu 14.04 -versiossa.

gcc-<tab><tab> antaa

Koodia: [Valitse]
gcc-4.8         gcc-ar-4.8      gcc-nm-4.8      gcc-ranlib-4.8
gcc-ar          gcc-nm          gcc-ranlib