Как программы в каталоге / bin скомпилированы в нечитаемый формат?

На самом деле мы используем эту вещь, называемую «бормотать» внутри Canonical. Он организован как IRC-сервер с различными комнатами и базовой текстовой способностью. Отлично подходит для специальных встреч и немного интереснее, чем просто гулять в IRC. Конфигурация может быть лучше, но как только вы получите правильную настройку микрофона и настроитесь на свои клавиши для разговора, вы почти все настроены.

https://launchpad.net/ubuntu/+ источник / бормотать / 1.1.8-3

1
задан 26 August 2012 в 18:34

9 ответов

Введение

Когда программа скомпилирована из исходного кода C или C ++, компилятор, такой как gcc (см. ниже), переводит этот код в собственный двоичный язык процессора, так что программа может быть выполнена. Таким образом, считываемый человеком материал (исходный код) превращается в нечитаемый для чтения формат (машиночитаемый двоичный код).

Введение

Если вы введете echo $PATH, вы увидите расположение всех исполняемых файлов в системе, как скомпилированных двоичных файлов, так и скриптов:

/home/mike/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

В инструментах иерархии иерархии файловой системы, таких как cat и getty, присутствуют соответственно в /bin и /sbin, а также другие инструменты, такие как dpkg и chroot в /usr/bin и /usr/sbin соответственно. Если вы скомпилируете программу, загрузив исходный код, настроив сборку и установив ее, ваша программа по умолчанию должна войти в /usr/local/bin и другие ее файлы в иерархию /usr/local.

Компиляторы [ ! d9]

Возможно, одним из наиболее известных инструментов, используемых для компиляции двоичных файлов, является gcc, который известен как сборник компиляторов GNU и ранее как компилятор GNU C; версия, поставляемая с Ubuntu 12.04, - gcc 4.6.3. Как отмечается в официальном руководстве GNU,

GCC is an integrated distribution of compilers for several major programming 
languages. These languages currently include C, C++, Objective-C, Objective-C++, 
Java, Fortran, Ada, and Go.

Компиляторы

Три команды ./configure, make и sudo make install (или sudo checkinstall) часто используются вместе для компиляции программы.

Запуск ./configure, помимо прочего, проверяет установленную версию gcc и подготавливает среду сборки. [F23] является одной из самых важных вещей, созданных при запуске ./configure, поскольку он направляет сборку, когда выполняется make. Руководство GNU подробно описывает процесс. В общем, правила в makefile определяют основную цель (для создания исполняемого файла), так что файлы исходного кода .c будут делаться в скомпилированные файлы (.o файлы), чтобы сгенерировать целевой исполняемый файл.

Ресурсы

Два больших ресурса - это эти руководства по сборке Ubuntu здесь и здесь, в которых содержатся некоторые полезные советы и информация для тех, кто не компилируется. Другие ресурсы, такие как руководство GNU gcc и руководство make, о котором я уже упоминал. Для получения дополнительной информации о C и создания простой небольшой программы C см. Главу 22 раздела Rute и глава 24 командной строки Linux.

12
ответ дан 25 May 2018 в 07:20

Чтобы скомпилировать программы Bash в двоичные файлы (я предполагаю, что вы спрашиваете о Bash, потому что ваш вопрос помечен bash), вы должны использовать программу Shc. Вы можете скачать его здесь. После распаковки архива скомпилируйте и установите shc с помощью cd shc-3.8.9;make;sudo make install. Теперь запустите shc -f filename, где filename - это путь к файлу, который вы хотите сделать, в формате нечитаемого кода. Shc создаст два файла: filename.x.c и filename.x. Вы можете избавиться от filename.x.c, filename - это нечитаемый файл.

1
ответ дан 25 May 2018 в 07:20
  • 1
    В компиляции сценариев bash не так много смысла. mywiki.wooledge.org/GreyCat/CompilingBad – geirha 22 August 2012 в 01:59

Один вариант. Если вы хотите увидеть, что в скомпилированных программах, используйте инструмент, например objdump, чтобы выгрузить объектный код, например:

objdump -d /bin/ls | less
1
ответ дан 25 May 2018 в 07:20

Есть 10 разных людей. Предположим, вы принадлежите ко второй группе ...: P

В каталоге bin есть только двоичные файлы (Binaries = Programms in Binary Code, всего 1 и 0)

