[pjsip] Win32 build doesn't build because of stddef.h

Eagle I Martin Baranski eagle3386 at googlemail.com
Fri Nov 9 11:46:12 EST 2007


2007/11/9, Perry Ismangil <perry at pjsip.org>:
> On 11/8/07, Eagle I Martin Baranski <eagle3386 at googlemail.com> wrote:
>
> > [100.0%] mingw32-gcc.exe -LC:\MinGW\lib
> > -LC:\MinGW\lib\gcc\mingw32\3.4.5  -o ..\bin\pjsua_vc8d.exe
> > output\pjsua-i386-win32-vc8-debug\src\pjsua\pjsua_app.o
> > output\pjsua-i386-win32-vc8-debug\src\pjsua\main.o   -s -s  -lIphlpapi
> > -ldsound -ldxguid -lnetapi32 -lmswsock -lws2_32 -lodbc32 -lodbccp32
> > -lole32 -luser32
> > output\pjsua-i386-win32-vc8-debug\src\pjsua\pjsua_app.o: In function `my_atoi':
> > M:/pj-sip/pjsip-apps/src/pjsua/pjsua_app.c:359: undefined reference to
> > `pj_strtoul'
>
> Ok, you're past compile problems now and on to linking problems. So
> 'undefined reference' errors are usually to do with the libraries you
> have compiled not being referenced.
>
> You can see the '-l' arguments does not specify pjxxxx libraries anywhere.
>
> On http://www.pjsip.org/trac/wiki/Getting_Started_Using there are some
> hints on what libraries are needed. You need to add those somewhere in
> your IDE to the libraries that needs to be linked.

Alright, looked at the link you gave me.. IMHO, I need to add
pjlib/lib, pjlib-util/lib, pjmedia/lib and pjsip/lib..

So, I've added their paths to the linker's search-paths.. But as that
failed (and because you talked about "-l" and the log talked about e.
g. "-L..\..\pjlib\lib"), I took some time, reading the trac-ticket
once more and then got the thought that I might need to add

-lpjsua-${TARGET_NAME}\
-lpjsip-ua-${TARGET_NAME}\
-lpjsip-simple-${TARGET_NAME}\
-lpjsip-${TARGET_NAME}\
-lpjmedia-codec-${TARGET_NAME}\
-lpjmedia-${TARGET_NAME}\
-lpjmedia-codec-${TARGET_NAME}\
-lpjlib-util-${TARGET_NAME}\
-lpj-${TARGET_NAME}\
-lm\
-lpthread\
-lasound\
-lssl

to the linker's options (instead of adding some paths to search for
libraries) and so I did that.. But GCC then told me:

[100.0%] mingw32-gcc.exe -L..\..\pjlib\lib -LC:\MinGW\lib
-LC:\MinGW\lib\gcc\mingw32\3.4.5  -o ..\bin\pjsua_vc8d.exe
output\pjsua-i386-win32-vc8-debug\src\pjsua\pjsua_app.o
output\pjsua-i386-win32-vc8-debug\src\pjsua\main.o   -s -lpjsua-Debug
Win32\ -lpjsip-ua-Debug Win32\ -lpjsip-simple-Debug Win32\
-lpjsip-Debug Win32\ -lpjmedia-codec-Debug Win32\ -lpjmedia-Debug
Win32\ -lpjmedia-codec-Debug Win32\ -lpjlib-util-Debug Win32\
-lpj-Debug Win32\ -lm\ -lpthread\ -lasound\ -lssl -s  -lIphlpapi
-ldsound -ldxguid -lnetapi32 -lmswsock -lws2_32 -lodbc32 -lodbccp32
-lole32 -luser32
mingw32-gcc.exe: Win32\: No such file or directory
mingw32-gcc.exe: Win32\: No such file or directory
mingw32-gcc.exe: Win32\: No such file or directory
mingw32-gcc.exe: Win32\: No such file or directory
mingw32-gcc.exe: Win32\: No such file or directory
mingw32-gcc.exe: Win32\: No such file or directory
mingw32-gcc.exe: Win32\: No such file or directory
mingw32-gcc.exe: Win32\: No such file or directory
mingw32-gcc.exe: Win32\: No such file or directory
Process terminated with status 1 (0 minutes, 2 seconds)
0 errors, 0 warnings

("Debug Win32" is how Code::Blocks calls my build target - the other
option would be "Release Win32"..)

But I refused to give up, so I tried the linker's options without that
"-${TARGET_NAME}"-stuff (e. g. "-lpjsua\" instead of
"-lpjsua-${TARGET_NAME}\") which seemed to work until.. Well..

[100.0%] mingw32-gcc.exe -L..\..\pjlib\lib -LC:\MinGW\lib
-LC:\MinGW\lib\gcc\mingw32\3.4.5  -o ..\bin\pjsua_vc8d.exe
output\pjsua-i386-win32-vc8-debug\src\pjsua\pjsua_app.o
output\pjsua-i386-win32-vc8-debug\src\pjsua\main.o   -s -lpjsua\
-lpjsip-ua\ -lpjsip-simple\ -lpjsip\ -lpjmedia-codec\ -lpjmedia\
-lpjmedia-codec\ -lpjlib-util\ -lpj\ -lm\ -lpthread\ -lasound\ -lssl
-s  -lIphlpapi -ldsound -ldxguid -lnetapi32 -lmswsock -lws2_32
-lodbc32 -lodbccp32 -lole32 -luser32
C:\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe:
cannot find -lpjsua\
collect2: ld returned 1 exit status
Process terminated with status 1 (0 minutes, 1 seconds)
1 errors, 0 warnings

Is that because PJSIP is stored on M:\, but MinGW is on the C:\-drive?

Regards,
 Martin.. :)
-- 
=====================
= ~ Code is poetry ~
=====================
= Martin Baranski
= Eagle | Eagle3386
= www.troublezone.net
= eagle3386 at gmail.com
= +49 (0)160 93317843
=====================




More information about the pjsip mailing list