本社勤務になってから、C++からずっと離れていたが、またやることになった。
zip内のファイルを読む必要があるのだが、いちいち解凍なんぞしてらんない。
何万個もあるからね。
昔の視聴率システムのときは、zlibを使って読み込みをやっていたが、今回は7zipでやってみようかと思った。
※zlibは思い出しながら、何とか作り直せた(-_-;;
でも、難しかった。
まず公式サイトから「7-Zip ソースコード」ってのを取得。
https://sevenzip.osdn.jp/download.html
解凍して、その後が大変だった。
IDAとか使っていて感覚鈍ったなー。
いろんなサイトを見たが、上手くいかなかった。
\7z1700-src\CPP\Build.mak
を修正して、
LFLAGS = $(LFLAGS) -OPT:NOWIN98
↓
LFLAGS = $(LFLAGS)
この後、この\7z1700-src\CPP\Build.makに対して
nmake NEW_COMPILER=1 MY_STATIC_LINK=1 Build.mak
を、VSのコマンドラインで実行してみってのが多かった。
けどだめ。
そんで1日眠らせて、次の日再チャレンジ。
わかった。
「Build.mak」じゃない。「makefile」ってのにnmakeを実行しなきゃだめなんだわ。
以下のサイト見ててわかった。ありがとう!!
●How to compile 7-zip with visual studio 2015 rc
https://stackoverflow.com/questions/39689253/how-to-compile-7-zip-with-visual-studio-2015-rc
ってことで、以下でできました。
cd 7z1700-src\CPP\7zip
nmake NEW_COMPILER=1 MY_STATIC_LINK=1