Page 1 of 3 123 LastLast
Results 1 to 10 of 21

Thread: [BUG] compiling Darling: crtbeginS.o: No such file or directory

  1. #1

    Default [BUG] compiling Darling: crtbeginS.o: No such file or directory

    Dear All,

    I am trying to compile the application Darling and I can not get the required OpenSuse packages right. The instructions they provide are for Debian, Ubuntu, Arch and Fedora. I get the error:
    Code:
    bigb@linux-17qf:~/darling/build> make
    [  0%] Linking C executable elfloader_dummy32
    /usr/bin/ld: cannot find crtbeginS.o: No such file or directory
    clang-7.0.1: error: linker command failed with exit code 1 (use -v to see invocation)
    make[2]: *** [src/libelfloader/native/CMakeFiles/elfloader_dummy32.dir/build.make:121: src/libelfloader/native/elfloader_dummy32] Error 1
    make[1]: *** [CMakeFiles/Makefile2:806: src/libelfloader/native/CMakeFiles/elfloader_dummy32.dir/all] Error 2
    make: *** [Makefile:130: all] Error 2
    I was able to find the missing file. It is part of the gcc7 package.
    /usr/lib64/gcc/x86_64-suse-linux/7/crtbeginS.o

    How come the compiler can not find it?

  2. #2
    Join Date
    Jun 2008
    Location
    San Diego, Ca, USA
    Posts
    11,153
    Blog Entries
    2

    Default Re: [BUG] compiling Darling: crtbeginS.o: No such file or directory

    Because a quick search returns a multitude of hits,
    I suspect the file isn't actually provided, it is dynamically built.
    If a pre-built library was provided, I'm sure it wouldn't be missing so often.

    Inspect your log prior to your snippet, I suspect you'll find other fails which can provide you a clue why you're failing.

    And,
    Because Fedora uses the same naming convention as openSUSE, you should be able to use that list of dependencies, just install using our zypper command instead of dnf, and maybe install the C Development pattern.

    HTH,
    TSU
    Beginner Wiki Quickstart - https://en.opensuse.org/User:Tsu2/Quickstart_Wiki
    Solved a problem recently? Create a wiki page for future personal reference!
    Learn something new?
    Attended a computing event?
    Post and Share!

  3. #3

    Default Re: [BUG] compiling Darling: crtbeginS.o: No such file or directory

    I don’t use dnf. Yast package manager for matching the packages.

    You mean this patten?
    sudo zypper install -t pattern devel_basis

  4. #4
    Join Date
    Jun 2008
    Location
    San Diego, Ca, USA
    Posts
    11,153
    Blog Entries
    2

    Default Re: [BUG] compiling Darling: crtbeginS.o: No such file or directory

    I don't have that pattern.

    If you search for C++, that pattern will install everything you need for both C and C++
    Code:
    zypper in -t pattern devel_C_C++
    TSU
    Beginner Wiki Quickstart - https://en.opensuse.org/User:Tsu2/Quickstart_Wiki
    Solved a problem recently? Create a wiki page for future personal reference!
    Learn something new?
    Attended a computing event?
    Post and Share!

  5. #5

    Default Re: [BUG] compiling Darling: crtbeginS.o: No such file or directory

    I have installed this pattern as well. Issue is the same. I have started over and there is a warning as well:
    Code:
    bigb@linux-17qf:~/darling/build> make
    Scanning dependencies of target elfloader_dummy32
    [  0%] Building C object src/libelfloader/native/CMakeFiles/elfloader_dummy32.dir/elfcalls.o
    [  0%] Building C object src/libelfloader/native/CMakeFiles/elfloader_dummy32.dir/threads.o
    /home/bigb/darling/src/libelfloader/native/threads.c:193:2: warning: implicit
          declaration of function 'pthread_getattr_np' is invalid in C99
          [-Wimplicit-function-declaration]
            pthread_getattr_np(pthread_self(), &attr);
            ^
    1 warning generated.
    [  0%] Linking C executable elfloader_dummy32
    /usr/bin/ld: cannot find crtbeginS.o: Nincs ilyen fájl vagy könyvtár
    clang-7.0.1: error: linker command failed with exit code 1 (use -v to see invocation)
    make[2]: *** [src/libelfloader/native/CMakeFiles/elfloader_dummy32.dir/build.make:121: src/libelfloader/native/elfloader_dummy32] Error 1
    make[1]: *** [CMakeFiles/Makefile2:806: src/libelfloader/native/CMakeFiles/elfloader_dummy32.dir/all] Error 2
    make: *** [Makefile:130: all] Error 2

  6. #6
    Join Date
    Jun 2008
    Location
    Podunk
    Posts
    26,680
    Blog Entries
    15

    Default Re: [BUG] compiling Darling: crtbeginS.o: No such file or directory

    Hi
    I think the issue is that openSUSE no longer has i386 as a target (only 32bit libs)....

    I see more of the error here;

    Code:
    [  110s] Scanning dependencies of target elfloader_dummy32
    [  110s] make[2]: Leaving directory '/home/abuild/rpmbuild/BUILD/darling-0.2019.8+git20190813.c64519b5/build'
    [  110s] make[2]: Entering directory '/home/abuild/rpmbuild/BUILD/darling-0.2019.8+git20190813.c64519b5/build'
    [  110s] [  0%] Building C object src/libelfloader/native/CMakeFiles/elfloader_dummy32.dir/elfcalls.o
    [  110s] [  0%] Building C object src/libelfloader/native/CMakeFiles/elfloader_dummy32.dir/threads.o
    [  110s] /home/abuild/rpmbuild/BUILD/darling-0.2019.8+git20190813.c64519b5/src/libelfloader/native/threads.c:193:2: warning: implicit declaration of function 'pthread_getattr_np' is invalid in C99 [-Wimplicit-function-declaration]
    [  110s]         pthread_getattr_np(pthread_self(), &attr);
    [  110s]         ^
    [  110s] 1 warning generated.
    [  110s] [  0%] Linking C executable elfloader_dummy32
    [  110s] /usr/bin/ld: skipping incompatible /usr/bin/../lib64/gcc/x86_64-suse-linux/7/../../../libpthread.so when searching for -lpthread
    [  110s] /usr/bin/ld: skipping incompatible /usr/bin/../lib64/gcc/x86_64-suse-linux/7/../../../librt.so when searching for -lrt
    [  110s] /usr/bin/ld: skipping incompatible /usr/bin/../lib64/gcc/x86_64-suse-linux/7/../../../libdl.so when searching for -ldl
    [  110s] /usr/bin/ld: skipping incompatible /usr/bin/../lib64/gcc/x86_64-suse-linux/7/../../../libc.so when searching for -lc
    [  110s] /usr/bin/ld: i386:x86-64 architecture of input file `/usr/bin/../lib64/gcc/x86_64-suse-linux/7/../../../Scrt1.o' is incompatible with i386 output
    [  110s] /usr/bin/ld: i386:x86-64 architecture of input file `/usr/bin/../lib64/gcc/x86_64-suse-linux/7/../../../crti.o' is incompatible with i386 output
    [  110s] /usr/bin/ld: i386:x86-64 architecture of input file `/usr/bin/../lib64/gcc/x86_64-suse-linux/7/../../../crtn.o' is incompatible with i386 output
    [  110s] /usr/bin/ld: /usr/bin/../lib64/gcc/x86_64-suse-linux/7/../../../Scrt1.o: file class ELFCLASS64 incompatible with ELFCLASS32
    [  110s] /usr/bin/ld: final link failed: file in wrong format
    [  110s] clang-7.0.1: error: linker command failed with exit code 1 (use -v to see invocation)
    [  110s] make[2]: *** [src/libelfloader/native/CMakeFiles/elfloader_dummy32.dir/build.make:121: src/libelfloader/native/elfloader_dummy32] Error 1
    [  110s] make[2]: Leaving directory '/home/abuild/rpmbuild/BUILD/darling-0.2019.8+git20190813.c64519b5/build'
    [  110s] make[1]: *** [CMakeFiles/Makefile2:806: src/libelfloader/native/CMakeFiles/elfloader_dummy32.dir/all] Error 2
    [  110s] make[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/darling-0.2019.8+git20190813.c64519b5/build'
    [  110s] make: *** [Makefile:130: all] Error 2
    Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
    SUSE SLE, openSUSE Leap/Tumbleweed (x86_64) | GNOME DE
    If you find this post helpful and are logged into the web interface,
    please show your appreciation and click on the star below... Thanks!

  7. #7

    Default Re: [BUG] compiling Darling: crtbeginS.o: No such file or directory

    Quote Originally Posted by malcolmlewis View Post
    Hi
    I think the issue is that openSUSE no longer has i386 as a target (only 32bit libs)....

    I see more of the error here;
    What are You suggesting? I will try to get it clarified on the DarlingHQ forums.

  8. #8
    Join Date
    Jun 2008
    Location
    San Diego, Ca, USA
    Posts
    11,153
    Blog Entries
    2

    Default Re: [BUG] compiling Darling: crtbeginS.o: No such file or directory

    I strongly suspect you have installed the wrong package dependencies. Inspecting the Darling build instructions and the Fedora Dependency package list, I see that you must compile on a 64-bit system and by their name I suspect that your build should target the x686 architecture which IIRC is not 32-bit. Oddly, the Ubuntu/Debian package list includes some 32-bit packages, but those should not be relevant to RPM systems like openSUSE. Although there may be something hidden, I don't see anything in the Package Dependencies that suggests to me an attempt to build targeting the i386 architecture like what you see in your posted log.

    So the first thing I'd ask you to do is run the following command and post the results
    Code:
    # zypper in make cmake clang bison flex python2 glibc-devel.i686 fuse-devel systemd-devel kernel-devel elfutils-libelf-devel cairo-devel freetype-devel.{x86_64,i686} libjpeg-turbo-devel.{x86_64,i686} libtiff-devel.{x86_64,i686} fontconfig-devel.{x86_64,i686} libglvnd-devel.{x86_64,i686} mesa-libGL-devel.{x86_64,i686} mesa-libEGL-devel.{x86_64,i686} libxml2-devel libbsd-deve
    For any unsatisfied eependencies identified by running the above, I wrote the following Wiki page that describes a process for locating the package
    https://en.opensuse.org/User:Tsu2/Mi...s_Dependencies

    Other build requirements seem to be satisfied, in particular a kernel 4.9 or later... run the following command to be certain you have fully updated your system, as of today your kernel should be 4.12.x
    Code:
    zypper up
    I assume you are following the Build instructions faithfully...
    Each day you attempt a new build, be sure to update your github source with a "pull" to be certain you have even the latest contributions
    Code:
    git pull
    Then, execute the build commands as described starting with locating your cursor to the source root
    Code:
    cd darling
    TSU
    Beginner Wiki Quickstart - https://en.opensuse.org/User:Tsu2/Quickstart_Wiki
    Solved a problem recently? Create a wiki page for future personal reference!
    Learn something new?
    Attended a computing event?
    Post and Share!

  9. #9
    Join Date
    Jun 2008
    Location
    Podunk
    Posts
    26,680
    Blog Entries
    15

    Default Re: [BUG] compiling Darling: crtbeginS.o: No such file or directory

    Quote Originally Posted by nagybal View Post
    What are You suggesting? I will try to get it clarified on the DarlingHQ forums.
    Hi
    Yes, there is no i386 target in openSUSE releases anymore just i586/i686 there should be somewhere to re-configure (set in cmake speak) this.

    @Tsu2, the OP does have appear to have all the packages required installed, it's a code issue for sure as I'm hitting the exact same issue building as an rpm based on the Fedora spec file included in the Github repo.

    There are plenty of testing/checks in the cmake part (aka ./configure) to identify missing stuff and errors out before even getting the chance to run make.

    Here is my output from a local build....
    https://susepaste.org/1141d89a
    Last edited by malcolmlewis; 06-Sep-2019 at 17:24.
    Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
    SUSE SLE, openSUSE Leap/Tumbleweed (x86_64) | GNOME DE
    If you find this post helpful and are logged into the web interface,
    please show your appreciation and click on the star below... Thanks!

  10. #10
    Join Date
    Sep 2012
    Posts
    5,041

    Default Re: [BUG] compiling Darling: crtbeginS.o: No such file or directory

    Quote Originally Posted by nagybal View Post
    I was able to find the missing file. It is part of the gcc7 package.
    /usr/lib64/gcc/x86_64-suse-linux/7/crtbeginS.o
    If you compile 32 bit binary, you need at the very least gcc7-32bit package that provides corresponding run-time support. You will also need 32 bit versions of every other library used by your binary.

    I do not think there is single pattern that installs them. Nor are development packages available for every 32 bit run-time, I think they are created on case by case basis.

Page 1 of 3 123 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •