Компиляция Botan 1.10.1: неопределенные пространства имен - PullRequest
0 голосов
/ 27 марта 2012

Только что переключился с Ботана 1.4 на Ботан 1.10. Настройка, сборка и установка работали нормально на моем Mac (OSX10.6). Но пытаюсь использовать lib

#include <stdio.h>
#include <stdlib.h>
#include <bigint.h>

int main(void) {
    puts("!!!Hello World!!!");

    Botan::BigInt * otto = new Botan::BigInt(1);

    delete otto;

    return EXIT_SUCCESS;
}

приводит к ошибке сборки:

g++ -O2 -g -Wall -fmessage-length=0 -I/usr/local/include/botan    -c -o BotanTest.o 
BotanTest.cpp
In file included from /usr/include/c++/4.2.1/cwchar:52,

             from /usr/include/c++/4.2.1/bits/postypes.h:46,
             from /usr/include/c++/4.2.1/iosfwd:49,
             from /usr/include/c++/4.2.1/bits/stl_algobase.h:70,
             from /usr/include/c++/4.2.1/bits/char_traits.h:46,
             from /usr/include/c++/4.2.1/string:47,
             from /usr/local/include/botan/allocate.h:12,
             from /usr/local/include/botan/secmem.h:11,
             from /usr/local/include/botan/buf_comp.h:11,
             from /usr/local/include/botan/entropy_src.h:11,
             from /usr/local/include/botan/rng.h:11,
             from /usr/local/include/botan/bigint.h:12,
             from BotanTest.cpp:11:
/usr/include/c++/4.2.1/ctime:66: error: '::clock_t' has not been declared
/usr/include/c++/4.2.1/ctime:68: error: '::tm' has not been declared
/usr/include/c++/4.2.1/ctime:70: error: '::clock' has not been declared
/usr/include/c++/4.2.1/ctime:71: error: '::difftime' has not been declared
/usr/include/c++/4.2.1/ctime:72: error: '::mktime' has not been declared
/usr/include/c++/4.2.1/ctime:73: error: '::time' has not been declared
/usr/include/c++/4.2.1/ctime:74: error: '::asctime' has not been declared
/usr/include/c++/4.2.1/ctime:75: error: '::ctime' has not been declared
/usr/include/c++/4.2.1/ctime:76: error: '::gmtime' has not been declared
/usr/include/c++/4.2.1/ctime:77: error: '::localtime' has not been declared
/usr/include/c++/4.2.1/ctime:78: error: '::strftime' has not been declared

Есть ли необходимость использовать специальную строковую реализацию? Все библиотеки доступны, и пути, кажется, в порядке (/usr/local/include).

1 Ответ

1 голос
/ 02 мая 2012

Ботан 1.10 не будет работать. Для использования кодека crypt достаточно взять Botan 1.8. Это будет работать.

...