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

LLVMPolly.so missing from package LLVM #5829

Closed
0syf3r opened this issue Sep 19, 2020 · 0 comments
Closed

LLVMPolly.so missing from package LLVM #5829

0syf3r opened this issue Sep 19, 2020 · 0 comments

Comments

@0syf3r
Copy link

0syf3r commented Sep 19, 2020

Problem description
LLVMPolly.so is missing from the package llvm, so some packages like Zig fail to link with error:

[ 97%] Linking CXX executable zig0
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_cc1_main.cpp.o): in function `cc1_main(llvm::ArrayRef<char const*>, char const*, void*)':
/data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1_main.cpp:187: undefined reference to `clang::CompilerInstance::CompilerInstance(std::__ndk1::shared_ptr<clang::PCHContainerOperations>, clang::InMemoryModuleCache*)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1_main.cpp:188: undefined reference to `clang::DiagnosticIDs::DiagnosticIDs()'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1_main.cpp:205: undefined reference to `clang::DiagnosticsEngine::DiagnosticsEngine(llvm::IntrusiveRefCntPtr<clang::DiagnosticIDs>, llvm::IntrusiveRefCntPtr<clang::DiagnosticOptions>, clang::DiagnosticConsumer*, bool)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1_main.cpp:207: undefined reference to `clang::CompilerInvocation::CreateFromArgs(clang::CompilerInvocation&, llvm::ArrayRef<char const*>, clang::DiagnosticsEngine&)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1_main.cpp:221: undefined reference to `clang::CompilerInvocation::GetResourcesPath(char const*, void*)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1_main.cpp:224: undefined reference to `clang::CompilerInstance::createDiagnostics(clang::DiagnosticConsumer*, bool)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1_main.cpp:233: undefined reference to `clang::TextDiagnosticBuffer::FlushDiagnostics(clang::DiagnosticsEngine&) const'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1_main.cpp:240: undefined reference to `clang::ExecuteCompilerInvocation(clang::CompilerInstance*)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1_main.cpp:252: undefined reference to `clang::CompilerInstance::createOutputFile(llvm::StringRef, bool, bool, llvm::StringRef, llvm::StringRef, bool, bool)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1_main.cpp:277: undefined reference to `clang::DiagnosticsEngine::~DiagnosticsEngine()'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_cc1_main.cpp.o): in function `TextDiagnosticBuffer':
/data/data/com.termux/files/usr/include/clang/Frontend/TextDiagnosticBuffer.h:(.text._ZN5clang20TextDiagnosticBufferC2Ev[_ZN5clang20TextDiagnosticBufferC2Ev]+0xc): undefined reference to `vtable for clang::TextDiagnosticBuffer'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/usr/include/clang/Frontend/TextDiagnosticBuffer.h:(.text._ZN5clang20TextDiagnosticBufferC2Ev[_ZN5clang20TextDiagnosticBufferC2Ev]+0x10): undefined reference to `vtable for clang::TextDiagnosticBuffer'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_cc1_main.cpp.o): in function `__compressed_pair_elem':
/data/data/com.termux/files/usr/include/c++/v1/memory:2139: undefined reference to `clang::PCHContainerOperations::PCHContainerOperations()'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_cc1_main.cpp.o): in function `ObjectFilePCHContainerWriter':
/data/data/com.termux/files/usr/include/clang/CodeGen/ObjectFilePCHContainerOperations.h:(.text._ZN5clang28ObjectFilePCHContainerWriterC2Ev[_ZN5clang28ObjectFilePCHContainerWriterC2Ev]+0xc): undefined reference to `vtable for clang::ObjectFilePCHContainerWriter'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/usr/include/clang/CodeGen/ObjectFilePCHContainerOperations.h:(.text._ZN5clang28ObjectFilePCHContainerWriterC2Ev[_ZN5clang28ObjectFilePCHContainerWriterC2Ev]+0x10): undefined reference to `vtable for clang::ObjectFilePCHContainerWriter'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_cc1_main.cpp.o): in function `ObjectFilePCHContainerReader':
/data/data/com.termux/files/usr/include/clang/CodeGen/ObjectFilePCHContainerOperations.h:(.text._ZN5clang28ObjectFilePCHContainerReaderC2Ev[_ZN5clang28ObjectFilePCHContainerReaderC2Ev]+0xc): undefined reference to `vtable for clang::ObjectFilePCHContainerReader'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/usr/include/clang/CodeGen/ObjectFilePCHContainerOperations.h:(.text._ZN5clang28ObjectFilePCHContainerReaderC2Ev[_ZN5clang28ObjectFilePCHContainerReaderC2Ev]+0x10): undefined reference to `vtable for clang::ObjectFilePCHContainerReader'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_driver.cpp.o): in function `ZigClang_main':
/data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:338: undefined reference to `clang::noteBottomOfStack()'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:347: undefined reference to `clang::driver::ToolChain::getTargetAndModeFromProgramName(llvm::StringRef)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:458: undefined reference to `clang::TextDiagnosticPrinter::TextDiagnosticPrinter(llvm::raw_ostream&, clang::DiagnosticOptions*, bool)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:461: undefined reference to `clang::DiagnosticIDs::DiagnosticIDs()'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:463: undefined reference to `clang::DiagnosticsEngine::DiagnosticsEngine(llvm::IntrusiveRefCntPtr<clang::DiagnosticIDs>, llvm::IntrusiveRefCntPtr<clang::DiagnosticOptions>, clang::DiagnosticConsumer*, bool)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:467: undefined reference to `clang::serialized_diags::create(llvm::StringRef, clang::DiagnosticOptions*, bool)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:469: undefined reference to `clang::DiagnosticsEngine::setClient(clang::DiagnosticConsumer*, bool)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:473: undefined reference to `clang::ProcessWarningOptions(clang::DiagnosticsEngine&, clang::DiagnosticOptions const&, bool)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:475: undefined reference to `clang::driver::Driver::Driver(llvm::StringRef, llvm::StringRef, clang::DiagnosticsEngine&, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:489: undefined reference to `clang::driver::Driver::BuildCompilation(llvm::ArrayRef<char const*>)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:493: undefined reference to `clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::__ndk1::pair<int, clang::driver::Command const*> >&)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:522: undefined reference to `clang::driver::Driver::generateCompilationDiagnostics(clang::driver::Compilation&, clang::driver::Command const&, llvm::StringRef, clang::driver::Driver::CompilationDiagnosticReport*)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:546: undefined reference to `clang::DiagnosticsEngine::~DiagnosticsEngine()'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_driver.cpp.o): in function `CreateAndPopulateDiagOpts(llvm::ArrayRef<char const*>, bool&)':
/data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:275: undefined reference to `clang::driver::getDriverOptTable()'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_driver.cpp:280: undefined reference to `clang::ParseDiagnosticArgs(clang::DiagnosticOptions&, llvm::opt::ArgList&, clang::DiagnosticsEngine*, bool, bool)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_driver.cpp.o): in function `ChainedDiagnosticConsumer':
/data/data/com.termux/files/usr/include/clang/Frontend/ChainedDiagnosticConsumer.h:(.text._ZN5clang25ChainedDiagnosticConsumerC2ENSt6__ndk110unique_ptrINS_18DiagnosticConsumerENS1_14default_deleteIS3_EEEES6_[_ZN5clang25ChainedDiagnosticConsumerC2ENSt6__ndk110unique_ptrINS_18DiagnosticConsumerENS1_14default_deleteIS3_EEEES6_]+0xc): undefined reference to `vtable for clang::ChainedDiagnosticConsumer'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/usr/include/clang/Frontend/ChainedDiagnosticConsumer.h:(.text._ZN5clang25ChainedDiagnosticConsumerC2ENSt6__ndk110unique_ptrINS_18DiagnosticConsumerENS1_14default_deleteIS3_EEEES6_[_ZN5clang25ChainedDiagnosticConsumerC2ENSt6__ndk110unique_ptrINS_18DiagnosticConsumerENS1_14default_deleteIS3_EEEES6_]+0x10): undefined reference to `vtable for clang::ChainedDiagnosticConsumer'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_driver.cpp.o): in function `DiagnosticConsumer':
/data/data/com.termux/files/usr/include/clang/Basic/Diagnostic.h:(.text._ZN5clang18DiagnosticConsumerC2Ev[_ZN5clang18DiagnosticConsumerC2Ev]+0x4): undefined reference to `vtable for clang::DiagnosticConsumer'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/usr/include/clang/Basic/Diagnostic.h:(.text._ZN5clang18DiagnosticConsumerC2Ev[_ZN5clang18DiagnosticConsumerC2Ev]+0x8): undefined reference to `vtable for clang::DiagnosticConsumer'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_driver.cpp.o): in function `clang::DiagnosticBuilder::Emit()':
/data/data/com.termux/files/usr/include/clang/Basic/Diagnostic.h:1112: undefined reference to `clang::DiagnosticsEngine::EmitCurrentDiagnostic(bool)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_driver.cpp.o): in function `llvm::RefCountedBase<clang::DiagnosticIDs>::Release() const':
/data/data/com.termux/files/usr/include/llvm/ADT/IntrusiveRefCntPtr.h:82: undefined reference to `clang::DiagnosticIDs::~DiagnosticIDs()'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_driver.cpp.o): in function `std::__ndk1::default_delete<clang::driver::Compilation>::operator()(clang::driver::Compilation*) const':
/data/data/com.termux/files/usr/include/c++/v1/memory:2338: undefined reference to `clang::driver::Compilation::~Compilation()'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_cc1as_main.cpp.o): in function `cc1as_main(llvm::ArrayRef<char const*>, char const*, void*)':
/data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1as_main.cpp:563: undefined reference to `clang::TextDiagnosticPrinter::TextDiagnosticPrinter(llvm::raw_ostream&, clang::DiagnosticOptions*, bool)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1as_main.cpp:565: undefined reference to `clang::DiagnosticIDs::DiagnosticIDs()'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1as_main.cpp:566: undefined reference to `clang::DiagnosticsEngine::DiagnosticsEngine(llvm::IntrusiveRefCntPtr<clang::DiagnosticIDs>, llvm::IntrusiveRefCntPtr<clang::DiagnosticOptions>, clang::DiagnosticConsumer*, bool)'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1as_main.cpp:579: undefined reference to `clang::driver::getDriverOptTable()'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: /data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1as_main.cpp:617: undefined reference to `clang::DiagnosticsEngine::~DiagnosticsEngine()'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_cc1as_main.cpp.o): in function `(anonymous namespace)::AssemblerInvocation::CreateFromArgs((anonymous namespace)::AssemblerInvocation&, llvm::ArrayRef<char const*>, clang::DiagnosticsEngine&)':
/data/data/com.termux/files/home/zig-0.6.0+fbde15fdf/src/zig_clang_cc1as_main.cpp:180: undefined reference to `clang::driver::getDriverOptTable()'
/data/data/com.termux/files/usr/bin/aarch64-linux-android-ld: zig_cpp/libzig_cpp.a(zig_clang_cc1as_main.cpp.o): in function `clang::getLastArgIntValue(llvm::opt::ArgList const&, llvm::opt::OptSpecifier, int, clang::DiagnosticsEngine&, unsigned int)':
/data/data/com.termux/files/usr/include/clang/Driver/OptionUtils.h:40: undefined reference to `clang::getLastArgIntValue(llvm::opt::ArgList const&, llvm::opt::OptSpecifier, int, clang::DiagnosticsEngine*, unsigned int)'
clang-10: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [CMakeFiles/zig0.dir/build.make:132: zig0] Error 1
make[1]: *** [CMakeFiles/Makefile2:168: CMakeFiles/zig0.dir/all] Error 2
make: *** [Makefile:149: all] Error 2

*** Steps to Reproduce ***
git clone /~https://github.com/ziglang/zig/
cd zig<TAB>
Patch CMakeLists.txt with:

# This patch is a workaround for
# https://bugs.llvm.org/show_bug.cgi?id=44870 / /~https://github.com/llvm/llvm-project/issues/191
# It only applies to the apt.llvm.org packages.
patch <<'END_PATCH'
--- CMakeLists.txt
+++ CMakeLists.txt
@@ -369,6 +369,7 @@ target_link_libraries(zig_cpp LINK_PUBLIC
     ${CLANG_LIBRARIES}
     ${LLD_LIBRARIES}
     ${LLVM_LIBRARIES}
+    "-Wl,/usr/lib/llvm-10/lib/LLVMPolly.so"
 )

mkdir build && cd build
cmake .. && make
Expected behavior
Zig builds without error.
Additional information
llvm/llvm-dev should include /usr/lib/llvm-10/lib/LLVMPolly.so but it does not.

Packages CPU architecture:
aarch64
Subscribed repositories:
# sources.list
deb https://dl.bintray.com/termux/termux-packages-24/ stable main
# x11-repo (sources.list.d/x11.list)
deb https://dl.bintray.com/xeffyr/x11-packages x11 main
# game-repo (sources.list.d/game.list)
deb https://dl.bintray.com/grimler/game-packages-24 games stable
# science-repo (sources.list.d/science.list)
deb https://dl.bintray.com/grimler/science-packages-24 science stable
Updatable packages:
All packages up to date
Android version:
9
Kernel build information:
Linux localhost 4.4.111-16371805 #1 SMP PREEMPT Thu Jul 4 15:56:12 KST 2019 aarch64 Android
Device manufacturer:
samsung
Device model:
SM-A530F
Grimler91 added a commit that referenced this issue Sep 22, 2020
Grimler91 added a commit that referenced this issue Sep 22, 2020
Grimler91 added a commit that referenced this issue Sep 22, 2020
Grimler91 added a commit that referenced this issue Sep 23, 2020
Harshiv-Patel pushed a commit to Harshiv-Patel/termux-packages that referenced this issue May 13, 2021
@ghost ghost locked and limited conversation to collaborators Oct 9, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants