The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Fu....ing wxWidget "
Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (Компиляция)
Изначальное сообщение [ Отслеживать ]

"Fu....ing wxWidget "  +/
Сообщение от pavlinux (ok) on 11-Июн-11, 05:21 
1. Скачал wxWidget 2.8.12
2. Скомпилил с configure --disable-shared --with-expat=builtin --with-libjpeg=builtin \
                         --with-libpng=builtin --with-zlib=builtin \
                         --without-regex --without-libtiff
3. make install (в /usr/locale)
4. Качаю пример http://www.wxwidgets.org/docs/tutorials/hworld2.txt
5. Компилю

$ g++ hworld2.cpp `wx-config --libs --cxxflags`;

Всё зашибись.

$ g++ hworld2.cpp -static `wx-config --libs --cxxflags --static=yes`;

И тут вываливает туева хуча undefined reference


/usr/local/lib/libwx_gtk2u-2.8.a(monolib_utilsx11.o): In function `wxGetKeyState(wxKeyCode)':
utilsx11.cpp:(.text+0x928): undefined reference to `XKeysymToKeycode'
utilsx11.cpp:(.text+0x95c): undefined reference to `XGetModifierMapping'
utilsx11.cpp:(.text+0x9f4): undefined reference to `XQueryPointer'
utilsx11.cpp:(.text+0x9fc): undefined reference to `XFreeModifiermap'
utilsx11.cpp:(.text+0xa42): undefined reference to `XQueryKeymap'
/usr/local/lib/libwx_gtk2u-2.8.a(monolib_utilsx11.o): In function `wxWMspecSetState(_XDisplay*, unsigned long, unsigned long, int, unsigned long)':
window.cpp:(.text+0x4338): undefined reference to `XWarpPointer'
/usr/local/lib/libwx_gtk2u-2.8.a(monolib_displayx11.o): In function `wxClientDisplayRect(int*, int*, int*, int*)':
displayx11.cpp:(.text+0x64): undefined reference to `XInternAtom'
displayx11.cpp:(.text+0xae): undefined reference to `XDefaultRootWindow'
displayx11.cpp:(.text+0x104): undefined reference to `XGetWindowProperty'
displayx11.cpp:(.text+0x126): undefined reference to `XFree'
/usr/local/lib/libwx_gtk2u-2.8.a(monolib_displayx11.o): In function `wxDisplayImplX11::GetCurrentMode() const':
displayx11.cpp:(.text+0x214): undefined reference to `XFree'
/usr/local/lib/libwx_gtk2u-2.8.a(monolib_displayx11.o): In function `wxDisplayFactoryX11::GetFromPoint(wxPoint const&)':
displayx11.cpp:(.text+0x320): undefined reference to `XFree'
/usr/local/lib/libwx_gtk2u-2.8.a(monolib_displayx11.o): In function `wxDisplayImplX11::ChangeMode(wxVideoMode const&)':
displayx11.cpp:(.text+0x3e8): undefined reference to `XFree'
displayx11.cpp:(.text+0x3fe): undefined reference to `XFree'
/usr/local/lib/libwx_gtk2u-2.8.a(monolib_displayx11.o):displayx11.cpp:(.text+0x52d): more undefined references to `XFree' follow
/usr/local/lib/libglib-2.0.a(gregex.o): In function `get_matched_substring_number':
(.text+0x1c0b): undefined reference to `pcre_get_stringnumber'
/usr/local/lib/libglib-2.0.a(gregex.o): In function `g_match_info_next':
(.text+0x20e8): undefined reference to `pcre_exec'
/usr/local/lib/libXinerama.a(Xinerama.o): In function `find_display':
(.text+0x3b): undefined reference to `XextFindDisplay'
/usr/local/lib/libXinerama.a(Xinerama.o): In function `find_display':
(.text+0x7e): undefined reference to `XextAddDisplay'
/usr/local/lib/libXinerama.a(Xinerama.o): In function `find_display':
(.text+0x89): undefined reference to `XextCreateExtension'
/usr/local/lib/libXinerama.a(Xinerama.o): In function `XineramaQueryScreens':
(.text+0x121): undefined reference to `_XReply'
/usr/local/lib/libXinerama.a(Xinerama.o): In function `XineramaQueryScreens':
(.text+0x17b): undefined reference to `_XRead'
/usr/local/lib/libXinerama.a(Xinerama.o): In function `XineramaQueryScreens':
(.text+0x1fc): undefined reference to `_XFlush'
/usr/local/lib/libXinerama.a(Xinerama.o): In function `XineramaQueryScreens':
(.text+0x242): undefined reference to `_XEatData'
/usr/local/lib/libXinerama.a(Xinerama.o): In function `XineramaQueryScreens':
(.text+0x255): undefined reference to `XMissingExtension'
/usr/local/lib/libXinerama.a(Xinerama.o): In function `XineramaIsActive':
(.text+0x2f0): undefined reference to `_XReply'
/usr/local/lib/libXinerama.a(Xinerama.o): In function `XineramaIsActive':

