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

[package] qt/5.15.8: Qt webengine link error: unknown option: -rpath-link=... #16639

Closed
nmgwddj opened this issue Mar 21, 2023 · 1 comment · Fixed by #24826
Closed

[package] qt/5.15.8: Qt webengine link error: unknown option: -rpath-link=... #16639

nmgwddj opened this issue Mar 21, 2023 · 1 comment · Fixed by #24826
Labels
bug Something isn't working

Comments

@nmgwddj
Copy link
Contributor

nmgwddj commented Mar 21, 2023

Description

Build Qt with WebEngine under M1.

Package and Environment Details

  • Package Name/Version: qt/5.15.8
  • Operating System+version: Macos 13.2.1
  • Compiler+version: Apple clang 14.0
  • Conan version: conan 1.59.0
  • Python version: Python 3.7.x

Conan profile

Configuration for profile default:

[settings]
os=Macos
os.version=10.14
os_build=Macos
arch=armv8
arch_build=armv8
compiler=apple-clang
compiler.version=14.0
compiler.libcxx=libc++
compiler.cppstd=14
build_type=Release
[options]
[conf]
[build_requires]
[env]
OBJCFLAGS=-Wno-error=deprecated-declarations -fvisibility=hidden -fvisibility-inlines-hidden

Steps to reproduce

add new patch files to qt 5.15.8 patchs folder:

Patch1: qt/qtwebengine-chromium@019a6b9
Patch2: qt/qtwebengine-chromium@2082566
Patch3: qt/qtwebengine-chromium@3769341
Patch4: qt/qtwebengine-chromium@08b4e14

These fixes can ensure smooth compilation of qt 5.15.8 webengine. Than add new patch to conandata.yml

  - base_path: qt5/qtwebengine/src/3rdparty
    patch_file: patches/fix-arm64-skia-build-for-macos.patch
  - base_path: qt5/qtwebengine/src/3rdparty
    patch_file: patches/fix-building-with-xcode-14.1.patch
  - base_path: qt5/qtwebengine/src/3rdparty
    patch_file: patches/fix-clang-set-but-unused-variable-warning.patch
  - base_path: qt5/qtwebengine/src/3rdparty
    patch_file: patches/on-arm64-hosts-set-host_cpu-to-arm64-not-arm.patch

In the receipt/qt/5.x.x, execute following command:

conan create . qt/5.15.8 \
    -s os=Macos \
    -s arch=armv8 \
    -s compiler.cppstd=14 \
    -s build_type=Release \
    -o shared=True \
    -o qtdeclarative=True \
    -o qtquickcontrols2=True \
    -o qtmultimedia=True \
    -o qtwebengine=True \
    -o qtwebchannel=True \
    -o qtlocation=True \
    -o with_glib=False \
    -o with_harfbuzz=False \
    -o with_mysql=False \
    -o with_odbc=False \
    -o with_libpng=False \
    -o with_libjpeg=False \
    -o with_zstd=False \
    -o with_sqlite3=False \
    -o with_pq=False \
    --build missing

Logs

