Git Product home page Git Product logo

Comments (10)

azubieta avatar azubieta commented on May 31, 2024

This issue is produced when you run the appimage-builder twice over the same AppDir without redeploying all the binaries. You need to wipe out or redeploy all the binaries in AppDir before running appimage-builder.

Long description:
appimage-builder uses patchelf to change the PT_INTERP path in the elf executable, and uses the existent value to discover which interpreter the executable requires. If you run appimage-builder twice it will think that the required interpreter is the "pointer" one which causes the malfunction you're seeing.

ref #44

from appimage-builder.

xahon avatar xahon commented on May 31, 2024

What do you mean under "redeploy"?
It seems i don't run appimage-builder twice

My Dockerfile:

FROM ubuntu:bionic
WORKDIR /home
COPY main main
COPY libfile.so libfile.so
RUN apt update
RUN apt install -y neovim git cmake build-essential qtbase5-dev qtdeclarative5-dev python3-pip python3-setuptools patchelf desktop-file-utils libgdk-pixbuf2.0-dev fakeroot
RUN pip3 install --upgrade pip && pip3 install appimage-builder
COPY AppImageBuilder.yml .
RUN apt install wget
RUN wget https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage -O /opt/appimagetool && \
    chmod +x /opt/appimagetool && \
    cd /opt/ && \
    /opt/appimagetool --appimage-extract && \
    mv /opt/squashfs-root /opt/appimagetool.AppDir && \
    ln -s /opt/appimagetool.AppDir/AppRun /usr/local/bin/appimagetool
RUN appimage-builder --skip-tests

from appimage-builder.

azubieta avatar azubieta commented on May 31, 2024

By "redeploy" I mean to run appimage-builder two or more times over the same AppDir. You need to rm -rf AppDir before running appimage-builder. Then you install things there, check out the link below:

https://github.com/AppImageCrafters/appimage-builder/blob/master/examples/pyqt5/AppImageBuilder.yml#L3

from appimage-builder.

azubieta avatar azubieta commented on May 31, 2024

By the way you can also use https://hub.docker.com/repository/docker/appimagecrafters/appimage-builder for your builds

from appimage-builder.

xahon avatar xahon commented on May 31, 2024

@azubieta wait, if i rm -rf AppDir, then how do I specify which file is executable and which are shared libraries, etc?

from appimage-builder.

azubieta avatar azubieta commented on May 31, 2024

@xahon the idea is to start fresh every time, because appimage-builder modifies the AppDir contents and also uses the same data to do the modifications. You can do something like this:

# erase the AppDir
rm -rf ./AppDir

# deploy everything again 
make install DESTDIR=AppDir
cp my_file.so AppDir/usr/lib/x86_64-linux-gnu/

# run appimage-builder, tests don't work inside docker
appimage-builder  --skip-test

from appimage-builder.

xahon avatar xahon commented on May 31, 2024

Warning has disappeared but "Unable to read file: ...so" is still showing up

from appimage-builder.

azubieta avatar azubieta commented on May 31, 2024

Warning has disappeared but "Unable to read file: ...so" is still showing up

That's weird, could you please post the whole log?
It would be useful if you could share your AppImageBuilder.yml file too.

from appimage-builder.

xahon avatar xahon commented on May 31, 2024

HIDDEN OUTPUT

from appimage-builder.

azubieta avatar azubieta commented on May 31, 2024

Also please share the full error log. If you want we could communicate faster on the appimage irc channel at freenode.org

from appimage-builder.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.