2014-01-25 65 views
0

好的,我需要使用OpenSSL庫中的md5()函數,但是當我編譯gcc時給了我一個錯誤 - 「未定義的md5引用」。我嘗試了幾個不同的StackOverFlow問題,但仍然沒有效果。如何使用OpenSSL exacly?

首先我安裝的軟件包(Ubuntu的13.04):

命令和apt-get安裝的libssl-dev的

在我的源I包括

命令和apt-get安裝的OpenSSL openssl/md5,我試圖用這種方式編譯所有東西:

gcc main.c -lssl -lcrypto

GCC的main.c -L /家庭/ usr/lib目錄-lssl -lcrypto

我缺少什麼?請幫忙。

+0

您需要向我們展示您的代碼以及您正在運行的實際命令以及這些命令的實際輸出,包括任何錯誤消息。 – larsks

+0

安裝'libssl-dev'並用'gcc main.c -lssl -lcrypto'編譯後,事情應該已經奏效了。這是因爲'apt-get'將庫放在'/ usr/lib'中,編譯器/鏈接器可以找到它們。所以你有另一個不明顯的問題。清理您的項目並重新開始或向我們展示make命令。 – jww

+0

另外,您有時也需要鏈接'-ldl'和'-lpthread'。在'-lssl'' -lcrypto'之後添加它們。 – jww

回答

1

它看起來像你的OpenSSL編譯與no-md5選項。所以,如果需要,下載OpenSSL並用md5構建它。