Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

openfst: also permit building on Macos #23592

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

zarvox
Copy link

@zarvox zarvox commented Apr 17, 2024

Specify library name and version: openfst/1.8.2

Nutrimatic makes use of openfst as built by conan; I wanted to build it for macOS but this recipe errored out because its validate rejects running on anything besides "Linux" and "FreeBSD". Empirically, openfst does seem to build and work on macOS successfully with conan 2.1.0 with this patch applied, so this restriction can likely be loosened.


I've not tried the local configuration with the conan-center hook because I'm using conan 2, and the hooks repository says

The Conan Center hook is NOT supported by Conan v2 yet. Do not try to run this file with Conan v2.

@conan-center-bot

This comment has been minimized.

Copy link
Member

@RubenRBS RubenRBS left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi! Locally I'm having problems building this with any of enable_compact_fsts, enable_ngram_fsts enable_const_fsts set to true. Is this expected? Or should it be validated out?

@zarvox
Copy link
Author

zarvox commented Apr 17, 2024

Interesting -- I seem to have no issues building locally even when I enable all the non-default-enabled flags:

conan create all/conanfile.py --name openfst --version 1.8.2 -o enable_compact_fsts=True -o enable_compress=True -o enable_const_fsts=True -o enable_far=True -o enable_linear_fsts=True -o enable_lookahead_fsts=True -o enable_mpdt=True -o enable_ngram_fsts=True -o enable_pdt=True -o enable_special=True
... many lines of build logs, then eventually...
======== Testing the package: Executing test ========
openfst/1.8.2 (test package): Running test()
openfst/1.8.2 (test package): RUN: ./test_package
0

This is on a M3 Max MacBook Pro with Sonama 14.4.1 and conan version:

(venv) (13:30:26) zarvox@dragon ~/git/conan-center-index/recipes/openfst % conan version
version: 2.2.3
python
  version: 3.9.6
  sys_version: 3.9.6 (default, Dec  7 2023, 05:42:47) [Clang 15.0.0 (clang-1500.1.0.2.5)]

I'm not super familiar with conan overall (this is my first time using it!) so I might not be great at debugging this, but can you say more about what sort of failure you're observing/your build environment?

@RubenRBS
Copy link
Member

Thanks for double checking, let me get you some build logs later today! ❤️

@RubenRBS
Copy link
Member

RubenRBS commented Apr 18, 2024

The compilation logs are extremely verbose, the failing bit is in the test package though:

$ conan create . --version=1.8.2 -b=missing -o="*:shared=True" -o="enable_lookahead_fsts=True" -o="enable_const_fsts=True" -o="enable_compact_fsts=True"
======== Launching test_package ========

======== Computing dependency graph ========
Graph root
    openfst/1.8.2 (test package): /Users/ruben/coding/conan-center-index/recipes/openfst/all/test_package/conanfile.py
Requirements
    openfst/1.8.2#c37f9a46fb4b51cde1633573eedd6349 - Cache

======== Computing necessary packages ========
openfst/1.8.2: WARN: openfst requires c++17, but this compiler is unknown to this recipe. Assuming your compiler supports c++17.
Requirements
    openfst/1.8.2#c37f9a46fb4b51cde1633573eedd6349:1599fe64f8424ef4bf832a4bb93e03a08a22e22f#75b873ff49f19a9688800509e9a95de1 - Cache

======== Installing packages ========
openfst/1.8.2: Already installed! (1 of 1)
openfst/1.8.2: Appending PATH environment var: /Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/bin
WARN: deprecated: Usage of deprecated Conan 1.X features that will be removed in Conan 2.X:
WARN: deprecated:     'cpp_info.names' used in: openfst/1.8.2
WARN: deprecated:     'env_info' used in: openfst/1.8.2

======== Testing the package ========
Removing previously existing 'test_package' build folder: /Users/ruben/coding/conan-center-index/recipes/openfst/all/test_package/build/apple-clang-15-armv8-gnu17-release
openfst/1.8.2 (test package): Test package build: build/apple-clang-15-armv8-gnu17-release
openfst/1.8.2 (test package): Test package build folder: /Users/ruben/coding/conan-center-index/recipes/openfst/all/test_package/build/apple-clang-15-armv8-gnu17-release
openfst/1.8.2 (test package): Writing generators to /Users/ruben/coding/conan-center-index/recipes/openfst/all/test_package/build/apple-clang-15-armv8-gnu17-release/generators
openfst/1.8.2 (test package): Generator 'CMakeDeps' calling 'generate()'
openfst/1.8.2 (test package): CMakeDeps necessary find_package() and targets for your CMakeLists.txt
    find_package(OpenFst)
    target_link_libraries(... OpenFst::OpenFst)
