Использование CUTE для тестов C ++ в Eclipse

0

Я читал онлайн, что должен взять мой существующий проект, который находится на стадии разработки, вывести из него общую библиотеку и использовать эту библиотеку для тестирования. То, что я планирую сделать, - это переместить всю мою текущую работу в новый проект eclipse с общей библиотекой, использовать это для тестирования на ходу, а также продолжить разработку в этом новом проекте общей библиотеки, который я буду использовать для тестирования и разработки. Однако, когда я нажимаю build для проекта общей библиотеки, так что я вижу, что изменения, которые я сделал там, компилируются вообще, я получаю

Вызов: Cross G++ Linker G++ -shared -o "libMatchingEngineLibrary.so"./src/Fill.o./src/GlobalMatchingEngine.o./src/Main.o./src/Order.o./src/OrderBook.o./src/SingleFifoMatchingEngine.o./src/SingleMatchingEngine.o
/usr/bin/ld:./src/Fill.o: перемещение R_X86_64_32S против 'vtable for Fill' не может использоваться при создании общего объекта; перекомпилировать с помощью -fPIC./src/Fill.o: не удалось прочитать символы: Bad value collect2: ld возвращен 1 статус выхода make: * [libMatchingEngineLibrary.so] Ошибка 1

Почему я даже не могу создать этот проект общей библиотеки, не говоря уже о том, чтобы начать его тестировать? Что я делаю не так? Должен ли я его построить? Хорошо ли, если я занимаюсь разработкой такого проекта совместно используемой библиотеки (что я хочу сделать только для удобства проведения тестирования и разработки параллельно)?

Изменение: класс Fill, упомянутый в ошибке, в алфавитном порядке является первым классом в проекте. Я строю, нажимая значок молотка на затмение.

Теги:
unit-testing

1 ответ

0

Эта ошибка говорит точно, что вам не хватает. Перекомпиляция с флагом -fPIC. Это позволит "Позиционировать независимый код", который вы, вероятно, должны понять, прежде чем пытаться создавать библиотеки общих объектов. Удачи!

  • 0
    Как мне сделать это в затмении? Я не компилирую из терминала, я просто строю внутри IDE.
  • 0
    Я никогда не использовал eclipse, но я хотел бы представить, что вы переходите к чему-то вроде свойств проекта и ищете что-то вроде «дополнительных флагов компилятора»

Ещё вопросы

Сообщество Overcoder
Наверх
Меню