#author("2024-07-29T12:53:58+00:00","default:iseki","iseki") #author("2024-07-29T12:59:16+00:00","default:iseki","iseki") * libpng - https://daeudaeu.com/libpng/ ** for MS Windows *** Compile **** Download - http://www.libpng.org/pub/png/libpng.html (ソースコード) **** CMake - Browse Source: F:/GIT/lpng1643 - Browse Build: F:/GIT/lpng1643/build - Search 横の Grouped, Advanced にチェック - Configure: VS, ターゲット(x64) を指定 - Configure をクリックするとエラー -- ZLIB の環境変数を指定 --- ZLIB_INCLUDE_DIR: F:/GIT/zlib-1.3/x64 --- ZLIB_LIBRARY_DEBUG: F:/GIT/zlib-1.3/x64/Debug/zlibd.lib --- LIB_LIBRARY_RELEASE: F:/GIT/zlib-1.3/x64/Release/zlib.lib -- CMAKE の環境変数を指定 --- CMAKE_INSTALL_PREFIX: F:/GIT/lpng -- F:/GIT/lpng を作る - 再び Configure をクリック - Generate **** Visual Studio - build/lnpng.sln を VS で起動 - ALL_BUILD をビルド - INSTALL をビルド *** Static Library with MFC - MFCを Static でリンクしている場合,デフォルトの libpng16.dll でクラッシュする. **** zlib と libpng をコンパイルし直し - CMake (cmake-gui) で以下の環境変数を追加 -- CMAKE_CXX_FLAGS_RELEASE /MT -- CMAKE_C_FLAGS_RELEASE /MT -- CMAKE_CXX_FLAGS_DEBUG /MTd -- CMAKE_C_FLAGS_DEBUG /Mtd - VS 上での設定 -- 構成プロパティの詳細で,文字セットを Unicode,MFCの使用を スタティックにする. - zlib をコンパイルしてから,libpng をコンパイル **** VS - libpng_static.lib をスタティック リンクする. - libpng16_static.lib をスタティック リンクする. - zlibstatic.lib はリンクしなくても良いみたい(dll を使用してもクラッシュしない). ** Programing *** Sample - https://daeudaeu.com/libpng/