$ nm /usr/lib/libX11.a | egrep -E "T _XFlush|T _XRead|T _XReply"

00000430 T _XFlushGCCache
00001010 T _XFlush
00000050 T _XRead
00000f10 T _XReadEvents
00000150 T _XReadPad
00000b50 T _XReply

Все на месте

---------------------------

Чо за НАХ?! Или в 6 утра уже спать пора?! %)

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Fu....ing wxWidget "  +/
Сообщение от gpl77 (ok) on 11-Июн-11, 13:13 
> utilsx11.cpp:(.text+0x928): undefined reference to `XKeysymToKeycode'
> utilsx11.cpp:(.text+0x95c): undefined reference to `XGetModifierMapping'
> utilsx11.cpp:(.text+0x9f4): undefined reference to `XQueryPointer'
> utilsx11.cpp:(.text+0x9fc): undefined reference to `XFreeModifiermap'
> utilsx11.cpp:(.text+0xa42): undefined reference to `XQueryKeymap'

...
> Чо за НАХ?! Или в 6 утра уже спать пора?! %)

нету libX11 и её друзей

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Fu....ing wxWidget "  +/
Сообщение от pavlinux (ok) on 11-Июн-11, 15:20 
>> utilsx11.cpp:(.text+0x928): undefined reference to `XKeysymToKeycode'
>> utilsx11.cpp:(.text+0x95c): undefined reference to `XGetModifierMapping'
>> utilsx11.cpp:(.text+0x9f4): undefined reference to `XQueryPointer'
>> utilsx11.cpp:(.text+0x9fc): undefined reference to `XFreeModifiermap'
>> utilsx11.cpp:(.text+0xa42): undefined reference to `XQueryKeymap'
> ...
>> Чо за НАХ?! Или в 6 утра уже спать пора?! %)
> нету libX11 и её друзей

Ну это я уже понял, только они есть. :)

Прокатывает вариант

g++ hworld2.cpp -static `wx-config --libs --cxxflags --static=yes` -lX11 -lX... -lX...-lX... -lX... -lX... -lX... -lX... -lX... -lfonconfig -lpango -lxcb -lglib

Вот как бы заставить gcc иль какую другую утиль самой
определить эти зависимости и подставить нужный флаг.


Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Fu....ing wxWidget "  +/
Сообщение от gpl77 (ok) on 11-Июн-11, 17:14 

> Прокатывает вариант
> g++ hworld2.cpp -static `wx-config --libs --cxxflags --static=yes` -lX11 -lX... -lX...-lX...
> -lX... -lX... -lX... -lX... -lX... -lfonconfig -lpango -lxcb -lglib
> Вот как бы заставить gcc иль какую другую утиль самой
> определить эти зависимости и подставить нужный флаг.

gnu autotools/libtool ?


Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Fu....ing wxWidget "  +/
Сообщение от pavlinux (ok) on 11-Июн-11, 17:21 
>> Прокатывает вариант
>> g++ hworld2.cpp -static `wx-config --libs --cxxflags --static=yes` -lX11 -lX... -lX...-lX...
>> -lX... -lX... -lX... -lX... -lX... -lfonconfig -lpango -lxcb -lglib
>> Вот как бы заставить gcc иль какую другую утиль самой
>> определить эти зависимости и подставить нужный флаг.
> gnu autotools/libtool ?

