Linking problems after updating to 11.10

16,279

Solution 1

It seemed as though all of the requisite .o files were installed but the ppa version of gcc 4.6 I had was looking in the wrong place for them. Reinstalling all of the packages from the official oneric repo's solved the problem.

Make sure you have access to the correct repositories then:

sudo apt-get update
sudo apt-get install --reinstall binutils
sudo apt-get install --reinstall build-essential
sudo apt-get install --reinstall libc6-dev
sudo apt-get install --reinstall gcc-4.6
sudo apt-get install --reinstall libboost1.46-all-dev

Solution 2

Either you try to install an older version of gcc which was the first suggestion that I got on my own question on such a problem or take a look at the answer that I got from David Puglielli which explains the causes for that problem ( Why does gsl-library not compile/link in 11.10, despite that it did under 11.04 with the same makefile and program? ). His answer helped me and I hope it does so for you.

Solution 3

LIBRARY_PATH=/usr/lib/x86_64-linux-gnu make

Solution 4

export LIBRARY_PATH=/usr/lib/x86_64-linux-gnu 

Was the trick that worked for me on Kubuntu 11.10 and Ubuntu 12.04

Share:
16,279

Related videos on Youtube

user2887005
Author by

user2887005

I focus on solving business problems with technology, a big part of that is making sure to solve the right problem in the first place. If you are interested in solving real world problems using tech please get in contact via: https://www.scrygroup.com/ My main experience is in c++ and python as I have used both those languages extensively in scientific simulations programming, I've also wrote a few systems applications in c#. For a few years I did a lot of work on embedded systems. Big fan of static analysis tools like Pylint.

Updated on September 18, 2022

Comments

  • user2887005
    user2887005 almost 2 years

    Right now I am having difficulties linking a project I am working on with gcc4.6 in ubuntu 11.10. Before the distribution upgrade everything linked fine and it still compiles/links on the other developers machines.

    Currently the compile succeeds then the linking fails with the following:

    /usr/bin/ld: error: cannot open crt1.o: No such file or directory
    /usr/bin/ld: error: cannot open crti.o: No such file or directory
    /usr/bin/ld: error: cannot open crtn.o: No such file or directory
    collect2: ld returned 1 exit status
    make: *** [mc] Error 1
    

    Here's some info on what I am using:

    $gcc -v
    Using built-in specs.
    COLLECT_GCC=gcc
    COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.6.1/lto-wrapper
    Target: x86_64-linux-gnu
    Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.6.1-9ubuntu3' --with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++,go --prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-plugin --enable-objc-gc --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
    Thread model: posix
    gcc version 4.6.1 (Ubuntu/Linaro 4.6.1-9ubuntu3) 
    
    $ ldd --version
    ldd (Ubuntu EGLIBC 2.13-20ubuntu5) 2.13
    Copyright (C) 2011 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    Written by Roland McGrath and Ulrich Drepper.
    
    $ find /usr -name "crt1.o"
    /usr/arm-linux-gnueabi/lib/crt1.o
    /usr/lib32/crt1.o
    /usr/lib/x86_64-linux-gnu/crt1.o
    /usr/lib/debug/usr/lib32/crt1.o
    /usr/lib/debug/usr/lib/x86_64-linux-gnu/crt1.o
    /usr/arm-linux-gnueabihf/lib/crt1.o
    

    Happy to post any other info as needed!

    • klox
      klox over 12 years
      try to install this sudo apt-get libc6-dev
    • user2887005
      user2887005 over 12 years
      @hhlp, I have done this and it still doesn't work. My problems may be from broken packages.