국가 비밀 데이터베이스 붕괴의 버그

 

## GmSSL 정보 #LINUX에서
컴파일 -d는 디버그 버전을 나타냅니다
. / config no-shared -d
make
make install

개인 키 생성
gmssl genpkey -algorithm EC -pkeyopt ec_paramgen_curve : sm2p256v1 -pkeyopt ec_param_enc : named_curve -out gm_privatekey.pem

인증서 생성
gmssl req -new -x509 -key gm_privatekey.pem -out gm_cert.pem


# 정적 라이브러리를 컴파일하여 매개 변수를 공유하지 않음   #perl ActivePerl의 상용 버전이 아닌 오픈 소스 Strawberry를 선택하십시오.

#Windows 32-bit compile
perl VC-WIN32 비공유
nmake 구성

#Windows 아래 64 위编译
perl Configure VC-WIN64A no-shared
nmake
 

 

 

如果 执行 perl Configure VC-WIN64A no-shared , 报错 :
File :: Glob 모듈에서 "glob"을 내 보내지
않습니다. Configure 라인 18에서 가져 오기 오류 후 계속할 수 없습니다.
BEGIN 실패-컴파일이 Configure 라인 18에서 중단되었습니다.

 

해결책:

1. test / build.info 파일의 339 행을 수정합니다.

   use File :: Spec :: Functions;
   use File :: Basename;
   #use if $ ^ O ne "VMS", 'File :: Glob'=> qw / glob /; remove this line
   use File :: Glob ': glob ';이 줄 추가

 

2. 구성 파일의 18 번째 줄을 수정합니다.

5.10.0이 필요합니다.
엄격한 사용;
사용 File :: Basename;
사용 File :: Spec :: Functions qw / : DEFAULT abs2rel rel2abs /;
사용 File :: Path qw / mkpath /;
#use if $ ^ O ne "VMS", '파일 :: Glob'=> qw / glob /; 去掉 这 行
사용 File :: Glob ': glob'; 增加 这 行

 

그런 다음 nmake를 실행합니다.

추천

출처blog.csdn.net/langeldep/article/details/110956876