Для хелло ворда!\n  :)

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Fu....ing wxWidget "  +/
Сообщение от gpl77 (ok) on 11-Июн-11, 17:30 
>>> Прокатывает вариант
>>> g++ hworld2.cpp -static `wx-config --libs --cxxflags --static=yes` -lX11 -lX... -lX...-lX...
>>> -lX... -lX... -lX... -lX... -lX... -lfonconfig -lpango -lxcb -lglib
>>> Вот как бы заставить gcc иль какую другую утиль самой
>>> определить эти зависимости и подставить нужный флаг.
>> gnu autotools/libtool ?
> Для хелло ворда!\n  :)

ну, а как же линкеру догадаться с чем линковать.
если в оригинале шаблона не было, то только самому


Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Fu....ing wxWidget "  +/
Сообщение от pavlinux (ok) on 11-Июн-11, 18:06 
>>>> Прокатывает вариант
>>>> g++ hworld2.cpp -static `wx-config --libs --cxxflags --static=yes` -lX11 -lX... -lX...-lX...
>>>> -lX... -lX... -lX... -lX... -lX... -lfonconfig -lpango -lxcb -lglib
>>>> Вот как бы заставить gcc иль какую другую утиль самой
>>>> определить эти зависимости и подставить нужный флаг.
>>> gnu autotools/libtool ?
>> Для хелло ворда!\n  :)
> ну, а как же линкеру догадаться с чем линковать.

FOREACH VAR in OUTPUT(g++ hello.cpp)
    DO
      RES = SEARCH($UNDEF_REF);
      IF RES NOT NULL
         RETURN FOUND = SEARCH_LIBNAME_WHICH_INLUDE_SYSTEM_SYMBOLS(RES);      
DONE
      

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

7. "Fu....ing wxWidget "  +/
Сообщение от gpl77 (ok) on 11-Июн-11, 18:49 
>> ну, а как же линкеру догадаться с чем линковать.
> FOREACH VAR in OUTPUT(g++ hello.cpp)
>     DO
>       RES = SEARCH($UNDEF_REF);
>       IF RES NOT NULL
>          RETURN FOUND =
> SEARCH_LIBNAME_WHICH_INLUDE_SYSTEM_SYMBOLS(RES);
> DONE
> Трудно было, пля, придумать такою хню?! :)

а если библиотек несколько/разных версий/в разных каталогах/ и т.п.?

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Fu....ing wxWidget "  +/
Сообщение от NuINu (??) on 11-Июн-11, 22:48 
>>> ну, а как же линкеру догадаться с чем линковать.
>> FOREACH VAR in OUTPUT(g++ hello.cpp)
>>     DO
>>       RES = SEARCH($UNDEF_REF);
>>       IF RES NOT NULL
>>          RETURN FOUND =
>> SEARCH_LIBNAME_WHICH_INLUDE_SYSTEM_SYMBOLS(RES);
>> DONE
>> Трудно было, пля, придумать такою хню?! :)
> а если библиотек несколько/разных версий/в разных каталогах/ и т.п.?

Не страдайте фигней, копайте утилиту wx-config --libs --cxxflags --static=yes
она что то не так отрабатывает, все должно подставлсяться автоматически.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

9. "Fu....ing wxWidget "  +/
Сообщение от pavlinux (ok) on 12-Июн-11, 02:47 
> Не страдайте фигней, копайте утилиту wx-config --libs --cxxflags --static=yes
> она что то не так отрабатывает, все должно подставлсяться автоматически.

От undefined reference избавился.  

Линукется, но вот с такими варнингами...


