неопределенная ссылка на символ 'pthread_create @@ GLIBC_2.2.5' при использовании CImg - PullRequest
0 голосов
/ 16 июня 2020

Я искал довольно простую библиотеку для чтения пикселей изображения для школьного проекта, и, осмотревшись, я наткнулся на CImg, но, попробовав какой-то код, я обнаружил, что получаю только ту же ошибку. Код:

#include <iostream>
using namespace std;

#include <CImg.h>
using namespace cimg_library;

int main(){
    CImg<unsigned char> src("test.png");
    int width = src.width();
    int height = src.height();
    cout << width << "x" << height << endl;
    for (int r = 0; r < height; r++)
        for (int c = 0; c < width; c++)
            cout << "(" << r << "," << c << ") ="
                 << " R" << (int)src(c,r,0,0)
                 << " G" << (int)src(c,r,0,1)
                 << " B" << (int)src(c,r,0,2) << endl;
    return 0;
}

Что дает эту ошибку:

/usr/bin/ld: main.o: undefined reference to symbol 'pthread_create@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libpthread.so.0: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
../../bmptk/Makefile.inc:1342: recipe for target 'main.exe' failed
make: *** [main.exe] Error 1

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

Edit: добавлен make-файл

# source files in this project (main.cpp is automatically assumed)
SOURCES := 

# header files in this project
HEADERS := 

# other places to look for files for this project
SEARCH  := 

# set RELATIVE to the next higher directory 
# and defer to the Makefile.* there
RELATIVE := ..
include $(RELATIVE)/Makefile.native
...