VS.NET 2015でopensslをビルドするときのメモ
__iob_funcが未定義と怒られたので調べてみた自分用メモ これはstdin/stdout/stderrのdefineが変わっているのが原因のようだ。 以下の修正をすることで解消。 修正ファイル:e_os.h 300行目付近で # define stdin (&__iob_func()[0]) # define stdout (&__iob_func()[1]) # define stderr (&__iob_func()[2]) となっている箇所を # define stdin (__acrt_iob_func(0)) # define stdout (__acrt_iob_func(1)) # define stderr (__acrt_iob_func(2)) と変更してやる。 もしくは、 #ifマクロで「_MSC_VER>=1900」の場合だけ「__acrt_iob_func」に 変更するように修正を入れる。