我一直在通過asio ssl示例工作(鏈接如下)。儘管我盡了最大的努力,但我一直無法將openssl鏈接到boost示例中。 ld的輸出是ld缺少來自libssl.a的符號。我無法弄清楚的是,我發現了libssl.a中的所有符號,其中ld表示缺少nm。我懷疑我正在做一些愚蠢的事情,但我對C++不夠熟悉,無法修復它。我還包括我的makefile。 ssl-client.cpp的來源是從鏈接逐字。援助建設助推asio ssl示例
http://www.boost.org/doc/libs/1_41_0/doc/html/boost_asio/example/ssl/client.cpp
INCLUDES = -I /usr/local/boost_1_41_0/ -I /opt/local/include/
LIBS = -L/usr/local/boost_1_41_0/lib/libboost_system.a \
-L/opt/local/lib/libcrypto.a \
-L/opt/local/lib/libssl.a
CPP = g++
build: ssl-client
ssl-client: ssl-client.cpp
$(CPP) $(LIBS) $(INCLUDES) ssl-client.cpp
通過縮進它的格式代碼4個空格(我已經爲你做了)。這是真的你的Makefile,逐字?我注意到你正在定義變量'LIBS',然後使用變量'LIB'(沒有S)。 –
LIBS - > LIB從我搞亂的時候開始只是一個小小的錯字。對困惑感到抱歉。我沒想到它會格式化makefile,所以我沒有嘗試。謝謝你的提示! –
'CPP = g ++'看起來不太正確。 C++編譯器是'CXX',而不是'CPP'。 'CPP'是C預處理器。 – jww