VSCode zip을 다운로드하고 압축을 풀었습니다. 바이너리 파일이 보이지만 Code
파일 관리자에서 해당 파일을 두 번 클릭해도 아무 일도 일어나지 않습니다. ./Code
콘솔에서도 시도했지만 코드만 입력 bash: ./Code: cannot execute binary file
하면 됩니다 bash: Code: command not found
. 내 생각엔 이것이 종속성 문제일 수도 있지만 어디서부터 시작해야 할지조차 모르겠습니다.
나는 파일과 폴더에 대해 chmod 777을 시도했지만 성공하지 못했습니다.
이름-a:Linux crunchbang 3.2.0-4-686-pae #1 SMP Debian 3.2.41-2 i686 GNU/Linux
strace를 실행하면 다음이 생성됩니다.
$ strace ./Code
execve("./Code", ["./Code"], [/* 25 vars */]) = -1 ENOEXEC (Exec format error)
dup(2) = 3
fcntl64(3, F_GETFL) = 0x2 (flags O_RDWR)
fstat64(3, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 2), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb76ec000
_llseek(3, 0, 0xbf9d8a88, SEEK_CUR) = -1 ESPIPE (Illegal seek)
write(3, "strace: exec: Exec format error\n", 32strace: exec: Exec format error
) = 32
close(3) = 0
munmap(0xb76ec000, 4096) = 0
exit_group(1) = ?
파일을 실행하여 생성
$ file Code
Code: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0x7a776e173e68b15269ebd273dd987b526f5ebcae, stripped
답변1
다른 Q&A를 통해 해결책을 찾았습니다.
따라서 코드를 기반으로 하면 file
64비트 실행 파일이고 uname을 기반으로 하면 내 시스템은 분명히 32비트인데 이는 내가 생각했던 것과 다릅니다.