Mam projekt C++ w Eclipse CDT, który używa niektórych funkcji z OpevCV i kompiluje się do pliku wykonywalnego i działa dobrze. Teraz chcę mieć nowy projekt C++, który wykorzystuje niektóre funkcje zdefiniowane w pierwszym. Nie mogę zmusić tych dwóch do kompilacji i połączenia ze sobą.W tym pliki źródłowe z innego projektu C++ w Eclipse CDT
Mam #include "..."
w odpowiednich plikach w nowym projekcie, dodałem stary projekt do przywołanych projektów nowego projektu oraz w ustawieniach kompilacji nowego projektu, dodałem folder źródłowy stary projekt jako opcję włączania (-I
opcja gcc).
Mam załączeniu zrzut moim Eclipse w przypadku jest to pomocne:
Błąd podane przez kompilator jest:
cel budynku: OtherProject
Wywoływanie: GCC C++ Linker
g ++ -o "Inny projekt" ./src/foo.o
./src/foo.o: W funkcji "główny":
/home/max/opencvjni/OtherProject/Debug/../src/foo.cpp:13: niezdefiniowane odniesienia do progu()”
collect2: ld zwróconym 1 wyjście statusu
make: *** [OtherProject] błąd 1
Oto kod w tych innych plików w innych zakładkach ekranu:
Threshold.cpp
#include <cv.h>
#include <highgui.h>
#include "Threshold.h"
using namespace cv;
int threshold(void) {
Mat img = imread("/home/max/opencvjni/monalisa.jpg", 0);
threshold(img, img, 127, 255, THRESH_BINARY);
imwrite("/home/max/opencvjni/monathresh.jpg", img);
return 0;
}
int main(void) {
threshold();
return 0;
}
Threshold.h
#ifndef THRESHOLD_H_
#define THRESHOLD_H_
int threshold(void);
#endif /* THRESHOLD_H_ */[/code]
- wersja Eclipse: 3.7.2 wersja
- CDT: 8.0.2.201202111925
- OS: Ubuntu 12,04
Dziękujemy za patrząc na mój post, jeśli nie ma sposobu, aby to zrobić, lub po prostu rozsądniej jest zrobić to inaczej, proszę, nie wahaj się powiedzieć.
Pozdrowienia
To nie daje odpowiedzi na pytanie. Aby skrytykować lub poprosić o wyjaśnienie od autora, pozostaw komentarz pod swoim postem. – rkhb
@rkhb Podałem alternatywny sposób konfiguracji projektu C++, który może być użyty w Eclipse CDT. Początkujący użytkownicy zwykle nie są świadomi CMake i próbują korzystać z projektów Eclipse, gdy tylko zaczną korzystać z Eclipse. Jest łatwy w użyciu, ale trudniejszy do utrzymania w czasie. – gvd
To był automatyczny komentarz z predefiniowanym tekstem z zadania przeglądu. Ktoś zgłosił twoją odpowiedź na usunięcie i ja ją poparłem. Moja opinia: jeśli chcesz odpowiedzieć "X" na "problem XY", zrób to w komentarzu. – rkhb