This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Last revision Both sides next revision | ||
установка_по_из_исходных_текстов [2011/02/26 11:17] val |
установка_по_из_исходных_текстов [2022/07/18 17:12] val [Использование make для сопровождения файлов конфигурации сервиса] |
||
---|---|---|---|
Line 3: | Line 3: | ||
===== Учебный пример ===== | ===== Учебный пример ===== | ||
- | В ubuntu понадобится libc6-dev | + | |
==== Простейшая программа ==== | ==== Простейшая программа ==== | ||
Line 10: | Line 10: | ||
</code><code> | </code><code> | ||
#include <stdio.h> | #include <stdio.h> | ||
- | main () { | + | int main () { |
printf("Hello World\n"); | printf("Hello World\n"); | ||
} | } | ||
Line 26: | Line 26: | ||
#include <stdio.h> | #include <stdio.h> | ||
extern char* str; | extern char* str; | ||
- | main () { | + | int main () { |
- | printf(str); | + | printf("%s",str); |
} | } | ||
</code><code> | </code><code> | ||
Line 41: | Line 41: | ||
Hello World 3 | Hello World 3 | ||
</code> | </code> | ||
+ | |||
==== Использование утилиты make ==== | ==== Использование утилиты make ==== | ||
<code> | <code> | ||
+ | # apt install make | ||
+ | |||
$ cat Makefile | $ cat Makefile | ||
</code><code> | </code><code> | ||
hello.exe: hello.o string.o | hello.exe: hello.o string.o | ||
- | cc hello.o string.o -o hello.exe | + | cc hello.o string.o -o hello.exe |
hello.o: hello.c | hello.o: hello.c | ||
- | cc -c hello.c | + | cc -c hello.c |
string.o: string.c | string.o: string.c | ||
- | cc -c string.c | + | cc -c string.c |
</code><code> | </code><code> | ||
$ cat string.c | $ cat string.c | ||
Line 63: | Line 66: | ||
Hello World 4 | Hello World 4 | ||
</code> | </code> | ||
- | |||
==== Использование меток в файле конфигурации make ==== | ==== Использование меток в файле конфигурации make ==== | ||
<code> | <code> | ||
$ cat Makefile | $ cat Makefile | ||
</code><code> | </code><code> | ||
+ | ... | ||
install: | install: | ||
- | cp hello.exe /usr/local/bin | + | cp hello.exe /usr/local/bin |
clean: | clean: | ||
- | rm *.o | + | rm *.o |
- | rm *.exe | + | rm *.exe |
</code><code> | </code><code> | ||
$ sudo make install | $ sudo make install | ||
Line 84: | Line 87: | ||
rm *.exe | rm *.exe | ||
</code> | </code> | ||
- | ===== Пример установки текстового браузера ===== | ||
- | В ubuntu понадобится libncurses5-dev | + | ==== Использование make для сопровождения файлов конфигурации сервиса ==== |
+ | |||
+ | * Модуль AppArmor [[Модуль AppArmor#Определение наличия и правка профилей для служб]] | ||
<code> | <code> | ||
- | $ fetch http://lynx.isc.org/lynx2.8.5/lynx2.8.5.tar.bz2 | + | student@gate:~$ mkdir dhcp |
+ | |||
+ | student@gate:~$ cd dhcp/ | ||
+ | |||
+ | student@gate:~/dhcp$ cp /etc/dhcp/dhcpd.conf . | ||
+ | |||
+ | student@gate:~/dhcp$ cat Makefile | ||
+ | </code><code> | ||
+ | test: | ||
+ | dhcpd -t -cf dhcpd.conf | ||
+ | install: | ||
+ | cp dhcpd.conf /etc/dhcp/dhcpd.conf | ||
+ | systemctl restart isc-dhcp-server | ||
+ | </code><code> | ||
+ | student@gate:~/dhcp$ make test | ||
+ | |||
+ | student@gate:~/dhcp$ sudo make install | ||
+ | </code> | ||
+ | |||
+ | ===== Пример установки текстового браузера ===== | ||
+ | |||
+ | <code> | ||
+ | freebsd# fetch http://invisible-mirror.net/archives/lynx/tarballs/lynx2.8.5rel.1.tar.gz | ||
или | или | ||
- | $ wget http://lynx.isc.org/lynx2.8.5/lynx2.8.5.tar.bz2 | + | gentoo# wget http://invisible-mirror.net/archives/lynx/tarballs/lynx2.8.9rel.1.tar.gz |
- | $ tar -xvf lynx2.8.5.tar.bz2 | + | # tar -xvf lynx2.8.*.tar.gz |
- | $ cd lynx2-8-5 | + | # cd lynx<TAB> |
- | $ more README | + | # more README |
- | $ ./configure --prefix=/home/userX/ | + | # ./configure --help |
- | $ make | + | gentoo# ./configure --prefix=/usr/local |
+ | freebsd# ./configure --prefix=/usr/local/lynx | ||
- | $ make install | + | # make |
- | $ make clean | + | # make install |
+ | |||
+ | # lynx https://ya.ru !!! не работает, нужно было собирать с поддержкой ssl !!! | ||
+ | # lynx http://val.bmstu.ru | ||
+ | # lynx http://www.bmstu.ru | ||
+ | |||
+ | # make uninstall | ||
- | $ lynx http://www.ru | + | # make clean |
</code> | </code> |