2012-03-27 61 views
0

剛剛從Botan 1.4切換到Botan 1.10。配置,製作和安裝在我的Mac(OSX10.6)上正常工作。 但是,試圖用lib編譯Botan 1.10.1:未定義的命名空間

#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

Botan 1.10不起作用。用Botan 1.8來使用crypt編解碼器就足夠了。這將工作。