/usr/local/lib/libwx_gtk2u-2.8.a(monolib_dlunix.o): In function `wxDynamicLibrary::RawLoad(wxString const&, int)':
dlunix.cpp:(.text+0x195): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/local/lib/libgio-2.0.a(glocalfileinfo.o): In function `lookup_gid_name':
(.text+0x206c): warning: Using 'getgrgid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/local/lib/libwx_gtk2u-2.8.a(monolib_utilsunx.o): In function `wxGetUserHome(wxString const&)':
utilsunx.cpp:(.text+0x69b): warning: Using 'getpwnam' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/local/lib/libwx_gtk2u-2.8.a(monolib_utilsunx.o): In function `wxGetUserId(wchar_t*, int)':
utilsunx.cpp:(.text+0x539): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/local/lib/libglib-2.0.a(gutils.o): In function `g_get_any_init_do':
(.text+0x11c4): warning: Using 'setpwent' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/local/lib/libglib-2.0.a(gutils.o): In function `g_get_any_init_do':
(.text+0x11d9): warning: Using 'endpwent' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/local/lib/libglib-2.0.a(gutils.o): In function `g_get_any_init_do':
(.text+0xedd): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/local/lib/libgio-2.0.a(glocalfileinfo.o): In function `lookup_uid_data':
(.text+0x1efc): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/local/lib/libX11.a(xim_trans.o): In function `_XimXTransSocketUNIXConnect':
(.text+0xcda): warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/local/lib/libICE.a(icetrans.o): In function `_IceTransGetPeerNetworkId':
(.text+0x1c86): warning: Using 'gethostbyaddr' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/local/lib/libwx_gtk2u-2.8.a(monolib_utilsunx.o): In function `wxGetFullHostName(wchar_t*, int)':
utilsunx.cpp:(.text+0xd41): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/local/lib/libICE.a(icetrans.o): In function `_IceTransSocketINETCreateListener':
(.text+0x187c): warning: Using 'getservbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
Done

В итоге, запускается в Segmentation fault :)


gdb) run
Starting program: /usr/src/gui/gui_sys/gui_main
[Thread debugging using libthread_db enabled]

Program received signal SIGSEGV, Segmentation fault.
0x00000000 in ?? ()
(gdb) where
#0  0x00000000 in ?? ()
#1  0xb72e5e48 in _init () from /lib/libpthread.so.0
#2  0x088972fe in call_init ()
#3  0x088974ad in _dl_init ()
#4  0x0888639b in dl_open_worker ()
#5  0x088848ca in _dl_catch_error ()
#6  0x08885c0d in _dl_open ()
#7  0x08848938 in dlopen_doit ()
#8  0x088848ca in _dl_catch_error ()
#9  0x08848be1 in _dlerror_run ()
#10 0x088488a5 in __dlopen ()
#11 0x0860d67f in dlopen ()
#12 0x0855a0a4 in g_module_open ()
#13 0x082e99b2 in load_modules ()
#14 0x082e9e4b in _gtk_modules_init ()
#15 0x082d34b0 in post_parse_hook ()
#16 0x0858c704 in g_option_context_parse ()
#17 0x082d30fc in gtk_parse_args ()
#18 0x082d3168 in gtk_init_check ()
#19 0x0811e6d2 in wxApp::Initialize(int&, wchar_t**) ()
#20 0x080ee90f in wxEntryStart(int&, wchar_t**) ()
#21 0x080eead7 in wxInitialize(int, wchar_t**) ()
#22 0x080eeb2c in wxEntry(int&, wchar_t**) ()
#23 0x0804963b in main (argc=1, argv=0xbffff4e4) at image.cpp:263

# strace -ff ./gui_man


...
...
access("/etc/ld.so.nohwcap", F_OK)      = 0
open("/usr/lib/libXdmcp.so.6", O_RDONLY) = 5
read(5, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300\17\0\0004\0\0\0"..., 512) = 512
fstat64(5, {st_mode=S_IFREG|0644, st_size=16972, ...}) = 0
mmap2(NULL, 19804, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 5, 0) = 0xb67ff000
mmap2(0xb6803000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 5, 0x3) = 0xb6803000
close(5)                                = 0
mprotect(0xb6846000, 4096, PROT_READ)   = 0
mprotect(0xb6858000, 4096, PROT_READ)   = 0
mprotect(0xb6aa5000, 4096, PROT_READ)   = 0
mprotect(0xb6acd000, 4096, PROT_READ)   = 0
mprotect(0xb6ad1000, 4096, PROT_READ)   = 0
mprotect(0xb6bfe000, 4096, PROT_READ)   = 0
set_tid_address(0x8c018c8)              = 7836
set_robust_list(0x8c018d0, 0xc)         = 0
futex(0xbfc1b944, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0xbfc1b944, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 1, NULL, bfc1b954) = -1 EAGAIN (Resource temporarily unavailable)
rt_sigaction(SIGRTMIN, {0xb6a943b0, [], SA_RESTORER|SA_SIGINFO, 0xb6a9de60}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0xb6a94840, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0xb6a9de60}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++

# ulimit -s  крутил всякий разный - не помогает.

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

10. "Fu....ing wxWidget "  +/
Сообщение от NuINu (??) on 12-Июн-11, 11:55 
>> Не страдайте фигней, копайте утилиту wx-config --libs --cxxflags --static=yes
>> она что то не так отрабатывает, все должно подставлсяться автоматически.
> От undefined reference избавился.
> Линукется, но вот с такими варнингами...
>
 
> /usr/local/lib/libwx_gtk2u-2.8.a(monolib_dlunix.o): In function `wxDynamicLibrary::RawLoad(wxString
> const&, int)':
> dlunix.cpp:(.text+0x195): warning: Using 'dlopen' in statically linked applications
> requires at runtime the shared libraries from the glibc version used
> for linking

а что собственно выдает ldd для собранной программы? мне кажеться что не смотря на то что это чудо таки собралось некотрых библиотек там таки не хватает. о чем свидетельствуют варнинги и моментальный сегфаулт на попытке вызова getrlimit, ну если быть точным то нету libc

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

11. "Fu....ing wxWidget "  +/
Сообщение от pavlinux (ok) on 12-Июн-11, 15:00 
> а что собственно выдает ldd для собранной программы?

statically linked

# file ./gui_main

ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), statically linked, not stripped
  
>  мне кажеться что не
> смотря на то что это чудо таки собралось некотрых библиотек там
> таки не хватает. о чем свидетельствуют варнинги и моментальный сегфаулт на
> попытке вызова getrlimit, ну если быть точным то нету libc

/usr/lib/libc.a есть, включался -L/usr/lib -lc

Ладно, хрен с ней, забейте. Вернулся на динамику.

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

12. "Fu....ing wxWidget "  +/
Сообщение от vle (ok) on 12-Июн-11, 15:37 
> FOREACH VAR in OUTPUT(g++ hello.cpp)
>     DO
>       RES = SEARCH($UNDEF_REF);
>       IF RES NOT NULL
>          RETURN FOUND =
> SEARCH_LIBNAME_WHICH_INLUDE_SYSTEM_SYMBOLS(RES);
> DONE

То, что тебе нужно реализовано в pkg-config.

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

16. "Fu....ing wxWidget "  +/
Сообщение от pavlinux (ok) on 12-Июн-11, 16:36 

> То, что тебе нужно реализовано в pkg-config.

читай ниже, как чудно работает твой pkg-config - http://www.opennet.me/openforum/vsluhforumID9/9159.html#15

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

18. "Fu....ing wxWidget "  +/
Сообщение от vle (ok) on 12-Июн-11, 16:52 
>> То, что тебе нужно реализовано в pkg-config.
> читай ниже, как чудно работает твой pkg-config -
> http://www.opennet.me/openforum/vsluhforumID9/9159.html#15

pkg-config работает, так как ему сказали согласно Do what I say!

Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

13. "Fu....ing wxWidget "  +/
Сообщение от vle (ok) on 12-Июн-11, 15:46 
>>> Прокатывает вариант
>>> g++ hworld2.cpp -static `wx-config --libs --cxxflags --static=yes` -lX11 -lX... -lX...-lX...
>>> -lX... -lX... -lX... -lX... -lX... -lfonconfig -lpango -lxcb -lglib
>>> Вот как бы заставить gcc иль какую другую утиль самой
>>> определить эти зависимости и подставить нужный флаг.
>> gnu autotools/libtool ?
> Для хелло ворда!\n  :)

Для Hello word-а могу порекомендовать mk-configure.
Не колупи себе моск autocrap-ом.

Пример ниже.

0 hello_glib2>cat Makefile
PROG =                  hello_glib2

PKG_CONFIG_DEPS =       glib-2.0>=2.1

CFLAGS +=               -DG_DISABLE_DEPRECATED=1
CFLAGS +=               -DG_DISABLE_SINGLE_INCLUDES

MKC_REQD =              0.11.0

.include <mkc.prog.mk>

0 hello_glib2>cat hello_glib2.c
#include <glib.h>
#include <locale.h>
#include <stdio.h>

int main (int argc, char** argv)
{
        setlocale (LC_ALL, "");

        puts ("Hello World!");

        printf ("glib_major_version=%i\n", (int) glib_major_version);
        printf ("glib_minor_version=%i\n", (int) glib_minor_version);
        printf ("glib_micro_version=%i\n", (int) glib_micro_version);

        return 0;
}

0 hello_glib2>mkcmake
checking for compiler type... gcc
checking for program cc... /usr/bin/cc
checking for program pkg-config... /usr/pkg/bin/pkg-config
checking for [pkg-config] glib-2.0 >= 2.1... 1 (yes)
checking for [pkg-config] glib-2.0 >= 2.1 --cflags... -I/usr/pkg/include/glib/glib-2.0 -I/usr/pkg/lib/glib-2.0/include  
checking for [pkg-config] glib-2.0 >= 2.1 --libs... -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -lglib-2.0 -lintl  
cc -DG_DISABLE_DEPRECATED=1 -DG_DISABLE_SINGLE_INCLUDES   -I/usr/pkg/include  -I/usr/pkg/include/glib/glib-2.0 -I/usr/pkg/lib/glib-2.0/include  -c hello_glib2.c
cc -L/usr/pkg/lib    -o hello_glib2 hello_glib2.o     -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -lglib-2.0 -lintl

0 hello_glib2>./hello_glib2
Hello World!
glib_major_version=2
glib_minor_version=28
glib_micro_version=6

0 hello_glib2>

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

14. "Fu....ing wxWidget "  +/
Сообщение от vle (ok) on 12-Июн-11, 15:52 
> Для Hello word-а могу порекомендовать mk-configure.
> Не колупи себе моск autocrap-ом.

Вдогонку
http://mova.org/~cheusov/pub/mk-c/mk-c.pdf

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

15. "Fu....ing wxWidget "  +/
Сообщение от pavlinux (ok) on 12-Июн-11, 16:35 
> Для Hello word-а могу

wxWidgetGTK + SDL

Debian_овская версия wxWidget не имеет  статических библиотек.

SDL зависит от libpulse-simple, которой статической вообще не существует.

glib-2.0 тянет за собой libgio-2.0, к которой есть символы "is_selinux"
что ясно дело зависит от libselinux, но в профиле pkg-config она не указана.

glib тянет за собой libpango, у котоорй есть символы ln_thai, через некоторое
время  узнал, что они живут в libthai, о зависимости которой тоже них...я
не указано в /usr/lib/pkgconfig/pango.pc


  

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

17. "Fu....ing wxWidget "  +/
Сообщение от vle (ok) on 12-Июн-11, 16:50 
>> Для Hello word-а могу
> wxWidgetGTK + SDL
> Debian_овская версия wxWidget не имеет  статических библиотек.

А зачем? Если действительно нужно, пиши в спортлото.

> SDL зависит от libpulse-simple, которой статической вообще не существует.

Вопрос тот же. Тафига тебе статика?

> glib-2.0 тянет за собой libgio-2.0, к которой есть символы "is_selinux"
> что ясно дело зависит от libselinux, но в профиле pkg-config она не указана.

-lselinux можно и руками добавить.

> glib тянет за собой libpango, у котоорй есть символы ln_thai, через некоторое
> время  узнал, что они живут в libthai, о зависимости которой тоже
> них...я
> не указано в /usr/lib/pkgconfig/pango.pc

Пиши в спортлото. С этим надо не по форумам лазить, а пакетировщикам
и/или апстриму писать.

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

19. "Fu....ing wxWidget "  +/
Сообщение от pavlinux (ok) on 12-Июн-11, 18:39 
> Пиши в спортлото. С этим надо не по форумам лазить, а пакетировщикам
> и/или апстриму писать.

Да мне вообще на форумы нельзя, если я спрашиваю, ответа не знает никто,
вот сижу как лох, даже поговорить не с кем :)


Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

20. "Fu....ing wxWidget "  +/
Сообщение от vle (ok) on 12-Июн-11, 18:54 
>> Пиши в спортлото. С этим надо не по форумам лазить, а пакетировщикам
>> и/или апстриму писать.
> Да мне вообще на форумы нельзя, если я спрашиваю, ответа не знает
> никто, вот сижу как лох, даже поговорить не с кем :)

Не льсти себе ;-)

В данном конкретном случае толкаться на форумах -- просто потеря времени.
Нужны статические библиотеки в пакетах (зачем бы???), которых там нет,
писать надо прямо по адресу, не теряя времени. Ну причем тут форум?

Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру