Подскажите плз
Модератор: Модераторы разделов
-
eMAZAy
- Сообщения: 2
Подскажите плз
Создал 2 простейших проги на Qt (окошко и кнопка) скомпилировал одну в исполняемый файл другую в библиотеку (name.so) Хочу при нажатии кнопки в первой чтоб запускалась вторая. А как заделать что-т никак не допру. Может кто посоветуе???
-
flook
- Сообщения: 585
- Статус: Просто flook
Re: Подскажите плз
(eMAZAy @ Суббота, 02 Июля 2005, 8:29) писал(а):Создал 2 простейших проги на Qt (окошко и кнопка) скомпилировал одну в исполняемый файл другую в библиотеку (name.so) Хочу при нажатии кнопки в первой чтоб запускалась вторая. А как заделать что-т никак не допру. Может кто посоветуе???
При компиляции первой сказать -lname.
В каждом из нас спит гений... и с каждым днем все крепче...
-
Jenizix
- Сообщения: 53
Re: Подскажите плз
system(); ???
Ушел в себя, вернусь не скоро...
________________________________
Slackware 10.1 / FluxBox 0.9.13
________________________________
Slackware 10.1 / FluxBox 0.9.13
-
eMAZAy
- Сообщения: 2
Re: Подскажите плз
Linux
При нажатии кнопки в первой проге в "слоте" проходит обработка нажатия, но что там писать чтоб запустить вторую программу из библиотеки?????????
Т.е Как мне подгрузить библиотеку и использовать функции. Я так думаю что надо запустить фенкцию main() из библиотеки, а как это сделать???????
При нажатии кнопки в первой проге в "слоте" проходит обработка нажатия, но что там писать чтоб запустить вторую программу из библиотеки?????????
Т.е Как мне подгрузить библиотеку и использовать функции. Я так думаю что надо запустить фенкцию main() из библиотеки, а как это сделать???????
-
flook
- Сообщения: 585
- Статус: Просто flook
Re: Подскажите плз
Нет не так.
Итак.
Компилить это нужно примерно так
Все B)
Итак.
Код: Выделить всё
prg1.c
extern void do_smth(void);
int main()
{
do_smth();
}
prg2.c
#include <stdio.h>
void do_smth(void)
{
printf("Hello world\n");
}Компилить это нужно примерно так
Код: Выделить всё
gcc -c prg2.c -o libprg2.so
gcc prg1.c -o prg -lop2 -L.Все B)
В каждом из нас спит гений... и с каждым днем все крепче...
-
t.t
- Бывший модератор
- Сообщения: 7390
- Статус: думающий о вечном
- ОС: Debian, LMDE
Re: Подскажите плз
(Jenizix @ Суббота, 02 Июля 2005, 11:28) писал(а):system(); ???
Супер!(eMAZAy @ Суббота, 02 Июля 2005, 12:26) писал(а):Linux
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
-
LilFox
- Сообщения: 137
- Статус: ^^.,
- ОС: Gentoo Linux
Re: Подскажите плз
Для flook:
насчет extern, это обязательно писать??? И в чем соль, если допустим я напишу не extern int smth(void); а просто int smth(void);
Я так делал - работало, даже warrings не было. кстате что там насчет флагов сборки библек, есть у кого-нить описание:
gcc some.c -Wl,--exoprt-dynamic -o some.so
Для eMAZAy: хе-хе, чувствуется виндосная школа, быть может даже Delphi или BCB
насчет extern, это обязательно писать??? И в чем соль, если допустим я напишу не extern int smth(void); а просто int smth(void);
Я так делал - работало, даже warrings не было. кстате что там насчет флагов сборки библек, есть у кого-нить описание:
gcc some.c -Wl,--exoprt-dynamic -o some.so
Для eMAZAy: хе-хе, чувствуется виндосная школа, быть может даже Delphi или BCB
Best Wishes. LilFox
Won't someone help me find my little Clare.
Won't someone help me find my little Clare.
-
Sparky
- Сообщения: 604
- Статус: core dumped
- ОС: Plan 9
Re: Подскажите плз
([MP]DisconNecT @ Пятница, 29 Июля 2005, 11:45) писал(а):Для flook:
насчет extern, это обязательно писать??? И в чем соль, если допустим я напишу не extern int smth(void); а просто int smth(void);
Я так делал - работало, даже warrings не было. кстате что там насчет флагов сборки библек, есть у кого-нить описание:
gcc some.c -Wl,--exoprt-dynamic -o some.so
Для eMAZAy: хе-хе, чувствуется виндосная школа, быть может даже Delphi или BCB
Спецификатор extern говорит компилятору о том что ф-ия определена где-то в другом месте/файле.
Блог
--------------------
GCS/M/MU/P/IT/E d- s: a- C++(+++) UBL++ P->-- L+++$ E- W+++$ N* o? K? w>--
O M-@ V- PS@ PE+ Y+ PGP+ t 5 X R* tv-->- b++ DI? D>+ G e+(++) h--- r+ y++
--------------------
GCS/M/MU/P/IT/E d- s: a- C++(+++) UBL++ P->-- L+++$ E- W+++$ N* o? K? w>--
O M-@ V- PS@ PE+ Y+ PGP+ t 5 X R* tv-->- b++ DI? D>+ G e+(++) h--- r+ y++