c++ - 기본 함수가 실행되기 전에 segfault가 발생하고 gdb가 디버깅할 수 없습니다. 이는 아마도 g++ 컴파일 매개변수와 관련이 있을 것입니다.
仅有的幸福
仅有的幸福 2017-05-16 13:23:33
0
1
584

c++를 사용하여 openssl을 패키징해 보세요. 먼저 정적 라이브러리 libtest.a를 작성하세요. -lssl -lcrytpo -lpthread에 따라 다릅니다.
디렉토리 구조:

테스트 파일은 client.cpp, server.cpp 두 개가 있습니다.
실행 프로그램을 컴파일하는 데 사용되는 명령은 다음과 같습니다.
g++ -g -o2 -fpic client.cpp -I../include -L ../lib -ltest -shared -u -lssl -lcrypto -lpthread -o client
컴파일 성공;
실행 오류, gdb 디버깅에서 기본 기능이 시작되기 전에 충돌이 발생한 것으로 나타났습니다.
보충: 모든 주요 기능 코드를 주석 처리하면 위의 컴파일이 작동하지 않습니다. 컴파일 시 -shared 매개변수를 제거하면 프로그램이 정상적으로 종료됩니다.

仅有的幸福
仅有的幸福

모든 응답(1)
Peter_Zhu

정적 라이브러리를 컴파일하기 위해 작성한 코드에 문제가 있습니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!