ladislavb / homebrew-therion

Homebrew formulae to install Therion on macOS platform. Therion process survey data and generates maps or 3D models of caves - see https://therion.speleo.sk
GNU General Public License v3.0
11 stars 4 forks source link

brew install therion on macOS Ventura 13.7 #15

Open xcross opened 3 weeks ago

xcross commented 3 weeks ago

==> Installing ladislavb/therion/therion ==> cmake .. ==> make install Last 15 lines from /Users/iro/Library/Logs/Homebrew/therion/02.make: make[1]: Waiting for unfinished jobs.... [ 14%] Built target locale_sl [ 14%] Linking C static library libtr.a cd /tmp/therion-20241029-36844-186j6a/therion-6.1.8/build/loch && /usr/local/Cellar/cmake/3.30.5/bin/cmake -P CMakeFiles/tr.dir/cmake_clean_target.cmake cd /tmp/therion-20241029-36844-186j6a/therion-6.1.8/build/loch && /usr/local/Cellar/cmake/3.30.5/bin/cmake -E cmake_link_script CMakeFiles/tr.dir/link.txt --verbose=1 /usr/bin/ar qc libtr.a CMakeFiles/tr.dir/lxTR.c.o /usr/bin/ranlib libtr.a [ 14%] Built target tr [ 15%] Linking CXX static library libQuickHull.a cd /tmp/therion-20241029-36844-186j6a/therion-6.1.8/build/extern/quickhull && /usr/local/Cellar/cmake/3.30.5/bin/cmake -P CMakeFiles/QuickHull.dir/cmake_clean_target.cmake cd /tmp/therion-20241029-36844-186j6a/therion-6.1.8/build/extern/quickhull && /usr/local/Cellar/cmake/3.30.5/bin/cmake -E cmake_link_script CMakeFiles/QuickHull.dir/link.txt --verbose=1 /usr/bin/ar qc libQuickHull.a CMakeFiles/QuickHull.dir/QuickHull.cpp.o /usr/bin/ranlib libQuickHull.a [ 15%] Built target QuickHull make: [all] Error 2

Dehautenbas commented 3 weeks ago

I also have an issue on macOS Sequoia 15.1

_Last 15 lines from /Users/#####/Library/Logs/Homebrew/therion/02.make:
 1647 |   return {arg_mapper<Context>().map(val)};
      |          ^
/tmp/therion-20241104-26810-82ck9l/therion-6.1.8/thepsparse.cxx:143:17: note: in instantiation of function template specialization 'fmt::format<thdouble>' requested here
  143 |       s << fmt::format("{}", thdouble(this->a,prec_col)) << " g";
      |                 ^
