{"id":381,"date":"2020-01-07T18:03:56","date_gmt":"2020-01-07T10:03:56","guid":{"rendered":"https:\/\/qtvz.com\/?p=381"},"modified":"2020-01-11T02:48:52","modified_gmt":"2020-01-10T18:48:52","slug":"libcurl%e7%bc%96%e8%af%91linux%e9%9d%99%e6%80%81%e5%ba%93%e5%8f%8a%e4%bd%bf%e7%94%a8%e6%80%bb%e7%bb%93%ef%bc%88%e7%bc%96%e8%af%91%e6%88%90%e5%8a%9f%e5%ba%93%e4%b8%8b%e8%bd%bd%ef%bc%89","status":"publish","type":"post","link":"https:\/\/qtvz.com\/381.html","title":{"rendered":"libcurl\u7f16\u8bd1linux\u9759\u6001\u5e93\u53ca\u4f7f\u7528\u603b\u7ed3\uff08\u7f16\u8bd1\u6210\u529f\u5e93\u4e0b\u8f7d\uff09"},"content":{"rendered":"<!--wp-compress-html--><!--wp-compress-html no compression-->\n<div class=\"wp-block-file\"><a href=\"https:\/\/qtvz.com\/wp-content\/uploads\/2020\/01\/libcurl.tar.gz\">\uff0864\u4f4dRelease\u7248\uff09libcurl.tar<\/a><a href=\"https:\/\/qtvz.com\/wp-content\/uploads\/2020\/01\/libcurl.tar.gz\" class=\"wp-block-file__button\" download>\u4e0b\u8f7d<\/a><\/div>\n\n\n\n<p>\u4e00\u3001\u5b89\u88c5OPENSSH\uff08\u975e\u5fc5\u987b\uff09<\/p>\n\n\n\n<p>1\u3001 \u4e0a\u4f20\u6587\u4ef6\u5e76\u89e3\u538b <\/p>\n\n\n\n<div class=\"wp-block-file\"><a href=\"https:\/\/qtvz.com\/wp-content\/uploads\/2020\/01\/openssl-1.1.1.tar.gz\">openssl-1.1.1.tar<\/a><a href=\"https:\/\/qtvz.com\/wp-content\/uploads\/2020\/01\/openssl-1.1.1.tar.gz\" class=\"wp-block-file__button\" download>\u4e0b\u8f7d<\/a><\/div>\n\n\n\n<p>GitHub\u5730\u5740\uff1a <a href=\"https:\/\/qtvz.com\/redirect\/aHR0cHM6Ly9naXRodWIuY29tL29wZW5zc2wvb3BlbnNzbA==\" target=\"_blank\">https:\/\/github.com\/openssl\/openssl<\/a><\/p>\n\n\n\n<p>2\u3001\u7f16\u8bd1\u5b89\u88c5<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/config no-asm\nmake\nmake install\n\/\/\u5907\u6ce8\uff1a\u5982\u679c\u8981\u7f16\u8bd1\u52a8\u6001\u5e93\uff0c\u9700\u8981\u589e\u52a0\u53c2\u6570\u5982\u4e0b\uff1a\n.\/config no-asm --shared<\/code><\/pre>\n\n\n\n<p>3\u3001 \u751f\u6210\u7684\u6587\u4ef6\u76ee\u5f55\u5728\uff1a\/usr\/local\/ssl \u4e0b<\/p>\n\n\n\n<p> \u4e8c\u3001\u5b89\u88c5curl <\/p>\n\n\n\n<p> 1\u3001\u4e0a\u4f20\u6587\u4ef6\u5e76\u89e3\u538b <\/p>\n\n\n\n<div class=\"wp-block-file\"><a href=\"https:\/\/qtvz.com\/wp-content\/uploads\/2020\/01\/curl-7.67.0.tar.gz\">curl-7.67.0.tar<\/a><a href=\"https:\/\/qtvz.com\/wp-content\/uploads\/2020\/01\/curl-7.67.0.tar.gz\" class=\"wp-block-file__button\" download>\u4e0b\u8f7d<\/a><\/div>\n\n\n\n<p>\u5b98\u65b9\u7f51\u7ad9: <a href=\"https:\/\/qtvz.com\/redirect\/aHR0cHM6Ly9jdXJsLmhheHguc2UvZG93bmxvYWQuaHRtbA==\" target=\"_blank\">https:\/\/curl.haxx.se\/download.html<\/a> <\/p>\n\n\n\n<p> 2\u3001\u7f16\u8bd1\u6267\u884c<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>CPPFLAGS=\"-I\/usr\/local\/ssl -I\/usr\/local\/ssl\/include\" LDFLAGS=\"-L\/usr\/local\/ssl\/lib\" LIBS=\"-ldl\" .\/configure --with-ssl --disable-shared --enable-static --disable-dict --disable-ftp --disable-imap --disable-ldap --disable-ldaps --disable-pop3 --disable-proxy --disable-rtsp --disable-smtp --disable-telnet --disable-tftp --disable-zlib --without-ca-bundle --without-gnutls --without-libidn --without-librtmp --without-libssh2 --without-nss --without-zlib<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/\u5982\u679c\u4e0d\u9002\u7528OpenSSL\u53ef\u4ee5\u4f7f\u7528\u4e0b\u9762\u7684\u547d\u4ee4\u7f16\u8bd1\nCPPFLAGS=\"-I\/usr\/local\/ssl -I\/usr\/local\/ssl\/include\" LDFLAGS=\"-L\/usr\/local\/ssl\/lib\" LIBS=\"-ldl\" .\/configure --disable-shared --enable-static --disable-dict --disable-ftp --disable-imap --disable-ldap --disable-ldaps --disable-pop3 --disable-proxy --disable-rtsp --disable-smtp --disable-telnet --disable-tftp --disable-zlib --without-ca-bundle --without-gnutls --without-libidn --without-librtmp --without-libssh2 --without-nss --without-zlib<\/code><\/pre>\n\n\n\n<p>3\u3001\u5b89\u88c5<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>make curl_LDFLAGS=-all-static \nmake install curl_LDFLAGS=-all-static<\/code><\/pre>\n\n\n\n<p> 4\u3001\u751f\u6210\u7684\u6587\u4ef6\u76ee\u5f55\u5934\u6587\u4ef6\u5728\uff1a\/usr\/local\/include \u00a0\u4e0b\u5e93\u6587\u4ef6\u5728\uff1a\/usr\/local\/lib \u4e0b <\/p>\n\n\n\n<p> 5\u3001\u4f7f\u7528curl\u7684\u7a0b\u5e8f\uff0cMakefile\u5982\u4e0b\uff1a <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#--------------------------------------------------------------------------\n#source file\n#\u6e90\u6587\u4ef6\uff0c\u81ea\u52a8\u627e\u6240\u6709.c\u548c.cpp\u6587\u4ef6\uff0c\u5e76\u5c06\u76ee\u6807\u5b9a\u4e49\u4e3a\u540c\u540d.o\u6587\u4ef6\nSOURCE  := $(wildcard *.c) $(wildcard *.cpp) $(wildcard *.cc) \nOBJS    := $(patsubst %.c,%.o,$(patsubst %.cpp,%.o,$(SOURCE))) \n \n# \u5f53\u524d\u65f6\u95f4\nCURTIME=$(shell date +%Y%m%d)\n \n#\u53ef\u6267\u884c\u6587\u4ef6\u540d\nEXENAME = payment\n \n#\u76ee\u6807\u6587\u540d\nTARGET  := $(EXENAME).$(CURTIME)\n \n#\u53ef\u6267\u884c\u6587\u4ef6\u62f7\u8d1d\u76ee\u5f55 \nBINDIRECT = \/home\/chnsgy\/server\/bin\/$(EXENAME)\/\n \n#compile and lib parameter \n#\u7f16\u8bd1\u53c2\u6570\n \n#CC      := gcc\nCC      := g++\n#CC      := g++ -O3\n \n# \u5934\u6587\u4ef6\u8def\u5f84\nINCLUDES := -I.\/\nINCLUDES += -I\/usr\/include\/\nINCLUDES += -I\/usr\/local\/include\/\nINCLUDES += -I\/usr\/local\/boost\/include\/\nINCLUDES += -I\/usr\/local\/protobuf\/include\/\nINCLUDES += -I\/usr\/local\/websocketpp\/\nINCLUDES += -I\/usr\/local\/g3log\/\nINCLUDES += -I\/usr\/local\/ssl\/include\/\nINCLUDES += -I..\/comm\/\n \n# \u4f9d\u8d56\u5e93\u8def\u5f84\nLIBS := -L\/usr\/lib\/\nLIBS += -L\/usr\/local\/lib\/\nLIBS += -L\/usr\/local\/boost\/lib\/\nLIBS += -L\/usr\/local\/ssl\/lib\/\nLIBS += -L..\/comm\/\nLIBS += -lcomm \nLIBS += \/usr\/local\/protobuf\/lib\/libprotobuf.a\nLIBS += \/usr\/local\/lib64\/libmysqlcppconn-static.a\nLIBS += \/usr\/local\/g3log\/lib\/libg3logger.a\nLIBS += -ldl\nLIBS += -lrt\nLIBS += -lboost_thread-mt-sd\nLIBS += -lpthread\nLIBS += -lboost_system-mt-sd\nLIBS += -lboost_filesystem-mt-sd\nLIBS += -lboost_serialization-mt-sd\nLIBS += -lboost_log-mt-sd\nLIBS += \/usr\/local\/lib\/<a href=\"https:\/\/qtvz.com\/tag\/libcurl\" class=\"tag-tooltip\" data-toggle=\"tooltip\" title=\"\u67e5\u770b\u66f4\u591a\u5173\u4e8e libcurl \u7684\u6587\u7ae0\" target=\"_blank\">libcurl<\/a>.a\nLIBS += \/usr\/local\/ssl\/lib\/libssl.a\nLIBS += \/usr\/local\/ssl\/lib\/libcrypto.a\n \n \n \nLDFLAGS :=  \nDEFINES :=\nCFLAGS  := -std=c++11 -g -Wall -O3 $(DEFINES) $(INCLUDES) \nCXXFLAGS:= $(CFLAGS) -DHAVE_CONFIG_H -D_DEBUG -DCURL_STATICLIB\n \n#i think you should do anything here\n#\u4e0b\u9762\u7684\u57fa\u672c\u4e0a\u4e0d\u9700\u8981\u505a\u4efb\u4f55\u6539\u52a8\u4e86\n \n.PHONY : everything objs clean veryclean rebuild \n \neverything : $(TARGET)\n \nall : $(TARGET)\n \nobjs : $(OBJS)\n \nrebuild: veryclean everything \n \nclean :\nrm -fr *.so\nrm -fr *.o\n \nveryclean : clean \nrm -fr $(TARGET)\n \n$(TARGET) : $(OBJS)  \n$(CC) $(CXXFLAGS) -o $@ $(OBJS) $(LDFLAGS) $(LIBS)\nrm -f $(BINDIRECT)$(TARGET)\ncp $@ -f $(BINDIRECT)$(EXENAME)<\/code><\/pre>\n<!--wp-compress-html no compression--><!--wp-compress-html-->","protected":false},"excerpt":{"rendered":"\u4e00\u3001\u5b89\u88c5OPENSSH\uff08\u975e\u5fc5\u987b\uff09 1\u3001 \u4e0a\u4f20\u6587\u4ef6\u5e76\u89e3\u538b GitHub\u5730\u5740\uff1a https:\/\/github.com\/openssl\/openssl 2\u3001\u7f16\u8bd1\u5b89\u88c5 3\u3001 \u751f\u6210\u7684\u6587\u4ef6\u76ee\u5f55\u5728\uff1a\/usr\/loc \u00b7\u00b7\u00b7","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[8,12],"tags":[87,88],"views":13024,"_links":{"self":[{"href":"https:\/\/qtvz.com\/api\/wp\/v2\/posts\/381"}],"collection":[{"href":"https:\/\/qtvz.com\/api\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/qtvz.com\/api\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/qtvz.com\/api\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/qtvz.com\/api\/wp\/v2\/comments?post=381"}],"version-history":[{"count":5,"href":"https:\/\/qtvz.com\/api\/wp\/v2\/posts\/381\/revisions"}],"predecessor-version":[{"id":389,"href":"https:\/\/qtvz.com\/api\/wp\/v2\/posts\/381\/revisions\/389"}],"wp:attachment":[{"href":"https:\/\/qtvz.com\/api\/wp\/v2\/media?parent=381"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/qtvz.com\/api\/wp\/v2\/categories?post=381"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/qtvz.com\/api\/wp\/v2\/tags?post=381"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}