Deployment on Linux
Solved
Installation and Deployment
-
I'm in some considerable doubt as to what I am supposed to do so I can deliver my application for installation on Linux.
I added this to my cmake files in the hope that it would "do the right thing":
set (deploy_tool_options_arg "") if(APPLE) set(deploy_tool_options_arg "${deploy_tool_options_arg} --hardened-runtime") elseif(WIN32) set(deploy_tool_options_arg "${deploy_tool_options_arg} --pdb") endif() # Generate a deployment script to be executed at install time # App bundles on macOS have an .app suffix if(APPLE) set(executable_path "$<TARGET_FILE_NAME:DeepSkyStacker>.app") else() message ("Target filename:" $<TARGET_FILE_NAME:DeepSkyStacker>) set(executable_path "${CMAKE_INSTALL_BINDIR}/$<TARGET_FILE_NAME:DeepSkyStacker>") endif() message ("executable_path: " ${executable_path}) message ("deploy tools options arg: " ${deploy_tool_options_arg}) qt_generate_deploy_script( TARGET DeepSkyStacker OUTPUT_SCRIPT deploy_script CONTENT " qt_deploy_runtime_dependencies( EXECUTABLE \"${executable_path}\" DEPLOY_TOOL_OPTIONS ${deploy_tool_options_arg} )" ) INSTALL (TARGETS DeepSkyStacker) INSTALL (SCRIPT ${deploy_script})
but for my pains I got:
-- Install configuration: "Debug" -- Installing: /home/amonra/.vs/DSS/Linux/x64/Debug/./DeepSkyStacker -- Set non-toolchain portion of runtime path of "/home/amonra/.vs/DSS/Linux/x64/Debug/./DeepSkyStacker" to "$ORIGIN:$ORIGIN/" CMake Error at /opt/Qt/6.8.0/gcc_64/lib/cmake/Qt6Core/Qt6CoreDeploySupport.cmake:314 (message): No Qt deploy tool available for this target platform Call Stack (most recent call first): /opt/Qt/6.8.0/gcc_64/lib/cmake/Qt6Core/Qt6CoreDeploySupport.cmake:543 (qt6_deploy_runtime_dependencies) .qt/deploy_DeepSkyStacker_dc8dd86514.cmake:5 (qt_deploy_runtime_dependencies) DeepSkyStacker/cmake_install.cmake:66 (include) cmake_install.cmake:62 (include) FAILED: CMakeFiles/install.util cd /home/amonra/.vs/DSS/out/build && /usr/bin/cmake -P cmake_install.cmake
Add to that how is one supposed to handle picking up the Qt .so files if I add them to my installation directory (given the LD_LIBRARY_PATH typically won't contain .).
David
-
I found this (after a bit of digging):
https://forum.qt.io/topic/159779/deployment-on-linux
It answers most of my questions for now. I'll mark this as solved and come back later it I need to.
-
-