/tmp/therion-20241104-26810-82ck9l/therion-6.1.8/thdouble.h:37:10: note: candidate function template not viable: 'this' argument has type 'const fmt::formatter<thdouble>', but method is not marked const
   37 |     auto format(const thdouble& p, FormatContext& ctx) {
      |          ^
[ 60%] Building CXX object CMakeFiles/therion-common.dir/thexpsys.cxx.o
/opt/homebrew/Library/Homebrew/shims/mac/super/clang++ -DFMT_SHARED -DIMG_API_VERSION=1 -DPROJ_VER=9 -DTHMACOSX -I/tmp/therion-20241104-26810-82ck9l/therion-6.1.8/build -I/tmp/therion-20241104-26810-82ck9l/therion-6.1.8 -isystem /opt/homebrew/Cellar/jpeg-turbo/3.0.4/include -isystem /opt/homebrew/Cellar/xz/5.6.3/include -isystem /opt/homebrew/opt/zstd/include -isystem /opt/homebrew/Cellar/libtiff/4.7.0/include -isystem /opt/homebrew/Cellar/proj/9.5.0/include -isystem /tmp/therion-20241104-26810-82ck9l/therion-6.1.8/extern/shapelib -isystem /tmp/therion-20241104-26810-82ck9l/therion-6.1.8/extern/quickhull -O3 -DNDEBUG -std=c++17 -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk -Wall -Wextra -MD -MT CMakeFiles/therion-common.dir/thexpsys.cxx.o -MF CMakeFiles/therion-common.dir/thexpsys.cxx.o.d -o CMakeFiles/therion-common.dir/thexpsys.cxx.o -c /tmp/therion-20241104-26810-82ck9l/therion-6.1.8/thexpsys.cxx
1 error generated.
make[2]: *** [CMakeFiles/therion-common.dir/thepsparse.cxx.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/therion-common.dir/all] Error 2
make: *** [all] Error 2_

brew doctor returns Warning: No Cask quarantine support available: unknown reason. Then, swift $(brew --repo)/Library/Homebrew/cask/utils/quarantine.swift returns :

11 | //===----------------------------------------------------------------------===//
12 | 
13 | module SwiftBridging {
   |        `- error: redefinition of module 'SwiftBridging'
14 |     header "bridging"
15 | 

/Library/Developer/CommandLineTools/usr/include/swift/bridging.modulemap:13:8: note: previously defined here
11 | //===----------------------------------------------------------------------===//
12 | 
13 | module SwiftBridging {
   |        `- note: previously defined here
14 |     header "bridging"
15 | 

/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Modules/Foundation.swiftmodule/arm64e-apple-macos.swiftinterface:5:8: error: failed to build module 'CoreFoundation'; this SDK is not supported by the compiler (the SDK is built with 'Apple Swift version 6.0 effective-5.10 (swiftlang-6.0.0.7.43 clang-1600.0.25.3)', while this compiler is 'Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4)'). Please select a toolchain which matches the SDK.
    3 | // swift-module-flags: -target arm64e-apple-macos15.1 -target-variant arm64e-apple-ios18.1-macabi -enable-objc-interop -autolink-force-load -enable-library-evolution -module-link-name swiftFoundation -swift-version 5 -enforce-exclusivity=unchecked -O -library-level api -enable-upcoming-feature InferSendableFromCaptures -enable-bare-slash-regex -user-module-version 3107 -module-name Foundation -package-name "\"FoundationPreview\""
    4 | import Combine
    5 | import CoreFoundation
      |        `- error: failed to build module 'CoreFoundation'; this SDK is not supported by the compiler (the SDK is built with 'Apple Swift version 6.0 effective-5.10 (swiftlang-6.0.0.7.43 clang-1600.0.25.3)', while this compiler is 'Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4)'). Please select a toolchain which matches the SDK.
    6 | import Darwin
    7 | import Dispatch

/Library/Developer/CommandLineTools/usr/include/swift/module.modulemap: 0:
/Library/Developer/CommandLineTools/usr/include/swift/bridging.modulemap: 0:
/opt/homebrew/Library/Homebrew/cask/utils/quarantine.swift:3:8: error: failed to build module 'Foundation'; this SDK is not supported by the compiler (the SDK is built with 'Apple Swift version 6.0 effective-5.10 (swiftlang-6.0.0.7.43 clang-1600.0.25.3)', while this compiler is 'Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4)'). Please select a toolchain which matches the SDK.
 1 | #!/usr/bin/swift
 2 | 
 3 | import Foundation
   |        `- error: failed to build module 'Foundation'; this SDK is not supported by the compiler (the SDK is built with 'Apple Swift version 6.0 effective-5.10 (swiftlang-6.0.0.7.43 clang-1600.0.25.3)', while this compiler is 'Apple Swift version 6.0.2 effective-5.10 (swiftlang-6.0.2.1.2 clang-1600.0.26.4)'). Please select a toolchain which matches the SDK.
 4 | 
 5 | struct SwiftErr: TextOutputStream {

In therion, compiler returns

    dyld[12142]: Library not loaded: /opt/homebrew/opt/fmt/lib/libfmt.10.dylib
    Referenced from: <6B13F9E5-D6F6-3FC0-AF93-60353A213E5F> /opt/homebrew/Cellar/therion/6.1.8_3/bin/therion
    Reason: tried: '/opt/homebrew/opt/fmt/lib/libfmt.10.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/opt/fmt/lib/libfmt.10.dylib' (no such file), '/opt/homebrew/opt/fmt/lib/libfmt.10.dylib' (no such file), '/usr/local/lib/libfmt.10.dylib' (no such file), '/usr/lib/libfmt.10.dylib' (no such file, not in dyld cache), '/opt/homebrew/Cellar/fmt/11.0.2/lib/libfmt.10.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/Cellar/fmt/11.0.2/lib/libfmt.10.dylib' (no such file), '/opt/homebrew/Cellar/fmt/11.0.2/lib/libfmt.10.dylib' (no such file), '/usr/local/lib/libfmt.10.dylib' (no such file), '/usr/lib/libfmt.10.dylib' (no such file, not in dyld cache)

It's a version problem with lib fmt. Latest version of xcode use fmt/11.0.2 or in therion project it's the use fmt/10.0.0

sbassetto commented 1 week ago

Hello, I have also an issue when I follow : https://github.com/ladislavb/homebrew-therion

That's the copy paste of my Terminal:

brew install therion ==> Fetching ladislavb/therion/therion ==> Downloading https://github.com/therion/therion/archive/v6.1.8.tar.gz Already downloaded: /Users/samuel/Library/Caches/Homebrew/downloads/e5c734c81d506eaa427d38ae086bf10132e7ded83cb01d2a85b8a9ab98c1f677--therion-6.1.8.tar.gz ==> Installing therion from ladislavb/therion ==> cmake .. ==> make install Last 15 lines from /Users/samuel/Library/Logs/Homebrew/therion/02.make: ^ /usr/local/include/fmt/base.h:1647:10: note: in instantiation of function template specialization 'fmt::detail::value::value' requested here return {arg_mapper().map(val)}; ^ /tmp/therion-20241117-89726-plzj5a/therion-6.1.8/thepsparse.cxx:143:17: note: in instantiation of function template specialization 'fmt::format' requested here s << fmt::format("{}", thdouble(this->a,prec_col)) << " g"; ^ /tmp/therion-20241117-89726-plzj5a/therion-6.1.8/thdouble.h:37:10: note: candidate function template not viable: 'this' argument has type 'const fmt::formatter', but method is not marked const auto format(const thdouble& p, FormatContext& ctx) { ^ 1 error generated. make[2]: [CMakeFiles/therion-common.dir/thepsparse.cxx.o] Error 1 make[2]: Waiting for unfinished jobs.... make[1]: [CMakeFiles/therion-common.dir/all] Error 2 make: [all] Error 2

Dehautenbas commented 1 week ago

@sbassetto Try with brew install --HEAD therion

sbassetto commented 1 week ago

@Dehautenbas : Thk. Here is the message:

" samsam:~ samuel$ brew install --HEAD therion ==> Downloading https://formulae.brew.sh/api/formula.jws.json ############################################################################################################################ 100.0% ==> Downloading https://formulae.brew.sh/api/cask.jws.json ############################################################################################################################ 100.0% ==> Fetching ladislavb/therion/therion ==> Cloning https://github.com/therion/therion.git Cloning into '/Users/samuel/Library/Caches/Homebrew/therion--git'... ==> Checking out branch master Already on 'master' Your branch is up to date with 'origin/master'. ==> Installing therion from ladislavb/therion ==> cmake .. Last 15 lines from /Users/samuel/Library/Logs/Homebrew/therion/01.cmake: of the following names:

Catch2Config.cmake
catch2-config.cmake

Add the installation prefix of "Catch2" to CMAKE_PREFIX_PATH or set "Catch2_DIR" to a directory containing one of the above files. If "Catch2" provides a separate development package or SDK, be sure it has been installed. Call Stack (most recent call first): cmake/Dependencies.cmake:15 (include) CMakeLists.txt:18 (include)

-- Configuring incomplete, errors occurred!

If reporting this issue please do so at (not Homebrew/brew or Homebrew/homebrew-core): https://github.com/ladislavb/homebrew-therion/issues

These open issues may also help: brew install therion on macOS Ventura 13.7 https://github.com/ladislavb/homebrew-therion/issues/15 therion's formula was built from an unstable upstream --HEAD. This build failure is expected behaviour. Do not create issues about this on Homebrew's GitHub repositories. Any opened issues will be immediately closed without response. Do not ask for help from Homebrew or its maintainers on social media. You may ask for help in Homebrew's discussions but are unlikely to receive a response. Try to figure out the problem yourself and submit a fix as a pull request. We will review it but may or may not accept it. samsam:~ samuel$

"

My MacOS is 14.6.1