新しい環境をセットアップしました。これはChromebook(Asus flip C100P-ARMベース)にUbuntu 14.04(信頼できる)を含むchrootです。 gccとg ++がインストールされています。私は、単純な "こんにちは、世界" プログラム(test.cの)を作成し、それを経由してコンパイル:gccを使って実行可能なビルドを実行できません
gcc -o t.exe test.c
私は./t1.exe実行するために行くとき、私は以下の取得:
bash: ./t.exe: Permission denied
rootとして実行していて、./t.exeのアクセス権が広く開いていることに注意してください(chmod 777、ls -lで確認)。
だから私は間違っているかを決定しようとした - ここで私が試したものです:
not a dynamic executable
./t.exe
./t.exe: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=82a6c6227e0f7171a68c71a74c6e6396e37e6675, not stripped
%のLDD ./t.exe
%ファイルを%readelf -d ./t.exe | grepが
0x00000001 (NEEDED) Shared library: [libc.so.6]
%のdpkg -lのlibc6
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-============-============-=================================
ii libc6:armhf 2.19-0ubuntu armhf Embedded GNU C Library: Shared li
%猫/etc/ld.so.conf.d/*
# Multiarch support
/lib/arm-linux-gnueabihf
/usr/lib/arm-linux-gnueabihf
/usr/lib/arm-linux-gnueabihf/mesa-egl
/usr/lib/arm-linux-gnueabihf/mesa
/usr/lib/arm-linux-gnueabihf/libfakeroot
# libc default configuration
/usr/local/lib
%のLS -l libc.so.が必要6
lrwxrwxrwx 1 root root 14 Aug 12 19:37 libc.so.6 -> /lib/libc.so.6
%のLS -l /usr/local/lib/libc.so.6
のlrwxrwxrwx 1 root root 14 Aug 12 18:21 /usr/local/lib/libc.so.6 -> /lib/libc.so.6
%のLS -l /usr/lib/libc.so.6
lrwxrwxrwx 1 root root 14 Aug 12 19:37 /usr/lib/libc.so.6 -> /lib/libc.so.6
%のLS -l /lib/libc.so.6
lrwxrwxrwx 1 root root 34 Aug 12 18:11 /lib/libc.so.6 -> /lib/arm-linux-gnueabihf/libc.so.6
% LSと-l /lib/arm-linux-gnueabihf/libc.so.6
lrwxrwxrwx 1 root root 12 May 26 07:55 /lib/arm-linux-gnueabihf/libc.so.6 -> libc-2.19.so
%のls -l /lib/arm-linux-gnueabihf/libc-2.19.so
-rwxr-xr-x 1 root root 902876 May 26 07:56 /lib/arm-linux-gnueabihf/libc-2.19.so
% objdumpの-a /lib/arm-linux-gnueabihf/libc-2.19.so
/lib/arm-linux-gnueabihf/libc-2.19.so: file format elf32-littlearm
% /lib/arm-linux-gnueabihf/libc-2.19.so objdump -a ./t.exe
./t.exe: file format elf32-littlearm
./t。exeファイル
%のuname -aを
Linux localhost 3.14.0 #1 SMP PREEMPT Tue Aug 2 21:07:06 PDT 2016 armv7l armv7l armv7l GNU/Linux
私はborkedツールチェーンを持っていると思われるが、私は本当にこの時点で困惑。
誰でもここで何が起こっているのか、問題の発見に進む方法について考えていますか?
すごく驚くべきcmdsのリストをチェックしてこのQを保存しています...しかし、 'printf"#!/ bin/bash \ necho Hello Scripting!\ n "> ./myTest.sh; chmod 755 myTest.sh; 。/ myTest.sh'。 (私は ';'や ''などを見逃しているかもしれませんが、うまくいけばあなたはそのアイデアを得るでしょう)。これが失敗した場合、 '。/' dirまたはそのディレクトリの「上の」ディレクトリにアクセス権に間違いがあります。いくつかのアイデアについては、http://stackoverflow.com/a/26718467/620097を参照してください。がんばろう。 – shellter
'-march = i686'のようなものでコンパイルしようとしましたか? Chromebook用のバイナリはUbuntu向けではないようです(Chromebookに実行ファイルをコピーしてください)。バイブレーションが実行されていることを確認します。 – MondKin
@Mondkin - アーキテクチャが間違っています。これはARM上にあります。私が使用しているARMのオプションを指定したとしても、違いはありません。私はあなたのコメントを理解していません - 「Chromebookでは生成され、Ubuntuでは生成されません」。私はクロスツールセットを使用していません。 ChromebookでUbuntuをcroutonで実行していて、Ubuntuを実行しているchrootの内側からgccを実行します。 – youngmj