openfst/1.8.2 (test package): Generator 'CMakeToolchain' calling 'generate()'
openfst/1.8.2 (test package): CMakeToolchain generated: conan_toolchain.cmake
openfst/1.8.2 (test package): CMakeToolchain generated: CMakePresets.json
openfst/1.8.2 (test package): CMakeToolchain generated: ../../../CMakeUserPresets.json
openfst/1.8.2 (test package): Generator 'VirtualRunEnv' calling 'generate()'
openfst/1.8.2 (test package): Generating aggregated env files
openfst/1.8.2 (test package): Generated aggregated env files: ['conanrun.sh', 'conanbuild.sh']

======== Testing the package: Building ========
openfst/1.8.2 (test package): Calling build()
openfst/1.8.2 (test package): Running CMake.configure()
openfst/1.8.2 (test package): RUN: cmake -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE="/Users/ruben/coding/conan-center-index/recipes/openfst/all/test_package/build/apple-clang-15-armv8-gnu17-release/generators/conan_toolchain.cmake" -DCMAKE_INSTALL_PREFIX="/Users/ruben/coding/conan-center-index/recipes/openfst/all/test_package" -DCMAKE_POLICY_DEFAULT_CMP0091="NEW" -DCMAKE_BUILD_TYPE="Release" "/Users/ruben/coding/conan-center-index/recipes/openfst/all/test_package"
-- Using Conan toolchain: /Users/ruben/coding/conan-center-index/recipes/openfst/all/test_package/build/apple-clang-15-armv8-gnu17-release/generators/conan_toolchain.cmake
-- Conan toolchain: C++ Standard 17 with extensions ON
-- The CXX compiler identification is AppleClang 15.0.0.15000309
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Conan: Target declared 'OpenFst::OpenFst'
-- Configuring done (0.3s)
-- Generating done (0.0s)
-- Build files have been written to: /Users/ruben/coding/conan-center-index/recipes/openfst/all/test_package/build/apple-clang-15-armv8-gnu17-release

openfst/1.8.2 (test package): Running CMake.build()
openfst/1.8.2 (test package): RUN: cmake --build "/Users/ruben/coding/conan-center-index/recipes/openfst/all/test_package/build/apple-clang-15-armv8-gnu17-release" -- -j12
[ 50%] Building CXX object CMakeFiles/test_package.dir/test_package.cpp.o
[100%] Linking CXX executable test_package
ld: multiple errors: unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact8_acceptor-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact8_string-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact8_unweighted_acceptor-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact8_unweighted-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact16_acceptor-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact8_weighted_string-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact16_unweighted_acceptor-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact16_weighted_string-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact16_unweighted-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact64_string-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact64_unweighted_acceptor-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact64_unweighted-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libconst8-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libconst64-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libconst16-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact64_weighted_string-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact64_acceptor-fst.so'; unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/ruben/.conan2/p/b/openf0a8e0f67aeefb/p/lib/libcompact16_string-fst.so'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [test_package] Error 1
make[1]: *** [CMakeFiles/test_package.dir/all] Error 2
make: *** [all] Error 2

ERROR: openfst/1.8.2 (test package): Error in build() method, line 21
	cmake.build()
	ConanException: Error 2 while executing

@zarvox
Copy link
Author

zarvox commented Apr 18, 2024

Aha! I was building without -o shared=True; with it (and the other options) I am able to reproduce your build failure locally.

I might need some more time to dig into exactly what's going awry and if there's a way to make it work; if I get stuck, would it be okay for us to only allow shared=False on macOS with an additional check in validate()?

@zarvox
Copy link
Author

zarvox commented Apr 19, 2024

Okay, so the final linker error we get is something like (whitespace/newlines added for readability):

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ \
  -stdlib=libc++ \
  -O3 -DNDEBUG -arch arm64 \
  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk \
  -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/test_package.dir/test_package.cpp.o \
  -o test_package \  
  -L/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib  -Wl,-rpath,/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libfst.dylib \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libfstcompact.dylib \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libfstconst.dylib \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libfstfar.dylib \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libfstlookahead.dylib \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libfstscript.dylib \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact8_acceptor-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact8_string-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact8_unweighted_acceptor-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact8_unweighted-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact8_weighted_string-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact16_acceptor-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact16_string-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact16_unweighted_acceptor-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact16_unweighted-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact16_weighted_string-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact64_acceptor-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact64_string-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact64_unweighted_acceptor-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact64_unweighted-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact64_weighted_string-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libconst8-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libconst16-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libconst64-fst.so \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libfstfarscript.dylib \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libfstmpdtscript.dylib \
  /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libfstpdtscript.dylib \
  -lpthread -ldl -lm