Click to expand log
( test -e Makefile.core_module || /Users/jj.deng/.conan/data/qt/5.15.8/yunxin/testing/build/2082593611bb78ec14f832cc3fd6693a4928efb4/build_folder/qtbase/bin/qmake -o Makefile.core_module /Users/jj.deng/.conan/data/qt/5.15.8/yunxin/testing/source/qt5/qtwebengine/src/core/core_module.pro ) && /Applications/Xcode.app/Contents/Developer/usr/bin/make -f Makefile.core_module 
rm -f libQt5WebEngineCore.5.15.8.dylib libQt5WebEngineCore.dylib libQt5WebEngineCore.5.dylib libQt5WebEngineCore.5.15.dylib
linking ../../lib/libQt5WebEngineCore.5.15.8.dylib
ld: unknown option: -rpath-link=/Users/jj.deng/.conan/data/bison/3.8.2/_/_/package/cbf4bc05cf8df52851d247a8a769e95a51291273/lib:/Users/jj.deng/.conan/data/flex/2.6.4/_/_/package/cbf4bc05cf8df52851d247a8a769e95a51291273/lib:/Users/jj.deng/.conan/data/openssl/1.1.1s/_/_/package/7b662839afd0a7a401293ce9e5ea091db367396f/lib:/Users/jj.deng/.conan/data/pcre2/10.40/_/_/package/fe556812556c758b6f39e90b94ced02dd3577706/lib:/Users/jj.deng/.conan/data/double-conversion/3.2.1/_/_/package/00aab91b699f8fec5bdc241496dbec05601bab2a/lib:/Users/jj.deng/.conan/data/freetype/2.12.1/_/_/package/5ae21fa074b9db856c8c723f18b0d09c044b051f/lib:/Users/jj.deng/.conan/data/openal/1.22.2/_/_/package/c749c24ba1ba6e9ccd501ad1757b354f15830a93/lib:/Users/jj.deng/.conan/data/md4c/0.4.8/_/_/package/22ccab02d6bede15e533ffdb38622efe88801685/lib:/Users/jj.deng/.conan/data/bzip2/1.0.8/_/_/package/c688d4a40d1493faf28a33f6969259a7de3077ed/lib:/Users/jj.deng/.conan/data/libpng/1.6.39/_/_/package/35f00a21e9f9fcf2ed6190e4ae782448e1a31de0/lib:/Users/jj.deng/.conan/data/brotli/1.0.9/_/_/package/39d249a0504a14bae3e4e2382c50b7ef4321f6ae/lib:/Users/jj.deng/.conan/data/zlib/1.2.13/_/_/package/7b662839afd0a7a401293ce9e5ea091db367396f/lib
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[4]: *** [../../lib/libQt5WebEngineCore.5.15.8.dylib] Error 1
make[3]: *** [sub-core_module-pro-make_first] Error 2
make[2]: *** [sub-core-make_first] Error 2
make[1]: *** [sub-src-make_first] Error 2
make: *** [module-qtwebengine-make_first] Error 2
qt/5.15.8@yunxin/testing: 
qt/5.15.8@yunxin/testing: ERROR: Package '2082593611bb78ec14f832cc3fd6693a4928efb4' build failed
qt/5.15.8@yunxin/testing: WARN: Build folder /Users/jj.deng/.conan/data/qt/5.15.8/yunxin/testing/build/2082593611bb78ec14f832cc3fd6693a4928efb4
ERROR: qt/5.15.8@yunxin/testing: Error in build() method, line 794
        self.run(self._make_program(), run_environment=True)
        ConanException: Error 2 while executing DYLD_LIBRARY_PATH="/Users/jj.deng/.conan/data/bison/3.8.2/_/_/package/cbf4bc05cf8df52851d247a8a769e95a51291273/lib:/Users/jj.deng/.conan/data/flex/2.6.4/_/_/package/cbf4bc05cf8df52851d247a8a769e95a51291273/lib:/Users/jj.deng/.conan/data/openssl/1.1.1s/_/_/package/7b662839afd0a7a401293ce9e5ea091db367396f/lib:/Users/jj.deng/.conan/data/pcre2/10.40/_/_/package/fe556812556c758b6f39e90b94ced02dd3577706/lib:/Users/jj.deng/.conan/data/double-conversion/3.2.1/_/_/package/00aab91b699f8fec5bdc241496dbec05601bab2a/lib:/Users/jj.deng/.conan/data/freetype/2.12.1/_/_/package/5ae21fa074b9db856c8c723f18b0d09c044b051f/lib:/Users/jj.deng/.conan/data/openal/1.22.2/_/_/package/c749c24ba1ba6e9ccd501ad1757b354f15830a93/lib:/Users/jj.deng/.conan/data/md4c/0.4.8/_/_/package/22ccab02d6bede15e533ffdb38622efe88801685/lib:/Users/jj.deng/.conan/data/bzip2/1.0.8/_/_/package/c688d4a40d1493faf28a33f6969259a7de3077ed/lib:/Users/jj.deng/.conan/data/libpng/1.6.39/_/_/package/35f00a21e9f9fcf2ed6190e4ae782448e1a31de0/lib:/Users/jj.deng/.conan/data/brotli/1.0.9/_/_/package/39d249a0504a14bae3e4e2382c50b7ef4321f6ae/lib:/Users/jj.deng/.conan/data/zlib/1.2.13/_/_/package/7b662839afd0a7a401293ce9e5ea091db367396f/lib" DYLD_FRAMEWORK_PATH="" make

I think the following recipe code caused the problem:

if not is_msvc(self):
   args.append("QMAKE_RPATHLINKDIR+=\"%s\"" % ":".join(l for package in self.deps_cpp_info.deps for l in self.deps_cpp_info[package].lib_paths))
@jcar87
Copy link
Contributor

jcar87 commented Aug 6, 2024

Fixed in #24826

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants