0 / 0 / 1
Регистрация: 25.12.2012
Сообщений: 32
1

Не могу подключить библиотеку libssh

10.02.2015, 10:26. Показов 2780. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
make:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
CC              := gcc
PROGRAM_NAME    := test
INCLUDE         := .
 
 
$(PROGRAM_NAME):    clean test.o
            $(CC) -o $(PROGRAM_NAME) test.o
 
test.o:         test.c
            $(CC) -I$(INCLUDE) -c test.c
 
.PHONY: clean
 
clean:          
            rm -f $(PROGRAM_NAME) *.o
test.c
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <libssh/libssh.h>
 
#include <stdio.h>
#include <stdlib.h>
 
 
int main()
{
    ssh_session my_ssh_session = ssh_new();
     
    if (my_ssh_session == NULL)
    //exit(-1);
     ;
    //...
     
    ssh_free(my_ssh_session);
   
 
    return 0;
}
в той папке где лежат эти два файлика скопирована папка libssh из папки include дистрибутив (исходники)

при попытке сборки получаю:
$ make
rm -f test *.o
gcc -I. -lssh -c test.c
gcc -o test test.o
test.o: In function `main':
test.c:(.text+0xa): undefined reference to `ssh_new'
test.c:(.text+0x1a): undefined reference to `ssh_free'
collect2: ld returned 1 exit status
make: *** [test] Ошибка 1
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.02.2015, 10:26
Ответы с готовыми решениями:

Не могу подключить библиотеку
Пытаюсь запустить простую программу с выводом &quot;Hello World&quot;, но у меня не находит функцию cout ...

Не могу подключить библиотеку
Я знаю что где-то туплю но не могу понять где,при подключении Painter среда жалуется на ее...

Не могу подключить библиотеку
Создал проект , проект C++ без использования Qt . Использую Qt Creator как IDE и тут столкнулся с...

не могу подключить библиотеку PHPWORD
Значит распаковал все у себя на сервере - pbhub.ru под этот сайт, Composer установил в root -...

11
шКодер самоучка
2227 / 1921 / 927
Регистрация: 09.10.2013
Сообщений: 4,260
Записей в блоге: 7
10.02.2015, 10:44 2
библиотеки при линковке нужно указывать в конце
Bash
1
gcc -o test test.o -lssh
0
0 / 0 / 1
Регистрация: 25.12.2012
Сообщений: 32
10.02.2015, 11:00  [ТС] 3
в make в нес такие изменения:
C
1
2
$(PROGRAM_NAME):    clean test.o
            $(CC) -o $(PROGRAM_NAME) test.o -lssh
запускаем сборку
$ gcc -o test test.o -lssh
/usr/bin/ld: cannot find -lssh
collect2: ld returned 1 exit status

проверяет какую то регистрацию???
0
923 / 639 / 198
Регистрация: 08.09.2013
Сообщений: 1,693
10.02.2015, 14:02 4
Цитата Сообщение от Exec11 Посмотреть сообщение
$ gcc -o test test.o -lssh
/usr/bin/ld: cannot find -lssh
collect2: ld returned 1 exit status
Bash
1
gcc `pkg-config --libs libssh2` -o test test.o
Перед этим установить пакет libssh2-1-dev (или аналогичный), если не установлен.
0
0 / 0 / 1
Регистрация: 25.12.2012
Сообщений: 32
10.02.2015, 17:23  [ТС] 5
pkg-config --libs libssh2
почему конфигурирование пакета???? от куда он возмется??????
я пишу программу на Си, которая должна подцепить библиотеку в исходниках через:
#include <libssh/libssh.h>
она у меня не цепляется. вопрос почему?
0
48 / 48 / 14
Регистрация: 30.03.2009
Сообщений: 523
10.02.2015, 20:20 6
Exec11, вам уже сказали, установите libssh-devel
0
0 / 0 / 1
Регистрация: 25.12.2012
Сообщений: 32
11.02.2015, 09:44  [ТС] 7
https://red.libssh.org/attachm... 6.4.tar.gz

где в исходниках libssh-devel ?
0
923 / 639 / 198
Регистрация: 08.09.2013
Сообщений: 1,693
11.02.2015, 10:32 8
Цитата Сообщение от Exec11 Посмотреть сообщение
где в исходниках libssh-devel ?
Вы бы свой вопрос на конкурс телепатов отправили. Они бы сами догадались, что вы библиотеку собрали (а может ещё и не собрали) из исходников, а не устанавливали из пакетов, как это обычно делается.

Если библиотеку уже собрали, укажите её компилятору, если нет - сначала соберите.
0
0 / 0 / 1
Регистрация: 25.12.2012
Сообщений: 32
11.02.2015, 11:34  [ТС] 9
мне из всей этой библиотеки нужна она функция. я ее хочу включить в свою программу. как это сделать?
я не хочу собирать все библиотеку в .so или .a
это возможно?

хочу так же как stdio.h
по такой же аналогии, возможно?
0
48 / 48 / 14
Регистрация: 30.03.2009
Сообщений: 523
11.02.2015, 12:45 10
Exec11, если вы просто подключите libssh.h у себя в проекте и у вас на машине НЕ будет установлена libssh-devel, вы не сможете воспользоваться функциями из данной библиотеки. Или же вам придется подключать ВСЕ исходники libssh в свой проект, что думаю вызовет у вас еще кучу вопросов. Не проще ли установить указанную библиотеку через пакетный менеджер или собрать из исходников (как больше нравится) и спокойно ей пользоваться?
0
0 / 0 / 1
Регистрация: 25.12.2012
Сообщений: 32
11.02.2015, 17:10  [ТС] 11
ок.
установил из репов:
libssh
libssh-devel
если не сложно подскажите чем они отличаются. понятно что второй пакет для разработчиков. но это не дает мне понимания.

Bash
1
2
3
4
5
6
7
8
9
$ make
rm -f test *.o
gcc -I. -c test.c 
gcc -o test test.o 
test.o: In function `main':
test.c:(.text+0xa): undefined reference to `ssh_new'
test.c:(.text+0x1a): undefined reference to `ssh_free'
collect2: ld returned 1 exit status
make: *** [test] Ошибка 1
посути ничего не изменилось.
Bash
1
2
3
4
$ rpm -qa | grep libssh
libssh-0.5.3-alt0.M60P.1
libssh-devel-0.5.3-alt0.M60P.1
libssh2-1.2.8-alt1
0
48 / 48 / 14
Регистрация: 30.03.2009
Сообщений: 523
11.02.2015, 19:19 12
Exec11, не забывайте использовать при линковке
Bash
1
-lssh
devel-пакеты содержат хедеры к соответствующим библиотекам, т.е. libssh.h находится как раз таки в libssh-devel.
0
11.02.2015, 19:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.02.2015, 19:19
Помогаю со студенческими работами здесь

Не могу подключить библиотеку algib
Кто делал дискретное двумерное преобразование фурье? Нужно преобразовать таким образом картинку. ...

Не могу подключить библиотеку SFML
Здравствуйте форумчане,проблема такая,хочу подключить библиотеку SFML сделал все как в уроках,...

Не могу подключить dll библиотеку
Вообщем есть библиотека Visa32.dll и я не могу ее подключить. Так же есть два заголовочных файла -...

Не могу подключить библиотеку Winpcap к QT Creator
Не могу подключить библиотеку Winpcap к QT Creator. прочитал статьи по этому поводу, но ничего не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru