Contraejemplo :el comando [
, el que usas cuando escribes if [ "$foo" = bar ]
. Es lo mismo que test
, excepto que requiere el argumento final ]
y es una utilidad estándar .
Sí, es un archivo ejecutable:
# ls -l "/usr/bin/["
-rwxr-xr-x 1 root root 51920 Mar 2 2017 /usr/bin/[
.so
файлы являются динамическими библиотеками, они не запускаются сами по себе, а загружаются из других программ. Вы можете либо загрузить их из своей локальной папки, либо поместить в папку, указанную в вашей переменной PATH, и загрузить из другой программы в другом каталоге.
Как указывает Стивен Китт, у вас есть совместно используемая библиотека (, эквивалентная Windows.dll ). Принято считать, что Cython предназначен для создания модулей C для Python, а не целых программ (, эквивалентных Windows.exe ). Поэтому в Интернете вы встретите некоторое сопротивление идее, что Cython можно использовать таким образом.
Однако вы должны просмотреть этот ответ:https://stackoverflow.com/a/22040484/453851
Вы можете написать исполняемый файл, используя Cython, если вы используете компилятор C. То есть вы можете указать Cyton написать код C, используя что-то вроде:
cython3 --embed -o run.c run.py
А затем скомпилировать:
gcc -I /usr/include/python3.3m -o run run.c -lpython3.3m -lpthread -lm -lutil -ldl
Если вы не знакомы с компилятором C, я должен упомянуть, что переключатели -l
связывают вашу программу с другими .so
библиотеками. -lpython3.3m
ссылается на python3.3m.so
и имеет важное значение, но может варьироваться в зависимости от того, на какую версию Python вы хотите ссылаться.
Таким образом, вам все равно потребуются некоторые библиотеки Python, установленные в вашей системе, для запуска программы, скомпилированной таким образом.
Я заметил, что ваш вопрос также касался того, как "установить" это. Вы можете либо упаковать свои встроенные файлы как .dpkg
, а затем установить с помощью dpkg --install my-program.dpkg
. Здесь есть руководство -по этому вопросу :https://ubuntuforums.org/showthread.php?t=910717
В качестве альтернативы вы можете просто поместить файлы в нужное место в вашей системе. Упакованные программы Un -обычно относятся к /usr/local/bin
, а общие объекты — к /usr/local/lib
.