ld: multiple errors:
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact8_acceptor-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact8_string-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact8_unweighted_acceptor-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact16_acceptor-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact16_unweighted_acceptor-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact8_unweighted-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact16_unweighted-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact16_weighted_string-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact16_string-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact64_unweighted-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact64_acceptor-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact64_weighted_string-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact8_weighted_string-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libconst64-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact64_unweighted_acceptor-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact64_string-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libconst8-fst.so'
unsupported mach-o filetype (only MH_OBJECT and MH_DYLIB can be linked) in '/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libconst16-fst.so'

Looking in more details at some of those problematic .so files:

(13:24:26) zarvox@dragon ~/git/conan-center-index/recipes/openfst/all % otool -h /Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact64_string-fst.so
/Users/zarvox/.conan2/p/b/openf728838a6f6f3c/p/lib/libcompact64_string-fst.so:
Mach header
      magic  cputype cpusubtype  caps    filetype ncmds sizeofcmds      flags
 0xfeedfacf 16777228          0  0x00           8    16       1672 0x00018085

we find that the filetype is 8, which is MH_BUNDLE.

It's weird to me that we see both things like libcompact64_string-fst.so and libfstcompact.dylib in the linker command-line; I'm inclined to believe that perhaps the .sos are not appropriate to be on the linker command line here. That appears to be resulting from:

if self.options.enable_compact_fsts:
self.cpp_info.libs.extend(self._get_compact_fsts_libs)
if self.options.enable_const_fsts:
self.cpp_info.libs.extend(self._get_const_fsts_libs)

I find if I comment those 4 lines out, I am able to build successfully with conan create . --version=1.8.2 -b=missing -o="*:shared=True" -o="enable_lookahead_fsts=True" -o="enable_const_fsts=True" -o="enable_compact_fsts=True" on macOS.

It's not clear to me why those four lines exist at all; based on the logic it seems like they would always be redundant with the lines at

if self.options.enable_compact_fsts:
self.cpp_info.libs.append("fstcompact")
if self.options.enable_const_fsts:
self.cpp_info.libs.append("fstconst")

@RubenRBS
Copy link
Member

would it be okay for us to only allow shared=False on macOS with an additional check in validate()?

Yes! That would would for now, thanks a lot for taking a look into it :)

@zarvox
Copy link
Author

zarvox commented Apr 20, 2024

For what it's worth, in the absence of any explanation to the contrary nor any comments I can find, I'm inclined to believe the lines at:

 if self.options.enable_compact_fsts: 
     self.cpp_info.libs.extend(self._get_compact_fsts_libs) 
 if self.options.enable_const_fsts: 
     self.cpp_info.libs.extend(self._get_const_fsts_libs) 

are either buggy or at least vestigial and should be removed. For example, when I try to build with all the flags enabled on x64 Linux with:

conan create all/conanfile.py --name openfst --version 1.8.2 -o shared=True -o enable_compact_fsts=True -o enable_compress=True -o enable_const_fsts=True -o enable_far=True -o enable_linear_fsts=True -o enable_lookahead_fsts=True -o enable_mpdt=True -o enable_ngram_fsts=True -o enable_pdt=True -o enable_special=True

then test_package fails to run as it has dynamic links to objects which don't exist (e.g. compact8_acceptor-fst.so). Removing those lines seems to resolve the issue.

Since this seems to improve things for both x64 Linux and arm64 macOS, I'm inclined to just amend the patch to remove this (and the now-unused helper property functions).

On macOS the files referenced have the wrong type (MH_BUNDLE vs
MH_OBJECT or MH_DYLIB) and so the linker fails.  On Linux, the
additional files referenced cause dynamic link errors when trying to
execute the test_package when building with -o shared=True and -o
enable_const_fsts=True because the dynamic linker cannot find them.

Neither failure mode seems to persist if we simply use only the full
named library artifacts, so in the absence of a comment explaining the
logic or any reference in the git history, I'm inclined to simply remove
the additional .so references.
@conan-center-bot

This comment has been minimized.

@conan-center-bot
Copy link
Collaborator

Conan v1 pipeline ✔️

