zbudowanie libpng w msvc bez instalowania bibliotek

zbudowanie libpng w msvc bez instalowania bibliotek
Marius.Maximus
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2202
0

Eksperymentalnie użyłem visual studio c++ 2019

Brakowalo mi biblioteli libpng wiec dodalem ja do projektu za pomoca FetchContent
libpng potrzebuje zlib wiec tez dodałem tez do pliku cmake

Zastanawiam sie czy da rade uzyc libpng+zlib bez uzycia cmake install

Kopiuj
cmake_minimum_required(VERSION 3.19)
project(png-usage)

if(POLICY CMP0077)
  # Allow CMake 3.13+ to override options when using FetchContent / add_subdirectory.
  cmake_policy(SET CMP0077 NEW)
endif()

# more logging from FetchContent
set(FETCHCONTENT_QUIET OFF)

include(FetchContent)

FetchContent_Declare(
  zlib_repo
  GIT_REPOSITORY "https://github.com/madler/zlib"
)
FetchContent_MakeAvailable(zlib_repo)

set(ZLIB_LIBRARY ${zlib_repo_BINARY_DIR})
set(ZLIB_INCLUDE_DIR ${zlib_repo_SOURCE_DIR} ${zlib_repo_BINARY_DIR})
message("zlib_repo_SOURCE_DIR  ${zlib_repo_SOURCE_DIR})")
message("zlib_repo_BINARY_DIR  ${zlib_repo_BINARY_DIR})")

# app_zlib
add_executable(app_zlib app_z.cpp)
target_link_libraries(app_zlib zlib)

FetchContent_Declare(
  libpng
  GIT_REPOSITORY "https://github.com/glennrp/libpng.git"
)
set(PNG_TESTS OFF)
FetchContent_MakeAvailable(libpng)


# app_png 
add_executable(app_png app_png.cpp)
target_link_libraries(app_png png_static)

kompletny projekt https://github.com/mariuszmaximus/libpng_usage.git

RE
  • Rejestracja: dni
  • Ostatnio: dni
2

moment u mnie w projekcie jak mam make avilable. Cmake ciągnie soft, buduje w _deps i jest dostępny. O ile pamiętam nie jest on kompletnie instalowany.
Czy tobie chodzi że po zbudowaniu projektu te libki są instalowane z appką?
W teroii mógłbyś dostarczyć te libki jako static albo shared.

Marius.Maximus
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2202
0

problem rozwiazało dopisanie ścieżek globalnie:

Kopiuj
include_directories(${zlib_repo_SOURCE_DIR} )
link_directories(${zlib_repo_BINARY_DIR})

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.