我正在安装一个centos7码头容器中的颤振。它在抱怨有些可执行的文件不能执行。有一个解决方案,但不是针对centos7的:
[!] Flutter (Channel @{u}, v0.0.0-unknown, on Linux, locale en_US)
✗ Downloaded executables cannot execute on host.
See https://github.com/flutter/flutter/issues/6207 for more information
On Debian/Ubuntu/Mint: sudo apt-get install lib32stdc++6
On Fedora: dnf install libstdc++.i686
On Arch: pacman -S lib32-libstdc++5在https://pkgs.org上搜索lib32stdc++6、libstdc++.i686、lib32-libstdc++5并没有显示centos7的包。github的问题根本没有提到中心。
我需要在我的centos7码头容器中安装哪个centos7包才能顺利运行?
这个问题似乎与Flutter version Unknown有关
我已经安装了最新的git版本,正如所描述的here。不过,我还是会犯同样的错误。
发布于 2018-08-30 14:34:20
最终修正的是,这句话隐藏在一个Github的问题中:
https://github.com/flutter/flutter/issues/6207#issuecomment-373100050
cd flutter/bin/cache/artifacts/engine
cp android-arm64-profile/linux-x64/gen_snapshot android-arm-profile/linux-x64/gen_snapshot
cp android-arm64-release/linux-x64/gen_snapshot android-arm-release/linux-x64/gen_snapshot2018年10月更新:我们已经放弃了这个修复程序,因为这个应用程序是这样在设备上崩溃的。解决方案是在centos7上构建颤振应用程序。我们现在使用基于这个Dockerfile的Docker容器:
https://hub.docker.com/r/nathansamson/flutter-builder-docker/~/dockerfile/
FROM fedora:28
ENV ANDROID_COMPILE_SDK=28
ENV ANDROID_BUILD_TOOLS=28.0.1
ENV ANDROID_SDK_TOOLS=4333796
ENV FLUTTER_VERSION=0.7.3-beta
RUN dnf update -y \
&& dnf install -y wget tar unzip ruby ruby-devel make autoconf automake redhat-rpm-config lcov\
gcc gcc-c++ libstdc++.i686 java-1.8.0-openjdk-devel xz git mesa-libGL mesa-libGLU\
&& dnf clean all
RUN wget --quiet --output-document=android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-${ANDROID_SDK_TOOLS}.zip \
&& unzip android-sdk.zip -d /opt/android-sdk-linux/ \
&& echo "y" | /opt/android-sdk-linux/tools/bin/sdkmanager "platforms;android-${ANDROID_COMPILE_SDK}" \
&& echo "y" | /opt/android-sdk-linux/tools/bin/sdkmanager "platform-tools" \
&& echo "y" | /opt/android-sdk-linux/tools/bin/sdkmanager "build-tools;${ANDROID_BUILD_TOOLS}" \
&& echo "y" | /opt/android-sdk-linux/tools/bin/sdkmanager "extras;android;m2repository" \
&& echo "y" | /opt/android-sdk-linux/tools/bin/sdkmanager "extras;google;google_play_services" \
&& echo "y" | /opt/android-sdk-linux/tools/bin/sdkmanager "extras;google;m2repository" \
&& yes | /opt/android-sdk-linux/tools/bin/sdkmanager --licenses || echo "Failed" \
&& rm android-sdk.zip
ENV ANDROID_HOME=/opt/android-sdk-linux
ENV PATH=$PATH:/opt/android-sdk-linux/platform-tools/
RUN wget --quiet --output-document=flutter.tar.xz https://storage.googleapis.com/flutter_infra/releases/beta/linux/flutter_linux_v${FLUTTER_VERSION}.tar.xz \
&& tar xf flutter.tar.xz -C /opt \
&& rm flutter.tar.xz
ENV PATH=$PATH:/opt/flutter/bin
RUN echo "y" | /opt/android-sdk-linux/tools/bin/sdkmanager "emulator" \
&& echo "y" | /opt/android-sdk-linux/tools/bin/sdkmanager "system-images;android-18;google_apis;x86" \
&& echo "y" | /opt/android-sdk-linux/tools/bin/sdkmanager "system-images;android-27;google_apis_playstore;x86"
RUN dnf update -y \
&& dnf install -y pulseaudio-libs mesa-libGL mesa-libGLES mesa-libEGL \
&& dnf clean all发布于 2018-08-10 17:35:29
对于CentOS 7.x,请尝试安装libstdc++软件包。
包查询:yum search libstdc++
安装软件包:yum install libstdc++
libstdc++是CentOS 7.x标准发行版的一部分
https://stackoverflow.com/questions/51791312
复制相似问题