Они скомпилированы быть машиносчитываемым. Машины знают 1 и 0 или вкл. / Выкл., True или false, ничего больше.

Это делается компилятором. Существует более одного компилятора. Я могу придумать компилятор Gnucc, или Java-Compiler, или Delphi-Compiler ... Различные компиляторы для разных языков программирования.

Попробуйте grep. Удачи!

0
ответ дан 25 May 2018 в 07:20
  • 1
    Не все команды являются скомпилированными двоичными файлами ... – geirha 22 August 2012 в 01:58
  • 2
    правильно, есть также скрипты bash и символические ссылки в каталоге bin. Сожалею. – mondjunge 22 August 2012 в 12:30

Введение

Когда программа скомпилирована из исходного кода C или C ++, компилятор, такой как gcc (см. ниже), переводит этот код в собственный двоичный язык процессора, так что программа может быть выполнена. Таким образом, считываемый человеком материал (исходный код) превращается в нечитаемый для чтения формат (машиночитаемый двоичный код).

Введение

Если вы введете echo $PATH, вы увидите расположение всех исполняемых файлов в системе, как скомпилированных двоичных файлов, так и скриптов:

/home/mike/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

В инструментах иерархии иерархии файловой системы, таких как cat и getty, присутствуют соответственно в /bin и /sbin, а также другие инструменты, такие как dpkg и chroot в /usr/bin и /usr/sbin соответственно. Если вы скомпилируете программу, загрузив исходный код, настроив сборку и установив ее, ваша программа по умолчанию должна войти в /usr/local/bin и другие ее файлы в иерархию /usr/local.

Компиляторы [ ! d9]

Возможно, одним из наиболее известных инструментов, используемых для компиляции двоичных файлов, является gcc, который известен как сборник компиляторов GNU и ранее как компилятор GNU C; версия, поставляемая с Ubuntu 12.04, - gcc 4.6.3. Как отмечается в официальном руководстве GNU,

GCC is an integrated distribution of compilers for several major programming 
languages. These languages currently include C, C++, Objective-C, Objective-C++, 
Java, Fortran, Ada, and Go.

Компиляторы

Три команды ./configure, make и sudo make install (или sudo checkinstall) часто используются вместе для компиляции программы.

Запуск ./configure, помимо прочего, проверяет установленную версию gcc и подготавливает среду сборки. [F23] является одной из самых важных вещей, созданных при запуске ./configure, поскольку он направляет сборку, когда выполняется make. Руководство GNU подробно описывает процесс. В общем, правила в makefile определяют основную цель (для создания исполняемого файла), так что файлы исходного кода .c будут делаться в скомпилированные файлы (.o файлы), чтобы сгенерировать целевой исполняемый файл.

Ресурсы

Два больших ресурса - это эти руководства по сборке Ubuntu здесь и здесь, в которых содержатся некоторые полезные советы и информация для тех, кто не компилируется. Другие ресурсы, такие как руководство GNU gcc и руководство make, о котором я уже упоминал. Для получения дополнительной информации о C и создания простой небольшой программы C см. Главу 22 раздела Rute и глава 24 командной строки Linux.

12
ответ дан 25 May 2018 в 07:20

Введение

Когда программа скомпилирована из исходного кода C или C ++, компилятор, такой как gcc (см. ниже), переводит этот код в собственный двоичный язык процессора, так что программа может быть выполнена. Таким образом, считываемый человеком материал (исходный код) превращается в нечитаемый для чтения формат (машиночитаемый двоичный код).

Введение

Если вы введете echo $PATH, вы увидите расположение всех исполняемых файлов в системе, как скомпилированных двоичных файлов, так и скриптов:

/home/mike/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

В инструментах иерархии иерархии файловой системы, таких как cat и getty, присутствуют соответственно в /bin и /sbin, а также другие инструменты, такие как dpkg и chroot в /usr/bin и /usr/sbin соответственно. Если вы скомпилируете программу, загрузив исходный код, настроив сборку и установив ее, ваша программа по умолчанию должна войти в /usr/local/bin и другие ее файлы в иерархию /usr/local.

Компиляторы [ ! d9]

Возможно, одним из наиболее известных инструментов, используемых для компиляции двоичных файлов, является gcc, который известен как сборник компиляторов GNU и ранее как компилятор GNU C; версия, поставляемая с Ubuntu 12.04, - gcc 4.6.3. Как отмечается в официальном руководстве GNU,

