如何解决如何将PhysFS与CMAKE链接?
我正在尝试在C语言游戏中使用PhysFS。我正在使用CMake生成Makefile。 CMake表示很好地找到了include文件夹和lib,但是在构建过程中出现错误:未定义对“ PHYSFS_init”的引用。
这是我的CMakeLists.txt文件:
Person = Struct.new(:id,:name) do
def print_attr
self.each_pair do |attr_name,attr_value|
puts "attribute name: #{attr_name},attribute value: #{attr_value}"
end
end
end
a = Person.new(123,"Joe")
a.print_attr # => attribute name: id,attribute value: 123
# => attribute name: name,attribute value: Joe
p a.class # => Person
CMakeCache.txt:
cmake_minimum_required(VERSION 3.10)
set(PROJECT_NAME "awesome-game")
project(${PROJECT_NAME})
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
find_package(SDL2 required)
find_package(SDL2_image required)
find_package(SDL2_mixer required)
find_package(PhysFS required)
include_directories(${SDL2_Dirs})
include_directories(${SDL2_IMAGE_Dirs})
include_directories(${SDL2_mixer_Dirs})
include_directories(${PhysFS_Dirs})
file(GLOB_RECURSE SRCS "src/*.h" "src/*.c")
add_executable(${PROJECT_NAME} ${SRCS})
target_link_libraries(${PROJECT_NAME} PRIVATE ${SDL2_LIBRARIES} PRIVATE ${SDL2_IMAGE_LIBRARIES} PRIVATE ${SDL2_mixer_LIBRARIES})
target_link_libraries(${PROJECT_NAME} PRIVATE ${PhysFS_LIBRARY})
add_deFinitions(-DSDL_MAIN_HANDLED)
我在 /usr/local/include/physfs.h
中具有标题physfs.h版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。