f



OT, Linux: bash can't see a file that's there, really!

Sorry for the OT post, but I figure I'll get a quicker, more useful 
response here.

Brand new computer, Xubuntu 14.04 instead of Lubuntu 12.04

I just copied over my Codesourcery directory to /usr/share/arm-none-eabi 
(where it was on the old machine, and where everything worked fine).

Bash insists it's not there, even though I can see it in a directory:

Here's ls:

$ ls -l /usr/share/arm-none-eabi/bin/*gcc
-rwxr-xr-x 1 root root 270608 Aug  6  2014 /usr/share/arm-none-eabi/bin/
arm-none-eabi-gcc

Here's when I try to run it:

$ /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
bash: /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc: No such file or 
directory

Clues for the clueless?

Thanks.

-- 

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com
0
Tim
6/4/2015 6:41:26 PM
comp.arch.embedded 20047 articles. 1 followers. Post Follow

20 Replies
579 Views

Similar Articles

[PageSpeed] 4

On 6/4/2015 11:41 AM, Tim Wescott wrote:
> Sorry for the OT post, but I figure I'll get a quicker, more useful
> response here.
>
> Brand new computer, Xubuntu 14.04 instead of Lubuntu 12.04
>
> I just copied over my Codesourcery directory to /usr/share/arm-none-eabi
> (where it was on the old machine, and where everything worked fine).
>
> Bash insists it's not there, even though I can see it in a directory:
>
> Here's ls:
>
> $ ls -l /usr/share/arm-none-eabi/bin/*gcc
> -rwxr-xr-x 1 root root 270608 Aug  6  2014 /usr/share/arm-none-eabi/bin/
> arm-none-eabi-gcc
>
> Here's when I try to run it:
>
> $ /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
> bash: /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc: No such file or
> directory
>
> Clues for the clueless?

Non-printing character in filename?  In FreeBSD, "ls -B" (or "ls -b" for
C-esque renderings) is your friend.

0
Don
6/4/2015 6:46:57 PM
On Thu, 04 Jun 2015 11:46:57 -0700, Don Y wrote:

> On 6/4/2015 11:41 AM, Tim Wescott wrote:
>> Sorry for the OT post, but I figure I'll get a quicker, more useful
>> response here.
>>
>> Brand new computer, Xubuntu 14.04 instead of Lubuntu 12.04
>>
>> I just copied over my Codesourcery directory to
>> /usr/share/arm-none-eabi (where it was on the old machine, and where
>> everything worked fine).
>>
>> Bash insists it's not there, even though I can see it in a directory:
>>
>> Here's ls:
>>
>> $ ls -l /usr/share/arm-none-eabi/bin/*gcc -rwxr-xr-x 1 root root 270608
>> Aug  6  2014 /usr/share/arm-none-eabi/bin/
>> arm-none-eabi-gcc
>>
>> Here's when I try to run it:
>>
>> $ /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc bash:
>> /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc: No such file or
>> directory
>>
>> Clues for the clueless?
> 
> Non-printing character in filename?  In FreeBSD, "ls -B" (or "ls -b" for
> C-esque renderings) is your friend.

ls -B /usr/share/arm-none-eabi/bin/*gcc
/usr/share/arm-none-eabi/bin/arm-none-eabi-gcc

-- 

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com
0
Tim
6/4/2015 6:49:18 PM
Tim Wescott <seemywebsite@myfooter.really> wrote:
> $ /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
> bash: /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc: No such file or 
> directory

Wrong ELF ABI tag?
Missing ELF ABI-tag note section?

Had this on many BSD's recently. Linking an executable without a
note section identifying the ABI results in a non-executable
executable.

In this case, it would probably be easiest to get a newer binary
version. Or use elfdump or a similar tool to find out in which way
the binary differs from the system binaries. You could then try
to tweak the binary with an interactive ELF editor.

-- 
Nils M Holm  < n m h @ t 3 x . o r g >  www.t3x.org
0
Nils
6/4/2015 7:05:19 PM
On 6/4/2015 11:49 AM, Tim Wescott wrote:
> On Thu, 04 Jun 2015 11:46:57 -0700, Don Y wrote:
>
>> On 6/4/2015 11:41 AM, Tim Wescott wrote:
>>> Sorry for the OT post, but I figure I'll get a quicker, more useful
>>> response here.
>>>
>>> Brand new computer, Xubuntu 14.04 instead of Lubuntu 12.04
>>>
>>> I just copied over my Codesourcery directory to
>>> /usr/share/arm-none-eabi (where it was on the old machine, and where
>>> everything worked fine).
>>>
>>> Bash insists it's not there, even though I can see it in a directory:
>>>
>>> Here's ls:
>>>
>>> $ ls -l /usr/share/arm-none-eabi/bin/*gcc -rwxr-xr-x 1 root root 270608
>>> Aug  6  2014 /usr/share/arm-none-eabi/bin/
>>> arm-none-eabi-gcc
>>>
>>> Here's when I try to run it:
>>>
>>> $ /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc bash:
>>> /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc: No such file or
>>> directory
>>>
>>> Clues for the clueless?
>>
>> Non-printing character in filename?  In FreeBSD, "ls -B" (or "ls -b" for
>> C-esque renderings) is your friend.
>
> ls -B /usr/share/arm-none-eabi/bin/*gcc
> /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc

Do, presumably, you can rm(1), mv(1), etc. successfully.

What does file(1) claim?  And, nm(1)?


0
Don
6/4/2015 7:26:35 PM
Tim Wescott <seemywebsite@myfooter.really> writes:
> Clues for the clueless?

Try "type /usr/share/arm-none-eabi/bin/*gcc" and "ldd
/usr/share/arm-none-eabi/bin/*gcc" - it might be that the older binaries
were built against older libraries and/or dynamic linkers, so yu may
need to install a compatibility package to run them as-is.

Just because you copied the *gcc file, doesn't mean Linux has all the
support files (/lib/ld.so.1, /lib/libc.so.*, etc) and the error message
might be from one of those.
0
DJ
6/4/2015 7:36:34 PM
On Thu, 04 Jun 2015 15:36:34 -0400, DJ Delorie wrote:

> Tim Wescott <seemywebsite@myfooter.really> writes:
>> Clues for the clueless?
> 
> Try "type /usr/share/arm-none-eabi/bin/*gcc" and "ldd
> /usr/share/arm-none-eabi/bin/*gcc" - it might be that the older binaries
> were built against older libraries and/or dynamic linkers, so yu may
> need to install a compatibility package to run them as-is.
> 
> Just because you copied the *gcc file, doesn't mean Linux has all the
> support files (/lib/ld.so.1, /lib/libc.so.*, etc) and the error message
> might be from one of those.

The error message was that bash didn't see the file itself, not that it 
couldn't find the library.

But -- maybe.  Particularly since it's a 64-bit linux, and the old one 
was 32.

-- 
www.wescottdesign.com
0
Tim
6/4/2015 7:52:50 PM
On Thu, 04 Jun 2015 15:36:34 -0400, DJ Delorie wrote:

> Tim Wescott <seemywebsite@myfooter.really> writes:
>> Clues for the clueless?
> 
> Try "type /usr/share/arm-none-eabi/bin/*gcc" and "ldd
> /usr/share/arm-none-eabi/bin/*gcc" - it might be that the older binaries
> were built against older libraries and/or dynamic linkers, so yu may
> need to install a compatibility package to run them as-is.
> 
> Just because you copied the *gcc file, doesn't mean Linux has all the
> support files (/lib/ld.so.1, /lib/libc.so.*, etc) and the error message
> might be from one of those.

+1 on ldd.  I've had this happen before.  ldd will show you
what is missing.

-- 
Chisolm
Republic of Texas
0
Joe
6/4/2015 7:56:38 PM
Tim Wescott <tim@seemywebsite.com> writes:
> The error message was that bash didn't see the file itself, not that it 
> couldn't find the library.

The error message says that, but sometimes it lies.  When Linux runs an
ELF binary, that binary usually needs a "dynamic loader" to run *also*,
which resolves all the shared library stuff.  Much like a script needs
its interpreter, ELF binaries need their loader.  If the loader doesn't
exist, the kernel might return "not found" when you try to run that
binary.  bash: "Please run this", kernel: "I couldn't find one of the
files I need to do so".

Strange but true.

$ readelf -l /usr/bin/gcc

.. . .
  INTERP         0x00000000000002a8 0x00000000004002a8 0x00000000004002a8
                 0x000000000000001c 0x000000000000001c  R      1
      [Requesting program interpreter: /lib64/ld-linux-x86-64.so.2]
.. . .
0
DJ
6/4/2015 8:31:09 PM
On Thu, 04 Jun 2015 14:52:50 -0500, Tim Wescott wrote:

> On Thu, 04 Jun 2015 15:36:34 -0400, DJ Delorie wrote:
> 
>> Tim Wescott <seemywebsite@myfooter.really> writes:
>>> Clues for the clueless?
>> 
>> Try "type /usr/share/arm-none-eabi/bin/*gcc" and "ldd
>> /usr/share/arm-none-eabi/bin/*gcc" - it might be that the older
>> binaries were built against older libraries and/or dynamic linkers, so
>> yu may need to install a compatibility package to run them as-is.
>> 
>> Just because you copied the *gcc file, doesn't mean Linux has all the
>> support files (/lib/ld.so.1, /lib/libc.so.*, etc) and the error message
>> might be from one of those.
> 
> The error message was that bash didn't see the file itself, not that it
> couldn't find the library.
> 
> But -- maybe.  Particularly since it's a 64-bit linux, and the old one
> was 32.

From the man page for execve(2)
ENOENT The file filename or a script or ELF interpreter does not exist,
	or a shared library needed for file  or  interpreter  cannot
	be found.

This error is going to percolate up to bash so you get the
"No such file or directory" because, most likely, a shared library
is not found. ldd will tell you what is missing.

-- 
Chisolm
Republic of Texas
0
Joe
6/4/2015 9:47:48 PM
On Thu, 04 Jun 2015 16:47:48 -0500, Joe Chisolm wrote:

> On Thu, 04 Jun 2015 14:52:50 -0500, Tim Wescott wrote:
> 
>> On Thu, 04 Jun 2015 15:36:34 -0400, DJ Delorie wrote:
>> 
>>> Tim Wescott <seemywebsite@myfooter.really> writes:
>>>> Clues for the clueless?
>>> 
>>> Try "type /usr/share/arm-none-eabi/bin/*gcc" and "ldd
>>> /usr/share/arm-none-eabi/bin/*gcc" - it might be that the older
>>> binaries were built against older libraries and/or dynamic linkers, so
>>> yu may need to install a compatibility package to run them as-is.
>>> 
>>> Just because you copied the *gcc file, doesn't mean Linux has all the
>>> support files (/lib/ld.so.1, /lib/libc.so.*, etc) and the error
>>> message might be from one of those.
>> 
>> The error message was that bash didn't see the file itself, not that it
>> couldn't find the library.
>> 
>> But -- maybe.  Particularly since it's a 64-bit linux, and the old one
>> was 32.
> 
> From the man page for execve(2)
> ENOENT The file filename or a script or ELF interpreter does not exist,
> 	or a shared library needed for file  or  interpreter  cannot be 
found.
> 
> This error is going to percolate up to bash so you get the "No such file
> or directory" because, most likely, a shared library is not found. ldd
> will tell you what is missing.

$ldd /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
	not a dynamic executable

That seems more direct.  Is it a 32-bit vs. 64-bit thing?

-- 

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com
0
Tim
6/4/2015 9:55:08 PM
On 2015-06-04, Tim Wescott <seemywebsite@myfooter.really> wrote:
>
> $ldd /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
> 	not a dynamic executable
>
> That seems more direct.  Is it a 32-bit vs. 64-bit thing?
>

I haven't seen the results of running "file" on this executable posted yet.

(Apologies if you have already done this and I have missed it.)

Simon.

-- 
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Microsoft: Bringing you 1980s technology to a 21st century world
0
Simon
6/4/2015 10:29:01 PM
On Thu, 04 Jun 2015 22:29:01 +0000, Simon Clubley wrote:

> On 2015-06-04, Tim Wescott <seemywebsite@myfooter.really> wrote:
>>
>> $ldd /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
>> 	not a dynamic executable
>>
>> That seems more direct.  Is it a 32-bit vs. 64-bit thing?
>>
>>
> I haven't seen the results of running "file" on this executable posted
> yet.
> 
> (Apologies if you have already done this and I have missed it.)
> 
> Simon.

$ file /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
/usr/share/arm-none-eabi/bin/arm-none-eabi-gcc: ELF 32-bit LSB  
executable, Intel 80386, version 1 (SYSV), dynamically linked (uses 
shared libs), for GNU/Linux 2.2.5, stripped

-- 

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com
0
Tim
6/4/2015 10:35:46 PM
Tim Wescott <seemywebsite@myfooter.really> writes:
> /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc: ELF 32-bit LSB
> executable

It's probably a 32-bit thing.  In Fedora, for example, you have to
separately install the 32-bit runtime on a 64-bit system, I suspect
either (1) you have to do that also for Ubuntu, or (2) the dynamic
loader it's looking for is older than the one you've installed.  That
readelf command would tell you what it's looking for, then you can see
if you have a different version of that file installed.

0
DJ
6/5/2015 1:14:55 AM
On 05/06/15 00:35, Tim Wescott wrote:
> On Thu, 04 Jun 2015 22:29:01 +0000, Simon Clubley wrote:
> 
>> On 2015-06-04, Tim Wescott <seemywebsite@myfooter.really> wrote:
>>>
>>> $ldd /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
>>> 	not a dynamic executable
>>>
>>> That seems more direct.  Is it a 32-bit vs. 64-bit thing?
>>>
>>>
>> I haven't seen the results of running "file" on this executable posted
>> yet.
>>
>> (Apologies if you have already done this and I have missed it.)
>>
>> Simon.
> 
> $ file /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
> /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc: ELF 32-bit LSB  
> executable, Intel 80386, version 1 (SYSV), dynamically linked (uses 
> shared libs), for GNU/Linux 2.2.5, stripped
> 

As DJ says, it is likely that you are missing the 32-bit libraries on
the 64-bit system.  Is this a newly installed system?

There should not be any problems running 32-bit binaries once the
libraries are installed - your distro should have them in its
repositories (using the package manager, software control centre, yum,
apt-get, or whatever you usually use).  If you don't know how to do it,
and google doesn't find an answer quickly, let us know which distro you
are using.

(Note - some distros have libraries in x64-64, i386/i686 and x32
versions.  It's the i386/i686 version you want here.  x32 is a rather
cool ABI for using the extra registers and features of amd64 cpus but
with compact and efficient 32-bit addresses.)

0
David
6/5/2015 6:54:30 AM
Nils M Holm <news2009@t3x.org> wrote:
> Tim Wescott <seemywebsite@myfooter.really> wrote:
> > $ /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
> > bash: /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc: No such file or 
> > directory
> 
> Wrong ELF ABI tag?
> Missing ELF ABI-tag note section?
> 
> Had this on many BSD's recently. Linking an executable without a
> note section identifying the ABI results in a non-executable
> executable.

So Linux has this too, now:
https://refspecs.linuxfoundation.org/LSB_1.2.0/gLSB/noteabitag.html

Note that if it would be an ldd issue, you would probably get a
different message (like "some.so.x not found"). Since the message
comes from bash, the file is not executable at all, which is exactly
what happens on BSD when the ELF ABI-tag is missing. I assume that
Linux execve() would handle it in the same way.

-- 
Nils M Holm  < n m h @ t 3 x . o r g >  www.t3x.org
0
Nils
6/5/2015 6:59:29 AM
On Fri, 05 Jun 2015 08:54:30 +0200, David Brown wrote:

> On 05/06/15 00:35, Tim Wescott wrote:
>> On Thu, 04 Jun 2015 22:29:01 +0000, Simon Clubley wrote:
>> 
>>> On 2015-06-04, Tim Wescott <seemywebsite@myfooter.really> wrote:
>>>>
>>>> $ldd /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
>>>> 	not a dynamic executable
>>>>
>>>> That seems more direct.  Is it a 32-bit vs. 64-bit thing?
>>>>
>>>>
>>> I haven't seen the results of running "file" on this executable posted
>>> yet.
>>>
>>> (Apologies if you have already done this and I have missed it.)
>>>
>>> Simon.
>> 
>> $ file /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
>> /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc: ELF 32-bit LSB
>> executable, Intel 80386, version 1 (SYSV), dynamically linked (uses
>> shared libs), for GNU/Linux 2.2.5, stripped
>> 
>> 
> As DJ says, it is likely that you are missing the 32-bit libraries on
> the 64-bit system.  Is this a newly installed system?

Yes, it's a brand-new Ubuntu 14.04 64-bit install.  I copied over the 
files from my Ubuntu 32-bit system (where they just worked, after 
unzipping the file from CodeSourcery)

> There should not be any problems running 32-bit binaries once the
> libraries are installed - your distro should have them in its
> repositories (using the package manager, software control centre, yum,
> apt-get, or whatever you usually use).  If you don't know how to do it,
> and google doesn't find an answer quickly, let us know which distro you
> are using.
> 
> (Note - some distros have libraries in x64-64, i386/i686 and x32
> versions.  It's the i386/i686 version you want here.  x32 is a rather
> cool ABI for using the extra registers and features of amd64 cpus but
> with compact and efficient 32-bit addresses.)

I should probably start a new thread, but I'm at a minor impasse, and 
trying to figure out what to do for my embedded arm compilation needs.  
Ubuntu has the arm-none-eabi tools, but the dgb-arm-none-eabi package 
won't install because it tries to overwrite the man files for the regular 
ol' gdb (somebody done messed up out there in package-manager land).  I 
have not yet checked the CodeSourcery site -- that's what's been working 
for me, and if they have something current for 64-bit Debian, that'll 
probably work for me.  My final alternative is to try to build from 
source, but I can't even quite remember the name of the script that was 
floating around out there to make it easy, and IIRC the maintainer had 
more or less dropped it.

Snivel.  Whine.  Etc.

-- 

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com
0
Tim
6/5/2015 7:38:56 AM
On 05/06/15 09:38, Tim Wescott wrote:
> On Fri, 05 Jun 2015 08:54:30 +0200, David Brown wrote:
> 
>> On 05/06/15 00:35, Tim Wescott wrote:
>>> On Thu, 04 Jun 2015 22:29:01 +0000, Simon Clubley wrote:
>>>
>>>> On 2015-06-04, Tim Wescott <seemywebsite@myfooter.really> wrote:
>>>>>
>>>>> $ldd /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
>>>>> 	not a dynamic executable
>>>>>
>>>>> That seems more direct.  Is it a 32-bit vs. 64-bit thing?
>>>>>
>>>>>
>>>> I haven't seen the results of running "file" on this executable posted
>>>> yet.
>>>>
>>>> (Apologies if you have already done this and I have missed it.)
>>>>
>>>> Simon.
>>>
>>> $ file /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
>>> /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc: ELF 32-bit LSB
>>> executable, Intel 80386, version 1 (SYSV), dynamically linked (uses
>>> shared libs), for GNU/Linux 2.2.5, stripped
>>>
>>>
>> As DJ says, it is likely that you are missing the 32-bit libraries on
>> the 64-bit system.  Is this a newly installed system?
> 
> Yes, it's a brand-new Ubuntu 14.04 64-bit install.  I copied over the 
> files from my Ubuntu 32-bit system (where they just worked, after 
> unzipping the file from CodeSourcery)
> 

With such copying, or manual installation, the package manager doesn't
know that you need to install the 32-bit libraries.  If you had
installed a 32-bit program with "apt-get" (or other system tools), the
libraries could be installed automatically.

The suggestion I saw on the web was this:

<http://askubuntu.com/questions/454253/how-to-run-32-bit-app-in-ubuntu-64-bit>

Roughly:

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386


That installs some basic 32-bit libraries, which are probably enough for
the compiler.  Of course, if you want to run CodeSourcery's eclipse with
packaged JVM, you will need a lot more 32-bit libraries.

A quick way to get a fair number of these libraries would be to install
a 32-bit app from the Ubuntu package manager - something like Skype
should work.


Another option would be just to get the 64-bit packages from Code Sourcery!

>> There should not be any problems running 32-bit binaries once the
>> libraries are installed - your distro should have them in its
>> repositories (using the package manager, software control centre, yum,
>> apt-get, or whatever you usually use).  If you don't know how to do it,
>> and google doesn't find an answer quickly, let us know which distro you
>> are using.
>>
>> (Note - some distros have libraries in x64-64, i386/i686 and x32
>> versions.  It's the i386/i686 version you want here.  x32 is a rather
>> cool ABI for using the extra registers and features of amd64 cpus but
>> with compact and efficient 32-bit addresses.)
> 
> I should probably start a new thread, but I'm at a minor impasse, and 
> trying to figure out what to do for my embedded arm compilation needs.  
> Ubuntu has the arm-none-eabi tools, but the dgb-arm-none-eabi package 
> won't install because it tries to overwrite the man files for the regular 
> ol' gdb (somebody done messed up out there in package-manager land).  I 
> have not yet checked the CodeSourcery site -- that's what's been working 
> for me, and if they have something current for 64-bit Debian, that'll 
> probably work for me.  My final alternative is to try to build from 
> source, but I can't even quite remember the name of the script that was 
> floating around out there to make it easy, and IIRC the maintainer had 
> more or less dropped it.
> 
> Snivel.  Whine.  Etc.
> 

I strongly dislike getting embedded compilers from a distribution.  It's
okay for things like gdb or openocd, but not for the compiler or
library.  When I am working on a project, I need to know that the
compiler and library is the same regardless of the machine, the distro,
or the version of the system - I don't want an "apt-get upgrade" to
change my embedded compiler!

So I make a point of keeping all my embedded compilers separated.  For
example, at the moment I am using a compiler from here:

/opt/Freescale/KDS_2.0.0/toolchain/bin/arm-none-eabi-gcc

The installation is independent of the distro and system.

(I do a similar thing on Windows - I truly /hate/ when an installation
such as AVR Studio insists on "upgrading" an existing installation,
instead of installing it in parallel.)


0
David
6/5/2015 8:08:24 AM
On Thu, 04 Jun 2015 17:35:46 -0500, Tim Wescott wrote:

> On Thu, 04 Jun 2015 22:29:01 +0000, Simon Clubley wrote:
> 
>> On 2015-06-04, Tim Wescott <seemywebsite@myfooter.really> wrote:
>>>
>>> $ldd /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
>>> 	not a dynamic executable
>>>
>>> That seems more direct.  Is it a 32-bit vs. 64-bit thing?
>>>
>>>
>> I haven't seen the results of running "file" on this executable posted
>> yet.
>> 
>> (Apologies if you have already done this and I have missed it.)
>> 
>> Simon.
> 
> $ file /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
> /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc: ELF 32-bit LSB
> executable, Intel 80386, version 1 (SYSV), dynamically linked (uses
> shared libs), for GNU/Linux 2.2.5, stripped

How about tracing the problem, one step at a time?

File tells us the the executable is a shared executable. Let's find out 
what dynamic linker it uses. Output of `readelf -a | grep interpreter' 
will give us that information. Then we will try to find the linker (which 
probably does not exist - if a library is missing, bash reports a 
different error IIRC).
0
Aleksandar
6/5/2015 9:16:49 AM
Tim Wescott <tim@seemywebsite.com> writes:

> The error message was that bash didn't see the file itself, not that it 
> couldn't find the library.
>
> But -- maybe.  Particularly since it's a 64-bit linux, and the old one 
> was 32.

This answer covers a very similar case, specifically running Google's
32-bit adb on 64-bit Ubuntu 14.04:

https://askubuntu.com/questions/454253/how-to-run-32-bit-app-in-ubuntu-64-bit

It seems to come down to just running 

sudo dpkg --add-architecture i386 

and then installing some common libs:

sudo apt-get update
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386

I dunno, I don't remember having to install anything extra on my Ubuntu
laptop to run 32-bit apps... Or maybe they got installed as a
dependency for something else like Steam.
0
Anssi
6/5/2015 10:40:49 AM
On Fri, 05 Jun 2015 10:08:24 +0200, David Brown wrote:

> On 05/06/15 09:38, Tim Wescott wrote:
>> On Fri, 05 Jun 2015 08:54:30 +0200, David Brown wrote:
>> 
>>> On 05/06/15 00:35, Tim Wescott wrote:
>>>> On Thu, 04 Jun 2015 22:29:01 +0000, Simon Clubley wrote:
>>>>
>>>>> On 2015-06-04, Tim Wescott <seemywebsite@myfooter.really> wrote:
>>>>>>
>>>>>> $ldd /usr/share/arm-none-eabi/bin/arm-none-eabi-gcc
>>>>>> 	not a dynamic executable
>>>>>>
>>>>>> That seems more direct.  Is it a 32-bit vs. 64-bit thing?
>>>>>>

<< snip >>

>> 
>> Yes, it's a brand-new Ubuntu 14.04 64-bit install.  I copied over the
>> files from my Ubuntu 32-bit system (where they just worked, after
>> unzipping the file from CodeSourcery)
>> 
>> 
> With such copying, or manual installation, the package manager doesn't
> know that you need to install the 32-bit libraries.  If you had
> installed a 32-bit program with "apt-get" (or other system tools), the
> libraries could be installed automatically.
> 
> The suggestion I saw on the web was this:
> 
> <http://askubuntu.com/questions/454253/how-to-run-32-bit-app-in-
ubuntu-64-bit>
> 
> Roughly:
> 
> sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get
> install libc6:i386 libncurses5:i386 libstdc++6:i386
> 
> 
> That installs some basic 32-bit libraries, which are probably enough for
> the compiler.  Of course, if you want to run CodeSourcery's eclipse with
> packaged JVM, you will need a lot more 32-bit libraries.
> 
> A quick way to get a fair number of these libraries would be to install
> a 32-bit app from the Ubuntu package manager - something like Skype
> should work.
> 

That worked.  Thank you very much -- you've saved me from upgrade hell, I 
suspect.

> 
> Another option would be just to get the 64-bit packages from Code
> Sourcery!
> 

<< snip >>

>> Snivel.  Whine.  Etc.
>> 
>> 
> I strongly dislike getting embedded compilers from a distribution.  It's
> okay for things like gdb or openocd, but not for the compiler or
> library.  When I am working on a project, I need to know that the
> compiler and library is the same regardless of the machine, the distro,
> or the version of the system - I don't want an "apt-get upgrade" to
> change my embedded compiler!
> 
> So I make a point of keeping all my embedded compilers separated.  For
> example, at the moment I am using a compiler from here:
> 
> /opt/Freescale/KDS_2.0.0/toolchain/bin/arm-none-eabi-gcc
> 
> The installation is independent of the distro and system.
> 
> (I do a similar thing on Windows - I truly /hate/ when an installation
> such as AVR Studio insists on "upgrading" an existing installation,
> instead of installing it in parallel.)

I'm in agreement with you, which is why I want to carry on with what I 
have for as long as possible.  Upgrading your tools and inadvertently 
breaking things is a bitch.  Fortunately your suggestion above worked.

-- 

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com
0
Tim
6/5/2015 6:53:32 PM
Reply:

Similar Artilces:

I don't mind Linux. It's the fan club I can't stand.
Linux: A sheer waste of processing time. On Thu, 09 Feb 2006 23:42:08 -0500, Ana Thema wrote: > Linux: A sheer waste of processing time. Ana Thema ... a witch in search of batteries... -- Rick <http://ricks-place.tripod.com/sound/2cents.wav> In comp.os.linux.advocacy, Ana Thema <anathema@gmail.net> wrote on Thu, 09 Feb 2006 23:42:08 -0500 <o96ou15hrlhepdpdr7pkbefq3ep4e31ve1@ax4.com>: > Linux: A sheer waste of processing time. > Well of course it is; everyone should just use Windows instead. The occasional hangs, glitches, and crashes are more than compensa...

Tomcat can't 'see' new files
Hello all. This might be slightly off topic for this forum, but I'm betting there's some of you out there with some experience with Apache Tomcat. Here's my problem. I have an applet that is used for scanning document images. When the applet loads, it loads a multipage tiff file, and via a different command line based application, splits the pages in to single page tiff files with names in the format of pageaa.tif, pageab.tif, etc. My problem is that when the pages get 'split' apart, Tomcat doesn't seem to recognize that the new files exist. i.e. If i point my bros...

It's 2008, and Linux can't move big files
"Hardy just cannot cope with big file moving on MY SYSTEM. I tried moving a file of 1 Gig and the whole system just froze. Only 1 out of 5 or 6 can be successful without crashing. I am running my STABLEST 2.6.24.18. I have no luck with other verions, they are the worst in terms of stability WHILE MOVING BIG FILES." http://ubuntuforums.org/showthread.php?t=844005 On Fri, 11 Jul 2008 23:46:09 -0400, DFS wrote: > "Hardy just cannot cope with big file moving on MY SYSTEM. I tried > moving a file of 1 Gig and the whole system just froze. Only 1 out of 5 > or 6 can ...

why search engines don't or can't index all parts of a file when it's of large size?
why search engines don't or can't index all parts of a file when it's of large size? entrepreneur schrieb: > why search engines don't or can't index all parts of a file when it's > of large size? A search engine cannot distinguish between files that are stored physically on a webserver and answers that are generated on the fly, like by scripts. It's a simple exercise to generate a cgi script that generates a list of some million random words, even non-stop-words. So the programmers of a search engine must apply different strategies to hand...

Why can't the rest of my network see my Linux box's hostname?
Hi all, Apologies in advance if this is a FAQ - I couldn't find an FAQ list. I would appreciate some help/advice about getting my network right. I have a small business network with Macs (running Mac OS X) and a variety of Windows PCs. This network is connected to a Netgear DG834 ADSL router and thence to my ISP. I have added a new Linux box to this network today, running Fedora Core 2. When I look at the list of attached devices in the Netgear console it sees the Linux box as hostname marple and ip address 192.168.0.6. The hostname setting on the box is marple. However when I...

Maybe it's a security problem? File() can't see remote drives
It seems that the java.io.File() class can't see files and directories on other computers on a particular Windows network. For example: C:\ is a local drive Z:\ is a mapped drive on another computer (new File("C:\\mydir\myfile.txt")).exists() == true; (new File("Z:\\mydir\myfile.txt")).exists() == false; myfile *does* exist on the Z: drive. You can navigate to it using Windows Explorer, click on it, and edit it. You can also cd to this drive at the command prompt. My best guess is that this is a security/authentication issue. The network uses Active Directory to au...

OT: Ah Lawyers. Can't live with 'em, can't shoot them...
http://zdnet.com.com/2100-1104_2-1024234.html Is Google's cache cutting a cash flow? By Stefanie Olsen CNET News.com July 10, 2003, 7:03 AM PT Quote: "Many of us copyright lawyers have been waiting for this issue to come up: Google is making copies of all the Web sites they index and they're not asking permission," said Fred von Lohman, an attorney at the Electronic Frontier Foundation. "From a strict copyright standpoint, it violates copyright." * To join/leave the list, search archives, change list settings, * * etc., please visit http://rave...

Re: OT: Ah Lawyers. Can't live with 'em, can't shoot them...
Mark writes: > Is Google's cache cutting a cash flow? But on the positive side, last week the federal 9th circuit court affirmed that offering "thumbnails" of graphic images is "fair use"... http://yro.slashdot.org/article.pl?sid=03/07/07/2141216 G. * To join/leave the list, search archives, change list settings, * * etc., please visit http://raven.utc.edu/archives/hp3000-l.html * ...

Re: OT: Ah Lawyers. Can't live with 'em, can't shoot them...
Does that mean that every PC that maintains a cache of web content is violating copyright ? -----Original Message----- From: Mark Wonsil [mailto:wonsil@4m-ent.com] Sent: Friday, July 11, 2003 10:40 AM To: HP3000-L@RAVEN.UTC.EDU Subject: [HP3000-L] OT: Ah Lawyers. Can't live with 'em, can't shoot them... http://zdnet.com.com/2100-1104_2-1024234.html Is Google's cache cutting a cash flow? By Stefanie Olsen CNET News.com July 10, 2003, 7:03 AM PT Quote: "Many of us copyright lawyers have been waiting for this issue to come up: Google is making cop...

Re: OT: Ah Lawyers. Can't live with 'em, can't shoot them... #2
> -----Original Message----- > From: John Lee [mailto:jlee@vaskecomputer.com] > Sent: Friday, July 11, 2003 11:41 AM > To: HP3000-L@RAVEN.UTC.EDU > Subject: Re: [HP3000-L] OT: Ah Lawyers. Can't live with 'em, > can't shoot > them... > > > Good question. And what if it's a cookie? And how do you > determine that? > And if I get a cookie that I didn't "authorize", am I entitled to > compensation for rental use of my disk space? > > John Lee Or worse yet, what if it's one of these: Hackers Hi...

SQL Server Management Studio can't 'see' the 2005 engine?? But can see 2000 ?!?
Hello, I had SQL2000 server running fine on the windows 2003 box. I then installed SQL 2005 Express. They both worked together fine. I then uninstalled SQL 2005 Express and installed SQL 2005 Server. But when I open SQL Server Management Studio, I can only connect to the SQL 2000 engine. In the Object explorer, it says v8.0.2039 (which I think is SQL 2000 Server, because I can see the existing SQL 2000 databases). How can I get SQL Server Management Studio to 'see' the SQL 2005 database engine so I can create tables? I *think* its running because there is the 'sqlservr.exe...

Windows can't see Apache on Linux machine when in one location, can in other. Linux PC can see server in both locations.
We have two offices A and B, connected by kilostream. We have a Linux box in location A, running Mandrake 9 and the Apache web server. We have some Linux boxes in location B, and loads of Windows machines. The problem is that whenever a Windows box is in location B, it can't see any pages served up by the Linux based web server in A. It can ping it, but if you telnet to port 80 from the Windows machine you get nothing back. If I pick up the Windows machine, and transport it to location A, plug it into the network, all works OK. At the moment I'm using SQUID on a Linux box in locat...

Can't mount CD's or DVD's
The system: Dual Core Athlon 4Gig Mem. OS Opensuse 10.0 Kernel 2.6.13-15.12-smp x86_64 I've got 2 DVD drives. A cheap IDE DVD burner that lists as "DC DQ60" under the hardware listing and an old Creative SCSI DVD-RAM RAM1220S. They both were previously working fine 2 or 3 weeks ago. Now neither one will mount any media I place in either one. I tried several CD's and DVD's that all mount fine in both a Suse 10.1 system and a RedHat EL 4.0 system. They contain various OS installs. Both drives are recognized and are listed in the YaST hardware listing. Both drives open wh...

COLA losers are fooking cretins, they can't see what's infront of they're noses
Who are the trolls. Linux advocates of course! Every troll here, including mine, is perpetrated by a COLA advocate regular. Some, like me, want to have fun. Others do it on purpose to make Windows/Mac users look stupid, and create a climate whereby troops are continuously in hate Microsoft mode. I can tell you who I believe the perpetrators are. Flatfish, Simon Cooke,Erik Funkenbusch,kerke = Peter Kohlmann K-Man (and sock pupets) = 7 Mike Cox,DFS,GPF,Windows_mvp = Rapskat Jeff Relf = John Bailo Shmell-dakaka = Linonut Me = ???? (I'm not telling, so there) The list could go on, and on...

Web resources about - OT, Linux: bash can't see a file that's there, really! - comp.arch.embedded

Resources last updated: 1/25/2016 2:29:34 PM