GCC is an integrated distribution of compilers for several major programming 
languages. These languages currently include C, C++, Objective-C, Objective-C++, 
Java, Fortran, Ada, and Go.

Компиляторы

Три команды ./configure, make и sudo make install (или sudo checkinstall) часто используются вместе для компиляции программы.

Запуск ./configure, помимо прочего, проверяет установленную версию gcc и подготавливает среду сборки. [F23] является одной из самых важных вещей, созданных при запуске ./configure, поскольку он направляет сборку, когда выполняется make. Руководство GNU подробно описывает процесс. В общем, правила в makefile определяют основную цель (для создания исполняемого файла), так что файлы исходного кода .c будут делаться в скомпилированные файлы (.o файлы), чтобы сгенерировать целевой исполняемый файл.

Ресурсы

Два больших ресурса - это эти руководства по сборке Ubuntu здесь и здесь, в которых содержатся некоторые полезные советы и информация для тех, кто не компилируется. Другие ресурсы, такие как руководство GNU gcc и руководство make, о котором я уже упоминал. Для получения дополнительной информации о C и создания простой небольшой программы C см. Главу 22 раздела Rute и глава 24 командной строки Linux.

12
ответ дан 25 May 2018 в 07:20

Введение

Когда программа скомпилирована из исходного кода C или C ++, компилятор, такой как gcc (см. ниже), переводит этот код в собственный двоичный язык процессора, так что программа может быть выполнена. Таким образом, считываемый человеком материал (исходный код) превращается в нечитаемый для чтения формат (машиночитаемый двоичный код).

Введение

Если вы введете echo $PATH, вы увидите расположение всех исполняемых файлов в системе, как скомпилированных двоичных файлов, так и скриптов:

/home/mike/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

В инструментах иерархии иерархии файловой системы, таких как cat и getty, присутствуют соответственно в /bin и /sbin, а также другие инструменты, такие как dpkg и chroot в /usr/bin и /usr/sbin соответственно. Если вы скомпилируете программу, загрузив исходный код, настроив сборку и установив ее, ваша программа по умолчанию должна войти в /usr/local/bin и другие ее файлы в иерархию /usr/local.

Компиляторы [ ! d9]

Возможно, одним из наиболее известных инструментов, используемых для компиляции двоичных файлов, является gcc, который известен как сборник компиляторов GNU и ранее как компилятор GNU C; версия, поставляемая с Ubuntu 12.04, - gcc 4.6.3. Как отмечается в официальном руководстве GNU,

GCC is an integrated distribution of compilers for several major programming 
languages. These languages currently include C, C++, Objective-C, Objective-C++, 
Java, Fortran, Ada, and Go.

Компиляторы

Три команды ./configure, make и sudo make install (или sudo checkinstall) часто используются вместе для компиляции программы.

Запуск ./configure, помимо прочего, проверяет установленную версию gcc и подготавливает среду сборки. [F23] является одной из самых важных вещей, созданных при запуске ./configure, поскольку он направляет сборку, когда выполняется make. Руководство GNU подробно описывает процесс. В общем, правила в makefile определяют основную цель (для создания исполняемого файла), так что файлы исходного кода .c будут делаться в скомпилированные файлы (.o файлы), чтобы сгенерировать целевой исполняемый файл.

Ресурсы

Два больших ресурса - это эти руководства по сборке Ubuntu здесь и здесь, в которых содержатся некоторые полезные советы и информация для тех, кто не компилируется. Другие ресурсы, такие как руководство GNU gcc и руководство make, о котором я уже упоминал. Для получения дополнительной информации о C и создания простой небольшой программы C см. Главу 22 раздела Rute и глава 24 командной строки Linux.

12
ответ дан 25 May 2018 в 07:20

Введение

Когда программа скомпилирована из исходного кода C или C ++, компилятор, такой как gcc (см. ниже), переводит этот код в собственный двоичный язык процессора, так что программа может быть выполнена. Таким образом, считываемый человеком материал (исходный код) превращается в нечитаемый для чтения формат (машиночитаемый двоичный код).

Введение

Если вы введете echo $PATH, вы увидите расположение всех исполняемых файлов в системе, как скомпилированных двоичных файлов, так и скриптов:

/home/mike/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

