天天看点

PCRE2-10.36编译(测试QtCreator的DEFINES用法)

PCRE2-10.36有三种位数的编译。我用的是8位。

PCRE2-10.36编译(测试QtCreator的DEFINES用法)

所以在用应用的时候一定要加上预编译指令:

DEFINES += PCRE2_CODE_UNIT_WIDTH=8  (=8等号前后一定不要有号格) 
           

还有例子就是:

https://www.cnblogs.com/blueroses/p/8288219.html

变量赋值:

DEFINES += HELLO=\\\"$$PWD/\\\"

DEFINES += SUCCESS=\\\"string\\\"

在.cpp中测试代码如下:

#ifdef HELLO

qDebug()<<"HELLO="<<HELLO;

#else

qDebug()<<"bye";

#endif

#ifdef HELLO

qDebug()<<"SUCCESS="<<SUCCESS;

#else

qDebug()<<"bye";

#endif

https://www.cnblogs.com/yuohoo/archive/2013/03/11/2954556.html

DEFINES += PCRE2_CODE_UNIT_WIDTH=8
INCLUDEPATH += C:/msys64/usr/local/PCRE2/include
LIBS += C:/msys64/usr/local/PCRE2/lib/libpcre2-8.dll.a
           

之后写一点测试代码:

pcre2_code_8 *re;
    PCRE2_SPTR8 pattern;
    PCRE2_SPTR8 subject;
    PCRE2_SPTR8 name_table;

    int erronumber;
    PCRE2_SIZE erroroffset;

    pcre2_match_data_8 *match_data;

    re = pcre2_compile_8(pattern, PCRE2_ZERO_TERMINATED, 0, &erronumber, &erroroffset, NULL);
           

测试可以的。

多谢,亲爱的美美。