Я компилирую свой код, используя g ++
g++ -g -O3 -fPIC -shared -lstdc++ -std=c++0x -I/home/nikesh.joshi/somepath/ main.cpp /home/nikesh.joshi/ml/somepath_apis/somepath/somefile.o
Я уже включил lib с помощью команды ldconfig.
Мне нужно использовать -fPIC, потому что в конечном итоге эта библиотека будет связана с другими статическими библиотеками для формирования динамической библиотеки.
Когда я запускаю этот код, используя следующую команду
./a.out
Дает "Ошибка сегмента".
код main.cpp
#include<iostream>
using namespace std;
int main(){
cout<<"Hello";
}
Если я скомпилирую этот код, используя g ++ main.cpp, тогда код будет успешно выполнен. Мне нужно скомпилировать этот код со всей библиотекой lib, чтобы я мог использовать функции этих библиотек.
Здесь я обнаружил такую же проблему: Почему включение -fPIC для компиляции статической библиотеки вызывает ошибку сегментации во время выполнения?
Но это не решает мою проблему.