В инструментах иерархии иерархии файловой системы, таких как cat и getty, присутствуют соответственно в /bin и /sbin, а также другие инструменты, такие как dpkg и chroot в /usr/bin и /usr/sbin соответственно. Если вы скомпилируете программу, загрузив исходный код, настроив сборку и установив ее, ваша программа по умолчанию должна войти в /usr/local/bin и другие ее файлы в иерархию /usr/local.

Компиляторы [ ! d9]

Возможно, одним из наиболее известных инструментов, используемых для компиляции двоичных файлов, является gcc, который известен как сборник компиляторов GNU и ранее как компилятор GNU C; версия, поставляемая с Ubuntu 12.04, - gcc 4.6.3. Как отмечается в официальном руководстве GNU,

GCC is an integrated distribution of compilers for several major programming 
languages. These languages currently include C, C++, Objective-C, Objective-C++, 
Java, Fortran, Ada, and Go.

Компиляторы

Три команды ./configure, make и sudo make install (или sudo checkinstall) часто используются вместе для компиляции программы.

Запуск ./configure, помимо прочего, проверяет установленную версию gcc и подготавливает среду сборки. [F23] является одной из самых важных вещей, созданных при запуске ./configure, поскольку он направляет сборку, когда выполняется make. Руководство GNU подробно описывает процесс. В общем, правила в makefile определяют основную цель (для создания исполняемого файла), так что файлы исходного кода .c будут делаться в скомпилированные файлы (.o файлы), чтобы сгенерировать целевой исполняемый файл.

Ресурсы

Два больших ресурса - это эти руководства по сборке Ubuntu здесь и здесь, в которых содержатся некоторые полезные советы и информация для тех, кто не компилируется. Другие ресурсы, такие как руководство GNU gcc и руководство make, о котором я уже упоминал. Для получения дополнительной информации о C и создания простой небольшой программы C см. Главу 22 раздела Rute и глава 24 командной строки Linux.

12
ответ дан 25 May 2018 в 07:20

Введение

Когда программа скомпилирована из исходного кода C или C ++, компилятор, такой как gcc (см. ниже), переводит этот код в собственный двоичный язык процессора, так что программа может быть выполнена. Таким образом, считываемый человеком материал (исходный код) превращается в нечитаемый для чтения формат (машиночитаемый двоичный код).

Введение

Если вы введете echo $PATH, вы увидите расположение всех исполняемых файлов в системе, как скомпилированных двоичных файлов, так и скриптов:

/home/mike/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

В инструментах иерархии иерархии файловой системы, таких как cat и getty, присутствуют соответственно в /bin и /sbin, а также другие инструменты, такие как dpkg и chroot в /usr/bin и /usr/sbin соответственно. Если вы скомпилируете программу, загрузив исходный код, настроив сборку и установив ее, ваша программа по умолчанию должна войти в /usr/local/bin и другие ее файлы в иерархию /usr/local.

Компиляторы [ ! d9]

Возможно, одним из наиболее известных инструментов, используемых для компиляции двоичных файлов, является gcc, который известен как сборник компиляторов GNU и ранее как компилятор GNU C; версия, поставляемая с Ubuntu 12.04, - gcc 4.6.3. Как отмечается в официальном руководстве GNU,

GCC is an integrated distribution of compilers for several major programming 
languages. These languages currently include C, C++, Objective-C, Objective-C++, 
Java, Fortran, Ada, and Go.

Компиляторы

Три команды ./configure, make и sudo make install (или sudo checkinstall) часто используются вместе для компиляции программы.

Запуск ./configure, помимо прочего, проверяет установленную версию gcc и подготавливает среду сборки. [F23] является одной из самых важных вещей, созданных при запуске ./configure, поскольку он направляет сборку, когда выполняется make. Руководство GNU подробно описывает процесс. В общем, правила в makefile определяют основную цель (для создания исполняемого файла), так что файлы исходного кода .c будут делаться в скомпилированные файлы (.o файлы), чтобы сгенерировать целевой исполняемый файл.

Ресурсы

Два больших ресурса - это эти руководства по сборке Ubuntu здесь и здесь, в которых содержатся некоторые полезные советы и информация для тех, кто не компилируется. Другие ресурсы, такие как руководство GNU gcc и руководство make, о котором я уже упоминал. Для получения дополнительной информации о C и создания простой небольшой программы C см. Главу 22 раздела Rute и глава 24 командной строки Linux.

12
ответ дан 25 May 2018 в 07:20

Другие вопросы по тегам:

Похожие вопросы: