Теперь я знаю, что начиная с Java 10 или около того исполняемый файл javah был удален. Итак, когда CMake ищет Java, он не должен меня подвести из-за того, что я его не нашел. Однако когда я это делаю:
Код: Выделить всё
find_package(Java REQUIRED)
Код: Выделить всё
CMake Error at /home/einpoklum/opt/versions/cmake/3.31.6/share/cmake-3.31/Modules/FindPackageHandleStandardArgs.cmake:233 (message):
Could NOT find Java (missing: Java_JAVAH_EXECUTABLE) (found version
"1.8.0.141")
Call Stack (most recent call first):
/home/einpoklum/opt/versions/cmake/3.31.6/share/cmake-3.31/Modules/FindPackageHandleStandardArgs.cmake:603 (_FPHSA_FAILURE_MESSAGE)
/home/einpoklum/opt/versions/cmake/3.31.6/share/cmake-3.31/Modules/FindJava.cmake:326 (find_package_handle_standard_args)
-- snip --
Could NOT find Java (missing: Java_JAVAH_EXECUTABLE) (found version
"1.8.0.141")
Код: Выделить всё
find_program called with the following settings:
VAR: Java_JAVA_EXECUTABLE
NAMES: "java"
Documentation: Path to a program.
Framework
Only Search Frameworks: 0
Search Frameworks Last: 0
Search Frameworks First: 0
AppBundle
Only Search AppBundle: 0
Search AppBundle Last: 0
Search AppBundle First: 0
CMAKE_FIND_USE_CMAKE_PATH: 1
CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: 1
CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: 1
CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: 1
CMAKE_FIND_USE_INSTALL_PREFIX: 1
find_program considered the following locations:
/home/einpoklum/opt/yaml-cpp/bin/java
/home/einpoklum/opt/yaml-cpp/sbin/java
/home/einpoklum/opt/yaml-cpp/java
/home/einpoklum/opt/bin/java
/home/einpoklum/opt/sbin/java
/home/einpoklum/opt/java
The item was found at
/usr/java/latest/bin/java
Подробнее здесь: https://stackoverflow.com/questions/798 ... sing-javah
Мобильная версия