Ошибка при сборке разделяемой библиотеки. Язык С, Решено (Ругается на функцию инициализации)

Модератор: Модераторы разделов

Аватара пользователя
kt315e
Сообщения: 318
ОС: Debian 11

Ошибка при сборке разделяемой библиотеки. Язык С, Решено

Сообщение kt315e »

Код:

#include <stdlib.h> #include <stdio.h> //Глобальные данные FILE *log_file; void _init() //Функция инициализации глобальных значений при загрузке библиотеки { log_file = fopen("log","w"); //Запись в лог fprintf(log_file,"init: svrtk_sph\n"); return; }

Компилирую:
$ gcc -fPIC -c proba.c -o proba.o
$ gcc -shared -olibproba.so proba.o
proba.o: In function `_init':
proba.c:(.text+0x0): multiple definition of `_init'
/usr/lib/gcc/i486-linux-gnu/4.3.2/../../../../lib/crti.o:/build/buildd/glibc-2.7/build-tree/i386-libc/csu/crti.S:15: first defined here
collect2: выполнение ld завершилось с кодом возврата 1
Спасибо сказали:
Аватара пользователя
CycaHuH
Сообщения: 85
ОС: FreeBSD; Archlinux; Calculate

Re: Ошибка при сборке разделяемой библиотеки. Язык С, Решено

Сообщение CycaHuH »

1.
http://mech.math.msu.su/~zubr/library.html

Раздел "Функции _init и _fini"

2.

Код: Выделить всё

$ gcc -fPIC -c proba.c -o proba.o
$ gcc -shared -nostdlib -olibproba.so proba.o
Спасибо сказали:
Аватара пользователя
kt315e
Сообщения: 318
ОС: Debian 11

Re: Ошибка при сборке разделяемой библиотеки. Язык С, Решено

Сообщение kt315e »

CycaHuH писал(а):
11.01.2009 19:29
1.
http://mech.math.msu.su/~zubr/library.html

Раздел "Функции _init и _fini"

2.

Код: Выделить всё

$ gcc -fPIC -c proba.c -o proba.o
$ gcc -shared -nostdlib -olibproba.so proba.o

Спасибо
Спасибо сказали: