Как вы компилируете libssh, mysql и net-snmp в один Makefile для Ubuntu?

mysql gcc net-snmp

166 просмотра

1 ответ

31 Репутация автора

Я пишу программу для мониторинга нескольких сетевых коммутаторов. Сегодня я попытался добавить библиотеку libssh в проект, но не могу заставить ее скомпилироваться. Это кажется простой вещью, но я не мог найти ответ, погуглив.

Мне удалось скомпилировать тестовую программу с помощью команды.

gcc libssh.c -lssh

Я не могу заставить -lssh работать в моем make-файле.

CC=gcc
CFLAGS=-I.

LIBS=`net-snmp-config --libs` `mysql_config --cflags --libs` `-lssh`

TARGET = snmpmon

$(TARGET): $(TARGET).c
        $(CC) $(CFLAGS) -o $(TARGET) $(TARGET).c $(LIBS)

clean:
        $(RM) $(TARGET)

Я предполагаю, что это что-то простое, любое предложение?

gcc -I. -o snmpmon snmpmon.c `net-snmp-config --libs` `mysql_config --cflags --libs` `-lssh --libs`
/bin/sh: 1: -lssh: not found
/tmp/cc65Loeb.o: In function `GetMACinfo':
snmpmon.c:(.text+0x26): undefined reference to `ssh_new'
snmpmon.c:(.text+0x47): undefined reference to `ssh_options_set'
snmpmon.c:(.text+0x5c): undefined reference to `ssh_options_set'
snmpmon.c:(.text+0x71): undefined reference to `ssh_options_set'
snmpmon.c:(.text+0x7d): undefined reference to `ssh_free'
collect2: error: ld returned 1 exit status
Makefile:13: recipe for target 'snmpmon' failed
make: *** [snmpmon] Error 1
Автор: Sam Sanders Источник Размещён: 18.07.2016 03:55

Ответы (1)


1 плюс

31 Репутация автора

Хорошо, проблема была в -lsshтом, что make-файлу не нравятся лишние метки.

Автор: Sam Sanders Размещён: 18.07.2016 04:52
Вопросы из категории :
32x32