Как создать библиотеку C с CodeBlocks? - PullRequest
0 голосов
/ 19 мая 2018

Как я могу создать библиотеку C в CodeBlocks, которую можно определить и использовать как стандартную библиотеку с помощью команды #include?

На самом деле я хочу создать простую библиотеку, состоящую из нескольких функций.

Ответы [ 2 ]

0 голосов
/ 19 мая 2018

просто библиотека?Я не знаю, что ты имеешь в виду.если вы хотите использовать как стандартную библиотеку, вы можете просто написать заголовочный файл.именно так.Головной файл: test.h

#ifndef TEST_INCLUDED
#define TEST_INCLUDED
int test_func() {
    return 1;
}
#endif

исходный файл: main.c

#include "test.h"
#include <stdio.h>

int main(void) {
    if (test_func()) {
        printf("test success\n");
    }
}

Если вы хотите создать файл динамической библиотеки, вы можете выполнить следующую команду:

gcc -shared -fPIC -o library.so xxx.c

файл статической библиотеки:

ar rcs library.a bar1.o bar2.o
0 голосов
/ 19 мая 2018

Обычно вам нужен файл .h для определений заголовков и .c, содержащий исходный код.

Пример:

/* command.h */

#ifndef COMMAND_H
#define COMMAND_H

int func(void);

#endif /* COMMAND_H */

/* command.c */

#include "command.h"

int func(void)
{
    return 0;
}

/* main.c */

#include <stdio.h>
#include "command.h"

int main(void)
{
    printf("%d\n", func());
    return 0;
}

ifndef используется для предотвращения включения файла более одного раза.

Скомпилируйте его, включив оба .c файла в командной строке:

gcc -o demo main.c command.c

Или, в вашем случае, следуйте этому руководству , чтобы скомпилировать несколько файлов в кодовых блоках.

...