tifig icon indicating copy to clipboard operation
tifig copied to clipboard

MacOS Sierra make error (BUILD_STATIC)

Open ThisMushroom opened this issue 5 years ago • 4 comments

Well cmake for static build goes well. But error occures during make

cmake -D STATIC_BUILD=ON ..

MacBook-Haha:build Haha$ cmake -D STATIC_BUILD=ON ..
-- The C compiler identification is AppleClang 9.0.0.9000039
-- The CXX compiler identification is AppleClang 9.0.0.9000039
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found PkgConfig: /opt/local/bin/pkg-config (found version "0.29.2") 
-- Checking for module 'libavcodec'
--   Found libavcodec, version 58.18.100
-- Checking for module 'libavutil'
--   Found libavutil, version 56.14.100
-- Checking for module 'libswscale'
--   Found libswscale, version 5.1.100
-- Checking for module 'vips-cpp'
--   Found vips-cpp, version 8.6.5
-- Checking for module 'expat'
--   Found expat, version 2.2.5
-- System name       : Darwin
-- Project Name      : HEIF
-- Project directory : /Users/Haha/Documents/UseTools/TifigSource/Tifig/lib/heif
-- Executables in    : /Users/Haha/Documents/UseTools/TifigSource/Tifig/lib/heif/Bins
-- File-list         : 
-- Performing Test COMPILER_SUPPORTS_CXX11
-- Performing Test COMPILER_SUPPORTS_CXX11 - Success
-- Performing Test COMPILER_SUPPORTS_CXX0X
-- Performing Test COMPILER_SUPPORTS_CXX0X - Success
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) 
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/Haha/Documents/UseTools/TifigSource/Tifig/build

during make, everything goes smooth until

[ 95%] Linking CXX executable tifig
clang: warning: argument unused during compilation: '-pthread' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-pthread' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-pthread' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-pthread' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-pthread' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-pthread' [-Wunused-command-line-argument]
ld: warning: option -s is obsolete and being ignored
ld: framework not found -lAudioToolbox
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [tifig] Error 1
make[1]: *** [CMakeFiles/tifig.dir/all] Error 2
make: *** [all] Error 2

ThisMushroom avatar Aug 11 '18 14:08 ThisMushroom

I assume you are using Apples CMake... Could you provide the version of CMake?

Flask avatar Aug 13 '18 08:08 Flask

cmake version 3.12.0

ThisMushroom avatar Aug 13 '18 11:08 ThisMushroom

the ld argument for the AudioToolbox is something MacOS specific. Could you try it with CMake from homebrew (version 3.x)

Flask avatar Aug 13 '18 11:08 Flask

CMake is from homebrew. and updated before any manipulations with project.

Errors during previous make were because of frameworks... Manually changed their links - it compiles BUT not static... In CMakeCache I see that STATIC_BUILD=ON but after compile it still remain non-static...

