У меня есть следующие файлы: help.cpp help.h help.o main.cpp , и я хочу создать статическую библиотеку.Компиляция vs Статическая связь
help.cpp
#include <iostream>
#include "help.h"
using namespace std;
void hello()
{
cout << "hi" << endl;
}
help.h
#ifndef HELP_H
#define HELP_H
void hello();
#endif
main.cpp
#include <iostream>
#include "help.h"
using namespace std;
int main()
{
hello();
return 0;
}
Чтобы создать статическую LIB:
ar rcs libST.a help.o
g++ main.cpp -L . -l ST #to create my binary
Я побежал, он распечатывается
hi
Я подумал, почему бы не сделать как это:
g++ main.cpp libST.a
, и это сработало.
Скажите, пожалуйста, какая разница между командами 2 и 3?
Название немного запутанно, любые другие предложения? – Oleg