Glfw: find_package(glfw3) di ubuntu yakkety

Dibuat pada 6 Jun 2017  ·  3Komentar  ·  Sumber: glfw/glfw

Hai, menggunakan find_package(glfw3) tidak berfungsi pada versi perpustakaan yang lebih baru.

Saya telah menginstal glfw3 di ubuntu yakkety:

apt-get install libglfw3-dev
dpkg --status libglfw3-dev

Versi yang diinstal adalah 3.2.1-1.

Kemudian, saya punya file cmake:

find_package(glfw3)
get_cmake_property(_variableNames VARIABLES)
foreach (_variableName ${_variableNames})
    message(STATUS "${_variableName}=${${_variableName}}")
endforeach()

Dan menjalankannya seperti yang diberikan cmake . | grep -i glfw (di yakkety):

-- CONFIG_FILES=/usr/lib/x86_64-linux-gnu/cmake/glfw3/glfw3Targets-none.cmake
-- GLFW3_DIR=GLFW3_DIR-NOTFOUND
-- _DIR=/usr/lib/x86_64-linux-gnu/cmake/glfw3
-- glfw3_CONFIG=/usr/lib/x86_64-linux-gnu/cmake/glfw3/glfw3Config.cmake
-- glfw3_CONSIDERED_CONFIGS=/usr/lib/x86_64-linux-gnu/cmake/glfw3/glfw3Config.cmake
-- glfw3_CONSIDERED_VERSIONS=3.2.1
-- glfw3_DIR=/usr/lib/x86_64-linux-gnu/cmake/glfw3
-- glfw3_FOUND=1
-- glfw3_VERSION=3.2.1
-- glfw3_VERSION_COUNT=3
-- glfw3_VERSION_MAJOR=3
-- glfw3_VERSION_MINOR=2
-- glfw3_VERSION_PATCH=1
-- glfw3_VERSION_TWEAK=0
-- glfw_DIR=glfw_DIR-NOTFOUND

Sedangkan di ubuntu xenial, ia memberikan:

-- GLFW3_INCLUDE_DIR=/usr/include
-- GLFW3_LIBRARY=/usr/lib/x86_64-linux-gnu/libglfw.so
-- GLFW3_LIBRARY_DIR=/usr/lib/x86_64-linux-gnu
-- GLFW3_VERSION=3.1.2
-- glfw3_CONFIG=/usr/lib/x86_64-linux-gnu/cmake/glfw3/glfw3Config.cmake
-- glfw3_CONSIDERED_CONFIGS=/usr/lib/x86_64-linux-gnu/cmake/glfw3/glfw3Config.cmake
-- glfw3_CONSIDERED_VERSIONS=3.1.2
-- glfw3_DIR=/usr/lib/x86_64-linux-gnu/cmake/glfw3
-- glfw3_FOUND=1
-- glfw3_VERSION=3.1.2
-- glfw3_VERSION_COUNT=3
-- glfw3_VERSION_MAJOR=3
-- glfw3_VERSION_MINOR=1
-- glfw3_VERSION_PATCH=2
-- glfw3_VERSION_TWEAK=0

Untuk meringkas, versi yang lebih baru tidak ada GLFW3_INCLUDE_DIR dan GLFW3_LIBRARY .

Linux build question

Komentar yang paling membantu

GLFW 3.2 dan yang lebih baru menggunakan fitur ekspor target CMake. Target glfw Anda impor dengan find_package berisi direktori yang diperlukan, dependensi link-time, dll.

Dimulai dengan 3.2 yang perlu Anda lakukan adalah:

find_package(glfw3)
target_link_libraries(myapplicationname glfw)

Semua 3 komentar

GLFW 3.2 dan yang lebih baru menggunakan fitur ekspor target CMake. Target glfw Anda impor dengan find_package berisi direktori yang diperlukan, dependensi link-time, dll.

Dimulai dengan 3.2 yang perlu Anda lakukan adalah:

find_package(glfw3)
target_link_libraries(myapplicationname glfw)

Dokumentasi 3.2 melakukan pekerjaan yang sangat buruk untuk menjelaskan hal ini. Ini telah sedikit ditingkatkan untuk 3.3.

Terima kasih. Saya telah membuatnya bekerja dengan kedua versi sekarang.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat