I have downloaded a project called Febio Studio, for which I can have no help of those who I downloaded it from, and am running into a wall that I cannot comprehend. I hope someone here can shed some light to help this absolute noob understand whatβs going on and maybe fix it.
I am using cmake gui and VS to compile code from a large open source projects CALLED FebioStudio to generate the corresponding applications.
Every time, I need to manually configure the paths to INC, LIB and LIB_DIR for SQLite along with libzip, in the red window section of cmake.
But for a certain purpose, I need to figure out a way to let cmake itself automatically add the paths.
I cannot find why cmake cannot find the paths,so I use the set() function to add the correctly existing paths for them in findependencies.cmake,here are my added codes,all end with ##:
set(SQLITE_INC "D:\\FebioStudio(compiling)\\SQLite3.46.0" CACHE PATH "Path to the SQLite inc directory (e.g. /opt/sqlite/lib)" FORCE)##
set(SQLITE_LIB_DIR "D:\\FebioStudio(compiling)\\SQLite3.46.0" CACHE PATH "Path to the SQLite lib directory (e.g. /opt/sqlite/lib)" FORCE)##
libzip is samiliar:
set(LIBZIP_INC "C:/Program Files (x86)/libzip/include" CACHE PATH "Path to the LIBZIP inc directory (e.g. /opt/sqlite/lib)" FORCE)##
set(LIBZIP_LIB_DIR "C:/Program Files (x86)/libzip/lib" CACHE PATH "Path to the LIBZIP lib directory (e.g. /opt/sqlite/lib)" FORCE)##
Yesterday it was working fine, today it reported two errors, only SQLite reported errors, libzip was fine:
CMake Error at CMakeLists.txt:108 (message):
Could not find sqlite3.lib. Check SQLITE_LIB_DIR.
Call Stack (most recent call first):
CMakeLists.txt:239 (findLib)
CMake Error at CMakeLists.txt:632 (target_link_libraries):
The "optimized" argument must be followed by a library.
ββββββββββββββββββββββββββββββββββ
(error 1)The line 108 in question reads:
function(findLib libDir libOut libName)
# Optional arguments ARGV3-ARVG6 can be used as alernative names for the library
find_library(TEMP NAMES ${libName} ${ARGV3} ${ARGV4} ${ARGV5} ${ARGV6}
PATHS ${${libDir}} NO_DEFAULT_PATH)
if(TEMP)
set(${libOut} ${TEMP} PARENT_SCOPE)
unset(TEMP CACHE)
else()
if(WIN32)
message(SEND_ERROR "Could not find ${libName}.lib. Check ${libDir}.")
elseif(APPLE)
message(SEND_ERROR "Could not find lib${libName}.so, lib${libName}.a, or lib${libName}.dylib Check ${libDir}.")
else()
message(SEND_ERROR "Could not find lib${libName}.so, or lib${libName}.a. Check ${libDir}")
endif()
unset(TEMP CACHE)
endif()
endfunction()
(error 1)The line 239 in question reads:
" findLib(SQLITE_LIB_DIR SQLITE_LIB sqlite3) "
ββββββββββββββββββββββββββββββββββ
(error 2)The line 632 in question reads:
" target_link_libraries(${FBS_BIN_NAME} optimized ${SQLITE_LIB}) "
How to solve it? Please ~Is there someone can help? I am really deseperate