Ошибка сборки : /usr/bin/ld: cannot find -lgd

327
24 января 2017, 23:10

Приветствую,

получаю данню ошибку, пытаясь собрать, вот такой вот makefile :

CC=g++
CFLAGS = -Wall -lgd -lpng -lz -ljpeg -lfreetype -lm -L/opt/lib -m32
all:    main.o f.o
    $(CC) $(CFLAGS) main.o LetsDoMagic.o -o fun
main.o: main.cpp
    $(CC) $(CFLAGS) main.cpp -o  main.o
f.o:    LetsDoMagic.asm
    nasm -f elf LetsDoMagic.asm
clean:
    rm -f *.o

Собственно ошибка частая на просторах интернета и есть много ответов на данную тему, но пока что ниодин не помог. Библиотека libgd установленна, вот пример, что бытался сделать :

ls -l /usr/lib/x86_64-linux-gnu/libgd.so

И получил результат :

lrwxrwxrwx 1 root root 18 Кст 18 14:10 /usr/lib/x86_64-linux-gnu/libgd.so -> libgd.so.3.0.20201

Потом удалил /usr/lib/x86_64-linux-gnu/libgd.so, так как посчитал её поломанной, после этого :

sudo ln -s /usr/lib/x86_64-linux-gnu/libgd.so.3.0.20201 /usr/lib/x86_64-linux-gnu/libgd.so

Пытался переустанавливать библиотеку - не изменилось. А так же добавлял каталог /usr/lib/x86_64-linux-gnu/libgd.so в /etc/ld.so.conf

echo /opt/program/lib >>/etc/ld.so.conf

Что тоже не помогло. Может есть идеи, что стоит попробовать?

P.S. После того, как убрал флаг -m32, получил такой ответ :

/usr/bin/ld: i386 architecture of input file `main.o' is incompatible with i386:x86-64 output
/usr/bin/ld: i386 architecture of input file `LetsDoMagic.o' is incompatible with i386:x86-64 output
main.o: In function `main':
main.cpp:(.text+0x3d): undefined reference to `gdImageCreate'
main.cpp:(.text+0x82): undefined reference to `gdImageColor'
main.cpp:(.text+0x398): undefined reference to `gdImageBmpPtr'
main.cpp:(.text+0x3c3): undefined reference to `LetsDoMagic(void*, int*, void*, void*)'
main.cpp:(.text+0x401): undefined reference to `std::ostream::write(char const*, int)'
collect2: error: ld returned 1 exit status
makefile:5: recipe for target 'all' failed
make: *** [all] Error 1
READ ALSO
функция для программы c++ [требует правки]

функция для программы c++ [требует правки]

добрый вечер уважаемые пользователистолкнулся с одной проблемой которую не могу решить

295
Зависание GUI при использовании QThread

Зависание GUI при использовании QThread

Появилась проблема с зависанием guiПытался запустить в отдельном потоке: mainwindow

385
FLTK: загрузка и вывод изображения

FLTK: загрузка и вывод изображения

Пытаюсь загрузить изображение из файла, но ловится такая ошибка:

291
template неправильно работает [дубликат]

template неправильно работает [дубликат]

На данный вопрос уже ответили:

321