result of "otool -L tifig"

	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1238.60.2)
	/usr/local/opt/ffmpeg/lib/libavcodec.58.dylib (compatibility version 58.0.0, current version 58.18.100)
	/opt/local/lib/libiconv.2.dylib (compatibility version 9.0.0, current version 9.0.0)
	/opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.11)
	/usr/local/opt/lame/lib/libmp3lame.0.dylib (compatibility version 1.0.0, current version 1.0.0)
	/usr/local/opt/x264/lib/libx264.152.dylib (compatibility version 0.0.0, current version 0.0.0)
	/usr/local/opt/ffmpeg/lib/libswresample.3.dylib (compatibility version 3.0.0, current version 3.1.100)
	/usr/local/opt/ffmpeg/lib/libavutil.56.dylib (compatibility version 56.0.0, current version 56.14.100)
	/System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL (compatibility version 1.0.0, current version 1.0.0)
	/usr/local/opt/ffmpeg/lib/libswscale.5.dylib (compatibility version 5.0.0, current version 5.1.100)
	/usr/local/opt/vips/lib/libvips-cpp.42.dylib (compatibility version 51.0.0, current version 51.4.0)
	/usr/local/opt/vips/lib/libvips.42.dylib (compatibility version 51.0.0, current version 51.4.0)
	/usr/local/opt/glib/lib/libgmodule-2.0.0.dylib (compatibility version 5601.0.0, current version 5601.1.0)
	/usr/local/opt/libgsf/lib/libgsf-1.114.dylib (compatibility version 115.0.0, current version 115.43.0)
	/opt/local/lib/libxml2.2.dylib (compatibility version 12.0.0, current version 12.7.0)
	/opt/local/lib/liblzma.5.dylib (compatibility version 8.0.0, current version 8.4.0)
	/opt/local/lib/libfftw3.3.dylib (compatibility version 9.0.0, current version 9.8.0)
	/usr/local/opt/graphicsmagick/lib/libGraphicsMagick.3.dylib (compatibility version 22.0.0, current version 22.1.0)
	/usr/local/opt/orc/lib/liborc-0.4.0.dylib (compatibility version 29.0.0, current version 29.0.0)
	/opt/local/lib/liblcms2.2.dylib (compatibility version 3.0.0, current version 3.8.0)
	/usr/local/opt/poppler/lib/libpoppler-glib.8.dylib (compatibility version 8.0.0, current version 8.9.0)
	/usr/local/opt/poppler/lib/libpoppler.78.dylib (compatibility version 78.0.0, current version 78.0.0)
	/usr/local/opt/librsvg/lib/librsvg-2.2.dylib (compatibility version 45.0.0, current version 45.2.0)
	/usr/local/opt/glib/lib/libgio-2.0.0.dylib (compatibility version 5601.0.0, current version 5601.1.0)
	/usr/lib/libresolv.9.dylib (compatibility version 1.0.0, current version 1.0.0)
	/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1349.91.0)
	/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1504.83.101)
	/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 157.0.0)
	/usr/local/opt/gdk-pixbuf/lib/libgdk_pixbuf-2.0.0.dylib (compatibility version 3603.0.0, current version 3603.0.0)
	/opt/local/lib/libpng16.16.dylib (compatibility version 51.0.0, current version 51.0.0)
	/usr/local/opt/cairo/lib/libcairo.2.dylib (compatibility version 11403.0.0, current version 11403.12.0)
	/usr/local/opt/pixman/lib/libpixman-1.0.dylib (compatibility version 35.0.0, current version 35.0.0)
	/opt/local/lib/libwebpmux.3.dylib (compatibility version 4.0.0, current version 4.2.0)
	/opt/local/lib/libwebp.7.dylib (compatibility version 8.0.0, current version 8.2.0)
	/usr/local/opt/pango/lib/libpangoft2-1.0.0.dylib (compatibility version 4201.0.0, current version 4201.3.0)
	/usr/local/opt/harfbuzz/lib/libharfbuzz.0.dylib (compatibility version 10801.0.0, current version 10801.5.0)
	/usr/local/opt/graphite2/lib/libgraphite2.3.dylib (compatibility version 3.0.0, current version 3.0.1)
	/usr/local/opt/pango/lib/libpango-1.0.0.dylib (compatibility version 4201.0.0, current version 4201.3.0)
	/usr/local/opt/fribidi/lib/libfribidi.0.dylib (compatibility version 5.0.0, current version 5.0.0)
	/opt/local/lib/libfontconfig.1.dylib (compatibility version 13.0.0, current version 13.1.0)
	/opt/local/lib/libexpat.1.dylib (compatibility version 8.0.0, current version 8.7.0)
	/opt/local/lib/libuuid.16.dylib (compatibility version 17.0.0, current version 17.22.0)
	/opt/local/lib/libfreetype.6.dylib (compatibility version 22.0.0, current version 22.0.0)
	/opt/local/lib/libbz2.1.0.dylib (compatibility version 1.0.0, current version 1.0.6)
	/opt/local/lib/libtiff.5.dylib (compatibility version 9.0.0, current version 9.0.0)
	/opt/local/lib/libjpeg.9.dylib (compatibility version 13.0.0, current version 13.0.0)
	/usr/local/opt/libexif/lib/libexif.12.dylib (compatibility version 16.0.0, current version 16.3.0)
	/usr/local/opt/glib/lib/libgobject-2.0.0.dylib (compatibility version 5601.0.0, current version 5601.1.0)
	/opt/local/lib/libffi.6.dylib (compatibility version 7.0.0, current version 7.4.0)
	/usr/local/opt/glib/lib/libglib-2.0.0.dylib (compatibility version 5601.0.0, current version 5601.1.0)
	/opt/local/lib/libintl.8.dylib (compatibility version 10.0.0, current version 10.5.0)
	/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1349.90.0)
	/usr/local/opt/pcre/lib/libpcre.1.dylib (compatibility version 4.0.0, current version 4.10.0)
	/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 307.5.0)

Is there some way to build tifig completely static without any dylib dependencies? (Saw for linux there is such solution)

ThisMushroom avatar Aug 13 '18 11:08 ThisMushroom