Эй, ребята, у меня проблема, я хочу использовать свою собственную библиотеку в другой программе на C ++.
Я опишу, что я делаю, а затем хочу знать, что не так.
Сначала я создаю новый проект C ++ в виде статической библиотеки с именем «a». После этого я создаю новый класс под названием «aClass» со следующим статическим методом:
static int addTwo(int num);
Теперь я создаю программу, которая должна использовать созданную библиотеку. Я создаю новый проект C ++ под названием "b" как проект hello world. Теперь я перехожу к параметрам этого проекта и изменяю следующее:
- Добавьте путь включения проекта "a" в проект "b", чтобы eclipse увидела файл aClass.h
- Я добавляю рабочую область проекта "a" в библиотеки компоновщика
- Я добавляю "a" к библиотекам
Затем я изменяю свой код основного файла в проекте «b», добавляю заголовочный файл «a» и пишу небольшую строку кода, которая должна использовать функцию «a»:
int i = aClass::addTwo(1);
При компиляции с помощью eclipse я получаю следующую ошибку:
Building target: b
Invoking: GCC C++ Linker
g++ -L"/home/barti/workspace/a" -o"b" ./src/b.o -la
/usr/bin/ld: cannot find -la
collect2: ld returned 1 exit status
make: *** [b] Fehler 1
Что мне делать?