All green in build 4 (677e5dc289f85d80c5d7fffd668a6c0b2167a0bb):

  • openfst/1.8.2:
    All packages built successfully! (All logs)

Conan v2 pipeline ❌

Note: Conan v2 builds are now mandatory. Please read our discussion about it.

The v2 pipeline failed. Please, review the errors and note this is required for pull requests to be merged. In case this recipe is still not ported to Conan 2.x, please, ping @conan-io/barbarians on the PR and we will help you.

See details:

Failure in build 4 (677e5dc289f85d80c5d7fffd668a6c0b2167a0bb):

  • openfst/1.8.2:
    CI failed to create some packages (All logs)

    Logs for packageID 55cbceb824270666707bbba9f3e02dad1ee7808f:
    [settings]
    arch=x86_64
    build_type=Release
    compiler=apple-clang
    compiler.cppstd=17
    compiler.libcxx=libc++
    compiler.version=13
    os=Macos
    [options]
    */*:shared=False
    
    [...]
    checking for otool64... no
    checking for -single_module linker flag... yes
    checking for -exported_symbols_list linker flag... yes
    checking for -force_load linker flag... yes
    checking for stdio.h... yes
    checking for stdlib.h... yes
    checking for string.h... yes
    checking for inttypes.h... yes
    checking for stdint.h... yes
    checking for strings.h... yes
    checking for sys/stat.h... yes
    checking for sys/types.h... yes
    checking for unistd.h... yes
    checking for dlfcn.h... yes
    checking for objdir... .libs
    checking if gcc supports -fno-rtti -fno-exceptions... yes
    checking for gcc option to produce PIC... -fno-common -DPIC
    checking if gcc PIC flag -fno-common -DPIC works... yes
    checking if gcc static flag -static works... no
    checking if gcc supports -c -o file.o... yes
    checking if gcc supports -c -o file.o... (cached) yes
    checking whether the gcc linker (/Applications/conan/xcode/13.0/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
    checking dynamic linker characteristics... darwin dyld
    checking how to hardcode library paths into programs... immediate
    checking whether stripping libraries is possible... yes
    checking if libtool supports shared libraries... yes
    checking whether to build shared libraries... no
    checking whether to build static libraries... yes
    checking how to run the C++ preprocessor... g++ -std=c++17 -fno-exceptions -Wno-deprecated-declarations -E
    checking for ld used by g++ -std=c++17 -fno-exceptions -Wno-deprecated-declarations... /Applications/conan/xcode/13.0/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
    checking if the linker (/Applications/conan/xcode/13.0/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no
    checking whether the g++ -std=c++17 -fno-exceptions -Wno-deprecated-declarations linker (/Applications/conan/xcode/13.0/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
    checking for g++ -std=c++17 -fno-exceptions -Wno-deprecated-declarations option to produce PIC... -fno-common -DPIC
    checking if g++ -std=c++17 -fno-exceptions -Wno-deprecated-declarations PIC flag -fno-common -DPIC works... yes
    checking if g++ -std=c++17 -fno-exceptions -Wno-deprecated-declarations static flag -static works... no
    checking if g++ -std=c++17 -fno-exceptions -Wno-deprecated-declarations supports -c -o file.o... yes
    checking if g++ -std=c++17 -fno-exceptions -Wno-deprecated-declarations supports -c -o file.o... (cached) yes
    checking whether the g++ -std=c++17 -fno-exceptions -Wno-deprecated-declarations linker (/Applications/conan/xcode/13.0/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
    checking dynamic linker characteristics... darwin dyld
    checking how to hardcode library paths into programs... immediate
    configure: error: in `/Users/jenkins/workspace/prod-v2/bsr/27091/acdfa/p/b/openf37d07633ec9b8/b/build-release':
    configure: error: cannot run test program while cross compiling
    See `config.log' for more details
    
    openfst/1.8.2: ERROR: 
    Package '55cbceb824270666707bbba9f3e02dad1ee7808f' build failed
    openfst/1.8.2: WARN: Build folder /Users/jenkins/workspace/prod-v2/bsr/27091/acdfa/p/b/openf37d07633ec9b8/b/build-release
    ERROR: openfst/1.8.2: Error in build() method, line 140
    	autotools.configure()
    	ConanException: Error 1 while executing
    

Note: To save resources, CI tries to finish as soon as an error is found. For this reason you might find that not all the references have been launched or not all the configurations for a given reference. Also, take into account that we cannot guarantee the order of execution as it depends on CI workload and workers availability.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants