Если человек не знает, куда он плывёт – для него нет благоприятных ветров.
Решил тоже познакомится с Linux.
Для знакомства выбрал Ubuntu 7.04.
Так вот столкнулся с проблемой не могу найти как компилировать исходники в убунту.
В частности необходимо мне откомпилировать клиент для доступа в интернет.
Сейчас использую виндосовский клиент запущенный через wine, но работает не корректно.
Содержимое каталога с исходниками
P.S.
Заранее приношу извинения. Если не смогу ответить сразу на уточняющие вопросы, значит у меня закончились деньги на счету интернета. Значит ответ будет не сразу.
Хотя может еще и успею
Для знакомства выбрал Ubuntu 7.04.
Так вот столкнулся с проблемой не могу найти как компилировать исходники в убунту.
В частности необходимо мне откомпилировать клиент для доступа в интернет.
Сейчас использую виндосовский клиент запущенный через wine, но работает не корректно.
Содержимое каталога с исходниками
P.S.
Заранее приношу извинения. Если не смогу ответить сразу на уточняющие вопросы, значит у меня закончились деньги на счету интернета. Значит ответ будет не сразу.
Хотя может еще и успею
А во вторых нахрена вам исходники,в убунте чертова куча бинарников.
Во первых что такое клиент для доступа в инет?
У меня трафик и по этому чтоб иметь доступ в интернет необходимо запустить клиент биллинга(так что ли он называется).
Туда вводишь логин и пароль и если всё гуд то инет есть.
А во вторых нахрена вам исходники,в убунте чертова куча бинарников.
Похоже разработчики Ubuntu тоже так думают. Потому справка по командной строке скупа.
Но мне чёртова куча не нужна, мне нужна именно эта прога и скорее всего других и нет.
Кстати сама прога судя по исходникам называет Remote Authorization Daemon (ANTD)
Но на самом сайте разработчика я ничего нужного не нашел.
Кстати 2 пакет для компиляции у поминания о котором я всё же в справке нашел я поставил.
Вот как им пользоваться увы нет такого.
./configure
make
make install
Правда что случиться с зависимостями я не очень представляю.
Не выходит.
Вот текст из терминала:
art@Newcore2:~$ cd /home/art/Desktop/client_linux
art@Newcore2:~/Desktop/client_linux$ ./configure
bash: ./configure: No such file or directory
art@Newcore2:~/Desktop/client_linux$
art@Newcore2:~/Desktop/client_linux$ make
gcc -c -O2 -Wall client.c
In file included from client.c:23:
client.h:34:24: error: openssl/dh.h: No such file or directory
client.h:35:24: error: openssl/bn.h: No such file or directory
In file included from client.h:37,
from client.c:23:
deslib.h:23:25: error: openssl/des.h: No such file or directory
client.c: В функции ‘sig_int’
client.c:63: ошибка: ‘DES_ENCRYPT’ undeclared (first use in this function)
client.c:63: ошибка: (Each undeclared identifier is reported only once
client.c:63: ошибка: for each function it appears in.)
client.c: В функции ‘main’
client.c:72: ошибка: ‘DH’ undeclared (first use in this function)
client.c:72: ошибка: ‘a’ undeclared (first use in this function)
client.c:74: ошибка: ‘BIGNUM’ undeclared (first use in this function)
client.c:74: ошибка: ‘bn_pub_key’ undeclared (first use in this function)
client.c:98: предупреждение: implicit declaration of function ‘BN_new’
client.c:99: предупреждение: implicit declaration of function ‘DH_new’
client.c:100: предупреждение: implicit declaration of function ‘BN_bin2bn’
client.c:102: предупреждение: implicit declaration of function ‘DH_generate_key’
client.c:106: предупреждение: implicit declaration of function ‘BN_bn2bin’
client.c:107: ошибка: ‘DES_ENCRYPT’ undeclared (first use in this function)
client.c:124: ошибка: ‘DES_DECRYPT’ undeclared (first use in this function)
client.c:126: предупреждение: implicit declaration of function ‘DH_size’
client.c:127: предупреждение: implicit declaration of function ‘DH_compute_key’
make: *** [client.o] Ошибка 1
art@Newcore2:~/Desktop/client_linux$
art@Newcore2:~/Desktop/client_linux$ make install
make: *** Нет правила для сборки цели `install'. Останов.
art@Newcore2:~/Desktop/client_linux$
Ну поставьте openssl, написанно же)
Он и так стоит.
исходники opelssl нужны (точнее, только заголовки *.h), а стоят видимо только бинарники
Newcore, кстати, процитируй его сюда, а? странно, что пишет Нет правила для сборки цели `install'.
справка по командной строке скупа
может, ты не там смотрел? man man пробовал вводить?
вообще, никакой связи нет между командной строкой и исходниками. бинарники тоже из командной строки запускать можно, вообще-то )) а исходники компилировать через графический интерфейс
а это часом не исходники версии под windows ?
Понития не имею. Исходники лежат у провайдера и называются client_linux, и сам провайдер указывал на них как на клиента для Linux.
исходники opelssl нужны (точнее, только заголовки *.h), а стоят видимо только бинарники
Как я понимаю необходимо было выполнить вот это:
создай в каталоге с исходниками подкаталог "openssl", скопируй в него например отсюда файлы dh.h, bn.h и des.h.
Выполнил.
Результат:
art@Newcore2:~$ cd /home/art/Desktop/client_linux
art@Newcore2:~/Desktop/client_linux$ make
gcc -c -O2 -Wall client.c
In file included from client.c:23:
client.h:34:24: error: openssl/dh.h: No such file or directory
client.h:35:24: error: openssl/bn.h: No such file or directory
In file included from client.h:37,
from client.c:23:
deslib.h:23:25: error: openssl/des.h: No such file or directory
client.c: В функции ‘sig_int’
client.c:63: ошибка: ‘DES_ENCRYPT’ undeclared (first use in this function)
client.c:63: ошибка: (Each undeclared identifier is reported only once
client.c:63: ошибка: for each function it appears in.)
client.c: В функции ‘main’
client.c:72: ошибка: ‘DH’ undeclared (first use in this function)
client.c:72: ошибка: ‘a’ undeclared (first use in this function)
client.c:74: ошибка: ‘BIGNUM’ undeclared (first use in this function)
client.c:74: ошибка: ‘bn_pub_key’ undeclared (first use in this function)
client.c:98: предупреждение: implicit declaration of function ‘BN_new’
client.c:99: предупреждение: implicit declaration of function ‘DH_new’
client.c:100: предупреждение: implicit declaration of function ‘BN_bin2bn’
client.c:102: предупреждение: implicit declaration of function ‘DH_generate_key’
client.c:106: предупреждение: implicit declaration of function ‘BN_bn2bin’
client.c:107: ошибка: ‘DES_ENCRYPT’ undeclared (first use in this function)
client.c:124: ошибка: ‘DES_DECRYPT’ undeclared (first use in this function)
client.c:126: предупреждение: implicit declaration of function ‘DH_size’
client.c:127: предупреждение: implicit declaration of function ‘DH_compute_key’
make: *** [client.o] Ошибка 1
art@Newcore2:~/Desktop/client_linux$ make install
make: *** Нет правила для сборки цели `install'. Останов.
art@Newcore2:~/Desktop/client_linux$
кстати, процитируй его сюда, а?
Обезательно
Содержимое Makefile:
CC=gcc
CFLAGS= -O2 -Wall
PROGNAME=cln
OBJ= client.o hex.o deslib.o param.o strlib.o logs.o\
pkt_data.o
.c.o:
$(CC) -c $(CFLAGS) $<
all: $(PROGNAME)
$(PROGNAME): $(OBJ) Makefile
$(CC) -O2 -Wall -o $(PROGNAME) $(OBJ) -lcrypto
strip $(PROGNAME)
dep: clean
$(CC) -MM *.c > Makefile.dep
clean:
rm -f *.o $(PROGNAME)
ifneq ($(wildcard Makefile.dep),)
include Makefile.dep
endif
может, ты не там смотрел? man man пробовал вводить?
Да, не там я смотрел в Система — Справка и поддержка.
вообще, никакой связи нет между командной строкой и исходниками. бинарники тоже из командной строки запускать можно, вообще-то )) а исходники компилировать через графический интерфейс
Да, вот графический интерфейс мне б не помешал бы. Думаю удобнее былоб.
Незнание названия программы, и вообще не знание что это такое.
Я только 3-4 дня как поставил Убунту и до этого не был знаком ни с какой из Linux ОСей.
Узнаю вот знакомлюсь.
попробуйте рапоковать вот это в /usr/include
opensssl
В дебиане (и, соответственно, убунте тоже) надо делать
# apt-get install openssl-dev
а не копировать какие-то файлы куда-то хрен знает куда.
Впрочем, тут есть момент интереснее. Никому не кажется странным, что тарификатор инета крутится на клиентской тачке, а?
Да,да да.Вот только так иногда проще обьяснить человекукакие файлы ему нужны,а не просто привести магическую команду.Это всет-к никсы,где нужно понимать,как оно работает.
насчет openssl-dev поддерживаю, винтоват, ступил - толком не работал ни с убунтой, ни с дебианом
Если там не очень большой исходник, можно было бы посмотреть что он делает на самом деле.
Просто что-то подсознательное)
Правда я начинал с дженты,и испарилось оно довольно-таки быстро)))
Newcore Можете дать ссылку или скинуть исходник?
Начнём по порядку:
Enkryptor что написано в файле client.h в 34-й и 35-й строке? то бишь, откуда он пытается брать файлы openssl/*.h ? я подозреваю, оттуда, откуда их берёт в твоей системе gcc, скорее всего это каталог /usr/include/openssl
Вот содержимое этого файла:
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>
#include <time.h>
#include <openssl/dh.h>
#include <openssl/bn.h>
#include "deslib.h"
#include "pkt.h"
#include "param.h"
#include "config.h"
int recv_pkt(int sock, char * buff, struct sockaddr_in * addr);
int send_pkt(int sock, char * buff, int buff_len, struct sockaddr_in * addr);
int socket_init(struct sockaddr_in * addr);
int print_DUMP(char * ptr, int len);
int prn_log(int llevel, char *fmt, ...);
#define BUFFSIZE 2048
/* pkt_data */
int pkt_data_unpack();
int pkt_data_add(char param, unsigned char size, unsigned char * data_ptr);
unsigned char * pkt_data_get_last();
int pkt_data_get_len();
Вечно молод
попробуйте рапоковать вот это в /usr/includeopensssl
Сделал не помогло:
art@Newcore3:~/Desktop$ sudo mv openssl /usr/include
art@Newcore3:~/Desktop$ cd /home/art/Desktop/client_linux
art@Newcore3:~/Desktop/client_linux$ sudo make
gcc -c -O2 -Wall client.c
gcc -c -O2 -Wall hex.c
gcc -c -O2 -Wall deslib.c
gcc -c -O2 -Wall param.c
gcc -c -O2 -Wall strlib.c
gcc -c -O2 -Wall logs.c
gcc -c -O2 -Wall pkt_data.c
gcc -O2 -Wall -o cln client.o hex.o deslib.o param.o strlib.o logs.o pkt_data.o -lcrypto
/usr/bin/ld: cannot find -lcrypto
collect2: выполнение ld завершилось с кодом возврата 1
make: *** [cln] Ошибка 1
art@Newcore3:~/Desktop/client_linux$ make install
make: *** Нет правила для сборки цели `install'. Останов.
ehlo_kitty
# apt-get install openssl-devа не копировать какие-то файлы куда-то хрен знает куда.
openssl и так стоит изначально и деже если ввести команду на установку выдаёт что стоит самый последний.
Впрочем, тут есть момент интереснее. Никому не кажется странным, что тарификатор инета крутится на клиентской тачке, а?
Это не тарификатор, трафик считает сервер, это клиент авторизации.
Я к тому, что в 2007 году уже можно наверное выдавать инет без извратов. А таким провайдерам необходимо дать молотком по голове.
Ох, и с радостью. Т.к. и без этого глюков с сетью и поддержкой пользователей хватат.
Если там не очень большой исходник, можно было бы посмотреть что он делает на самом деле.
Пожалуста webfile.ru/1490215
Вечно молод
Можете дать ссылку или скинуть исходник?
Уже дал. Вот ссылка на разработчика topola.unity.net/antd/
Там в README еще говорится про какую-то необходимую к этому библиотеку.
Изначально стоит пакет openssl, да. А поставить нужно пакет openssl-dev