2013-04-23 77 views
0

行,我有安裝的OpenSSL 1.0.1e,我想編譯關於AES公司的計劃,這樣 http://saju.net.in/code/misc/openssl_aes.c.txt找不到的OpenSSL/evp.h當我編譯openssl_aes.c用gcc

文檔提示我應該輸入到編譯器

的gcc -Wall openssl_aes.c -lcrypto

howerver有一個錯誤:

openssl_aes.c:1 3:25:* 致命錯誤:openssl/evp.h:沒有這樣的文件或目錄 編譯終止。 *

那麼,應該怎麼辦?

+0

你應該找到的OpenSSL/evp.h與放的OpenSSL的父目錄中包含路徑 – user93353 2013-04-23 05:08:11

+0

使用-I標誌來指定包括路徑的OpenSSL/evp.h。 – doptimusprime 2013-04-23 06:58:06

+0

@dbasic hank你〜我已經解決了這個問題。 – aprilgentle 2013-04-25 02:20:06

回答

0

你需要找到的OpenSSL/evp.h到您的程序。所有的頭文件都被複制到你在Makefile中提到的文件夾中。

該路徑必須被您的程序使用。

使用-I選項指定包含路徑。

gcc -Wall -Ipath_to_openssl_headerfiles openssl_aes.c -lcrypt. 
+0

如果我這樣做,還有另一個錯誤。
openssl_aes.c:51:22:錯誤:'AES_BLOCK_SIZE'未聲明(首次在此函數中使用) – aprilgentle 2013-04-23 10:13:03

+0

因此,我認爲我是否配置正確。因爲我也無法編譯文檔中的示例:[Des with openssl ](http://blog.fpmurphy.com/2010/04/openssl-des-api.html?output=pdf) – aprilgentle 2013-04-23 10:15:26

+0

對於AES_BLOCK_SIZE,在適當的文件中包含它的定義。 – doptimusprime 2013-04-23 11:07:25