我建立了名为libCalculator.so的动态库。该库包括math.h中的__sin函数。
我想在CalculatorApp.cpp中使用此共享库。
CalculatorApp包含主要功能。
我使用命令进行编译

结果-> ./lib/libCalculator.so:未定义对__sin的引用
我该怎么办 ?

最佳答案

我后来才明白。解决方案如下->

> g++ -I ./inc -c -fPIC -o obj/Calculator.o src/Calculator.cpp
> g++ -o lib/libCalculator_dynamic.so obj/Calculator.o -dynamic -lm -shared -fPIC
> g++ -c -I./inc -o obj/CalculatorApp.o src/CalculatorApp.cpp
> g++ -o bin/calculatorapp_dynamic obj/CalculatorApp.o lib/libCalculator_dynamic.so

我还修复了另一个错误->

在CalculatorApp.cpp中,我进行了更改
#include "Calculator.h" ---> #include "../inc/Calculator.h"

关于compiler-errors - 共享库链接-未定义对符号错误的引用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24088531/

10-10 13:20