Skip to content

Instantly share code, notes, and snippets.

@ipatch
Last active February 13, 2019 02:19
Show Gist options
  • Select an option

  • Save ipatch/37fbb9bce85fa1fce4d37fef91afac72 to your computer and use it in GitHub Desktop.

Select an option

Save ipatch/37fbb9bce85fa1fce4d37fef91afac72 to your computer and use it in GitHub Desktop.
CMake Building App Bundle
-- 81/144: fixing up '/opt/beta/inkscape/macos-bundle/Inkscape.app/Contents/Frameworks/libcairo.2.dylib'
-- 82/144: fixing up '/opt/beta/inkscape/macos-bundle/Inkscape.app/Contents/Frameworks/libglib-2.0.0.dylib'
-- 83/144: fixing up '/opt/beta/inkscape/macos-bundle/Inkscape.app/Contents/Frameworks/libgmodule-2.0.0.dylib'
error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/install_name_tool: can't open input file: /opt/beta/inkscape/macos-bundle/Inkscape.app/Contents/Frameworks/libgmodule-2.0.0.dylib for writing (Permission denied)
error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/install_name_tool: can't lseek to offset: 0 in file: /opt/beta/inkscape/macos-bundle/Inkscape.app/Contents/Frameworks/libgmodule-2.0.0.dylib for writing (Bad file descriptor)
error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/install_name_tool: can't write new headers in file: /opt/beta/inkscape/macos-bundle/Inkscape.app/Contents/Frameworks/libgmodule-2.0.0.dylib (Bad file descriptor)
error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/install_name_tool: can't close written on input file: /opt/beta/inkscape/macos-bundle/Inkscape.app/Contents/Frameworks/libgmodule-2.0.0.dylib (Bad file descriptor)
CMake Error at /usr/local/Cellar/cmake/3.13.4/share/cmake/Modules/BundleUtilities.cmake:910 (message):
Command failed:
'install_name_tool' '-change' '/usr/local/Cellar/glib/2.58.3/lib/libglib-2.0.0.dylib' '@executable_path/../Frameworks/libglib-2.0.0.dylib' '-change' '/usr/local/opt/gettext/lib/libintl.8.dylib' '@executable_path/../Frameworks/libintl.8.dylib' '-change' '/usr/local/opt/pcre/lib/libpcre.1.dylib' '@executable_path/../Frameworks/libpcre.1.dylib' '-id' '@executable_path/../Frameworks/libgmodule-2.0.0.dylib' '/opt/beta/inkscape/macos-bundle/Inkscape.app/Contents/Frameworks/libgmodule-2.0.0.dylib'
Call Stack (most recent call first):
/usr/local/Cellar/cmake/3.13.4/share/cmake/Modules/BundleUtilities.cmake:984 (fixup_bundle_item)
src/cmake_install.cmake:63 (fixup_bundle)
cmake_install.cmake:52 (include)
make: *** [Makefile:118: install] Error 1
bash-5.0$
elseif(APPLE)
set(SCRIPT_PERMISSIONS
OWNER_READ
OWNER_WRITE
OWNER_EXECUTE
GROUP_READ
GROUP_EXECUTE
WORLD_READ
WORLD_EXECUTE
)
################################
# @truckmonth / @ipatch edits
#####
install(
TARGETS ${RUNTIME_TARGET}
BUNDLE DESTINATION .
PERMISSIONS ${SCRIPT_PERMISSIONS}
COMPONENT Runtime
)
if(BUILD_SHARED_LIBS)
install(
TARGETS inkscape_base
LIBRARY
DESTINATION "${CMAKE_INSTALL_PREFIX}/${PROJECT_NAME}.app/MacOS/lib"
PERMISSIONS ${SCRIPT_PERMISSIONS}
)
endif()
# Note Mac specific extension .app
set(APPS "${CMAKE_INSTALL_PREFIX}/${PROJECT_NAME}.app")
set(LIBS "")
# Directories to look for dependencies
set(DIRS "${CMAKE_INSTALL_PREFIX}/${PROJECT_NAME}.app/MacOS/lib")
message("------------------------------------------------------------------------")
message(STATUS "APPS: ${APPS}")
message(STATUS "LIBS: ${LIBS}")
message(STATUS "DIRS: ${DIRS}")
message("------------------------------------------------------------------------")
install(CODE "
include(BundleUtilities)
fixup_bundle(\"${APPS}\" \"${LIBS}\" \"${DIRS}\")
" COMPONENT RUNTIME)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment