Link error

JG
John Graham
Thu, Sep 10, 2009 7:31 PM

This is not an error - far from it, it's actually a good thing! When
make says "nothing to be done for 'all'", that's because the
source/object files that your target (i.e. your executable) depends on
are all older than the target itself, so it doesn't need to waste your
time by rebuilding it.

You can force make to rebuild your target by resaving your source file
or, for example, running the 'touch' program on the file.

You need to tell make all the source/object files your target depends
on, so it knows when to rebuild your executable - if you don't know
how, a quick look at a tutorial on make should tell you what you need
to know.

John G

On Thu, Sep 10, 2009 at 6:53 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

Oh now It gives me this error:
make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build'
make[2]:'../bin/pjsua-i686-pc-mingw32' is up to date
make[2]: leaving
make -f Samples.mak
make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build'
make[2]: Nothing to be done for 'all'
make[2]: Leaving dir '/c/pjproject-1.3/pjsip-apps/build'

I have my folder rach in pjsip-apps/src/rach.
Samples.mak(pjsip-apps/build)

include ../../build/common.mak
###############################################################################

Gather all flags.

export _CFLAGS     := $(PJ_CFLAGS) $(CFLAGS)
export _CXXFLAGS:= $(PJ_CXXFLAGS)
export _LDFLAGS := $(PJ_LDFLAGS) $(PJ_LDLIBS) $(LDFLAGS)

SRCDIR := ../src/rach
OBJDIR := ./output/rach-$(TARGET_NAME)
BINDIR := ../bin/rach/$(TARGET_NAME)

rach := simple_pjsua
        rach
EXES := $(foreach file, $(rach), $(BINDIR)/$(file)$(HOST_EXE))

Previously it was working but now it doesn't . what am I missing?

I'll check out the code.

Rachel

On Thu, Sep 10, 2009 at 1:21 PM, John Graham
johngavingraham@googlemail.com wrote:

You could copy the current code that function called (one version
(don't know if it's the latest) is in

http://svn.pjsip.org/repos/pjproject/tags/0.5.0-before-conf/pjsip/src/pjsua/pjsua_inv.c)
or search through the library to find a suitable function/set of
functions.

John G

On Thu, Sep 10, 2009 at 5:34 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

Alright this time my error:
cd C:/pjproject-1.3
make CFLAGS='-Wall -Werror'

../src/rach/rach.c:In function 'ui_console_main'
../src/rach/rach.c:117:warning :implicit declaration of function
'pjsua_invite'

Is there any way to just change the call part to work in the script I
attached, coz I have to make this working.

Rachel

This is not an error - far from it, it's actually a good thing! When make says "nothing to be done for 'all'", that's because the source/object files that your target (i.e. your executable) depends on are all older than the target itself, so it doesn't need to waste your time by rebuilding it. You can force make to rebuild your target by resaving your source file or, for example, running the 'touch' program on the file. You need to tell make all the source/object files your target depends on, so it knows when to rebuild your executable - if you don't know how, a quick look at a tutorial on make should tell you what you need to know. John G On Thu, Sep 10, 2009 at 6:53 PM, Rachel Baskaran <rachelbaskaran@gmail.com> wrote: > Oh now It gives me this error: > make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build' > make[2]:'../bin/pjsua-i686-pc-mingw32' is up to date > make[2]: leaving > make -f Samples.mak > make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build' > make[2]: Nothing to be done for 'all' > make[2]: Leaving dir '/c/pjproject-1.3/pjsip-apps/build' > > I have my folder rach in pjsip-apps/src/rach. > Samples.mak(pjsip-apps/build) > > include ../../build/common.mak > ############################################################################### > # Gather all flags. > # > export _CFLAGS     := $(PJ_CFLAGS) $(CFLAGS) > export _CXXFLAGS:= $(PJ_CXXFLAGS) > export _LDFLAGS := $(PJ_LDFLAGS) $(PJ_LDLIBS) $(LDFLAGS) > > SRCDIR := ../src/rach > OBJDIR := ./output/rach-$(TARGET_NAME) > BINDIR := ../bin/rach/$(TARGET_NAME) > > rach := simple_pjsua \ >         rach \ > EXES := $(foreach file, $(rach), $(BINDIR)/$(file)$(HOST_EXE)) > > Previously it was working but now it doesn't . what am I missing? > > I'll check out the code. > > Rachel > > > On Thu, Sep 10, 2009 at 1:21 PM, John Graham > <johngavingraham@googlemail.com> wrote: >> >> You could copy the current code that function called (one version >> (don't know if it's the latest) is in >> >> http://svn.pjsip.org/repos/pjproject/tags/0.5.0-before-conf/pjsip/src/pjsua/pjsua_inv.c) >> or search through the library to find a suitable function/set of >> functions. >> >> John G >> >> >> >> On Thu, Sep 10, 2009 at 5:34 PM, Rachel Baskaran >> <rachelbaskaran@gmail.com> wrote: >> > Alright this time my error: >> > cd C:/pjproject-1.3 >> > make CFLAGS='-Wall -Werror' >> > >> > >> > ../src/rach/rach.c:In function 'ui_console_main' >> > ../src/rach/rach.c:117:warning :implicit declaration of function >> > 'pjsua_invite' >> > >> > Is there any way to just change the call part to work in the script I >> > attached, coz I have to make this working. >> > >> > Rachel >> >> _______________________________________________ >> Visit our blog: http://blog.pjsip.org >> >> pjsip mailing list >> pjsip@lists.pjsip.org >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > >
RB
Rachel Baskaran
Thu, Sep 10, 2009 8:31 PM

I have a makefile as below in my file rach along with main_rterms and
call.c(where I had renamed main.c to call.c ) hope followed the tutorial to
build.

PJBASE= C:\pjproject-1.3\

include $(PJBASE)\build.mak

CC = $(APP_CC)
LDFLAGS = $(APP_LDFLAGS)
LDLIBS = $(APP_LDLIBS)
CFLAGS = $(APP_CFLAGS)
CPPFLAGS= ${CFLAGS}

If your application is in a file named myapp.cpp or myapp.c

this is the line you will need to build the binary.

all: call

call: call.c
$(CC) -o $@ $< $(CPPFLAGS) $(LDFLAGS) $(LDLIBS)

clean:
rm -f call.o call

resaved the folder rach to pjsip-apps/src/rach.

when I ran the command: make CFLAGS='-Wall -Werror'

My command-line output was pjlib/include/pj/config_site_sample.h: no
newline at end of file.

Rachel

On Thu, Sep 10, 2009 at 3:31 PM, John Graham <johngavingraham@googlemail.com

wrote:

This is not an error - far from it, it's actually a good thing! When
make says "nothing to be done for 'all'", that's because the
source/object files that your target (i.e. your executable) depends on
are all older than the target itself, so it doesn't need to waste your
time by rebuilding it.

You can force make to rebuild your target by resaving your source file
or, for example, running the 'touch' program on the file.

You need to tell make all the source/object files your target depends
on, so it knows when to rebuild your executable - if you don't know
how, a quick look at a tutorial on make should tell you what you need
to know.

John G

On Thu, Sep 10, 2009 at 6:53 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

Oh now It gives me this error:
make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build'
make[2]:'../bin/pjsua-i686-pc-mingw32' is up to date
make[2]: leaving
make -f Samples.mak
make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build'
make[2]: Nothing to be done for 'all'
make[2]: Leaving dir '/c/pjproject-1.3/pjsip-apps/build'

I have my folder rach in pjsip-apps/src/rach.
Samples.mak(pjsip-apps/build)

include ../../build/common.mak

###############################################################################

Gather all flags.

export _CFLAGS    := $(PJ_CFLAGS) $(CFLAGS)
export _CXXFLAGS:= $(PJ_CXXFLAGS)
export _LDFLAGS := $(PJ_LDFLAGS) $(PJ_LDLIBS) $(LDFLAGS)

SRCDIR := ../src/rach
OBJDIR := ./output/rach-$(TARGET_NAME)
BINDIR := ../bin/rach/$(TARGET_NAME)

rach := simple_pjsua
rach
EXES := $(foreach file, $(rach), $(BINDIR)/$(file)$(HOST_EXE))

Previously it was working but now it doesn't . what am I missing?

I'll check out the code.

Rachel

On Thu, Sep 10, 2009 at 1:21 PM, John Graham
johngavingraham@googlemail.com wrote:

You could copy the current code that function called (one version
(don't know if it's the latest) is in

or search through the library to find a suitable function/set of
functions.

John G

On Thu, Sep 10, 2009 at 5:34 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

Alright this time my error:
cd C:/pjproject-1.3
make CFLAGS='-Wall -Werror'

../src/rach/rach.c:In function 'ui_console_main'
../src/rach/rach.c:117:warning :implicit declaration of function
'pjsua_invite'

Is there any way to just change the call part to work in the script I
attached, coz I have to make this working.

Rachel

I have a makefile as below in my file rach along with main_rterms and call.c(where I had renamed main.c to call.c ) hope followed the tutorial to build. PJBASE= C:\pjproject-1.3\ include $(PJBASE)\build.mak CC = $(APP_CC) LDFLAGS = $(APP_LDFLAGS) LDLIBS = $(APP_LDLIBS) CFLAGS = $(APP_CFLAGS) CPPFLAGS= ${CFLAGS} # If your application is in a file named myapp.cpp or myapp.c # this is the line you will need to build the binary. all: call call: call.c $(CC) -o $@ $< $(CPPFLAGS) $(LDFLAGS) $(LDLIBS) clean: rm -f call.o call resaved the folder rach to pjsip-apps/src/rach. when I ran the command: make CFLAGS='-Wall -Werror' My command-line output was *pjlib/include/pj/config_site_sample.h: no newline at end of file.* Rachel On Thu, Sep 10, 2009 at 3:31 PM, John Graham <johngavingraham@googlemail.com > wrote: > This is not an error - far from it, it's actually a good thing! When > make says "nothing to be done for 'all'", that's because the > source/object files that your target (i.e. your executable) depends on > are all older than the target itself, so it doesn't need to waste your > time by rebuilding it. > > You can force make to rebuild your target by resaving your source file > or, for example, running the 'touch' program on the file. > > You need to tell make all the source/object files your target depends > on, so it knows when to rebuild your executable - if you don't know > how, a quick look at a tutorial on make should tell you what you need > to know. > > John G > > > > On Thu, Sep 10, 2009 at 6:53 PM, Rachel Baskaran > <rachelbaskaran@gmail.com> wrote: > > Oh now It gives me this error: > > make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build' > > make[2]:'../bin/pjsua-i686-pc-mingw32' is up to date > > make[2]: leaving > > make -f Samples.mak > > make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build' > > make[2]: Nothing to be done for 'all' > > make[2]: Leaving dir '/c/pjproject-1.3/pjsip-apps/build' > > > > I have my folder rach in pjsip-apps/src/rach. > > Samples.mak(pjsip-apps/build) > > > > include ../../build/common.mak > > > ############################################################################### > > # Gather all flags. > > # > > export _CFLAGS := $(PJ_CFLAGS) $(CFLAGS) > > export _CXXFLAGS:= $(PJ_CXXFLAGS) > > export _LDFLAGS := $(PJ_LDFLAGS) $(PJ_LDLIBS) $(LDFLAGS) > > > > SRCDIR := ../src/rach > > OBJDIR := ./output/rach-$(TARGET_NAME) > > BINDIR := ../bin/rach/$(TARGET_NAME) > > > > rach := simple_pjsua \ > > rach \ > > EXES := $(foreach file, $(rach), $(BINDIR)/$(file)$(HOST_EXE)) > > > > Previously it was working but now it doesn't . what am I missing? > > > > I'll check out the code. > > > > Rachel > > > > > > On Thu, Sep 10, 2009 at 1:21 PM, John Graham > > <johngavingraham@googlemail.com> wrote: > >> > >> You could copy the current code that function called (one version > >> (don't know if it's the latest) is in > >> > >> > http://svn.pjsip.org/repos/pjproject/tags/0.5.0-before-conf/pjsip/src/pjsua/pjsua_inv.c > ) > >> or search through the library to find a suitable function/set of > >> functions. > >> > >> John G > >> > >> > >> > >> On Thu, Sep 10, 2009 at 5:34 PM, Rachel Baskaran > >> <rachelbaskaran@gmail.com> wrote: > >> > Alright this time my error: > >> > cd C:/pjproject-1.3 > >> > make CFLAGS='-Wall -Werror' > >> > > >> > > >> > ../src/rach/rach.c:In function 'ui_console_main' > >> > ../src/rach/rach.c:117:warning :implicit declaration of function > >> > 'pjsua_invite' > >> > > >> > Is there any way to just change the call part to work in the script I > >> > attached, coz I have to make this working. > >> > > >> > Rachel > >> > >> _______________________________________________ > >> Visit our blog: http://blog.pjsip.org > >> > >> pjsip mailing list > >> pjsip@lists.pjsip.org > >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > > > > > > _______________________________________________ > > Visit our blog: http://blog.pjsip.org > > > > pjsip mailing list > > pjsip@lists.pjsip.org > > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > > > > > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org >
JG
John Graham
Thu, Sep 10, 2009 9:24 PM

This is literally what it sounds like - the file doesn't end with a
new line. Find the file pjlib/include/pj/config_site_sample.h, go to
the end, add a new line.

Also, if you change the line:

CFLAGS = $(APP_CFLAGS)

to read:

CFLAGS = $(APP_CFLAGS) -Wall -Werror

you can just execute "make".

John G

On Thu, Sep 10, 2009 at 9:31 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

I have a makefile as below in my file rach along with main_rterms and
call.c(where I had renamed main.c to call.c ) hope followed the tutorial to
build.

PJBASE= C:\pjproject-1.3\

include $(PJBASE)\build.mak

CC = $(APP_CC)
LDFLAGS = $(APP_LDFLAGS)
LDLIBS = $(APP_LDLIBS)
CFLAGS = $(APP_CFLAGS)
CPPFLAGS= ${CFLAGS}

If your application is in a file named myapp.cpp or myapp.c

this is the line you will need to build the binary.

all: call

call: call.c
$(CC) -o $@ $< $(CPPFLAGS) $(LDFLAGS) $(LDLIBS)

clean:
rm -f call.o call

resaved the folder rach to pjsip-apps/src/rach.

when I ran the command: make CFLAGS='-Wall -Werror'

My command-line output was pjlib/include/pj/config_site_sample.h: no newline
at end of file.

Rachel

On Thu, Sep 10, 2009 at 3:31 PM, John Graham
johngavingraham@googlemail.com wrote:

This is not an error - far from it, it's actually a good thing! When
make says "nothing to be done for 'all'", that's because the
source/object files that your target (i.e. your executable) depends on
are all older than the target itself, so it doesn't need to waste your
time by rebuilding it.

You can force make to rebuild your target by resaving your source file
or, for example, running the 'touch' program on the file.

You need to tell make all the source/object files your target depends
on, so it knows when to rebuild your executable - if you don't know
how, a quick look at a tutorial on make should tell you what you need
to know.

John G

On Thu, Sep 10, 2009 at 6:53 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

Oh now It gives me this error:
make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build'
make[2]:'../bin/pjsua-i686-pc-mingw32' is up to date
make[2]: leaving
make -f Samples.mak
make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build'
make[2]: Nothing to be done for 'all'
make[2]: Leaving dir '/c/pjproject-1.3/pjsip-apps/build'

I have my folder rach in pjsip-apps/src/rach.
Samples.mak(pjsip-apps/build)

include ../../build/common.mak

###############################################################################

Gather all flags.

export _CFLAGS     := $(PJ_CFLAGS) $(CFLAGS)
export _CXXFLAGS:= $(PJ_CXXFLAGS)
export _LDFLAGS := $(PJ_LDFLAGS) $(PJ_LDLIBS) $(LDFLAGS)

SRCDIR := ../src/rach
OBJDIR := ./output/rach-$(TARGET_NAME)
BINDIR := ../bin/rach/$(TARGET_NAME)

rach := simple_pjsua
        rach
EXES := $(foreach file, $(rach), $(BINDIR)/$(file)$(HOST_EXE))

Previously it was working but now it doesn't . what am I missing?

I'll check out the code.

Rachel

On Thu, Sep 10, 2009 at 1:21 PM, John Graham
johngavingraham@googlemail.com wrote:

You could copy the current code that function called (one version
(don't know if it's the latest) is in

http://svn.pjsip.org/repos/pjproject/tags/0.5.0-before-conf/pjsip/src/pjsua/pjsua_inv.c)
or search through the library to find a suitable function/set of
functions.

John G

On Thu, Sep 10, 2009 at 5:34 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

Alright this time my error:
cd C:/pjproject-1.3
make CFLAGS='-Wall -Werror'

../src/rach/rach.c:In function 'ui_console_main'
../src/rach/rach.c:117:warning :implicit declaration of function
'pjsua_invite'

Is there any way to just change the call part to work in the script I
attached, coz I have to make this working.

Rachel

This is literally what it sounds like - the file doesn't end with a new line. Find the file pjlib/include/pj/config_site_sample.h, go to the end, add a new line. Also, if you change the line: CFLAGS = $(APP_CFLAGS) to read: CFLAGS = $(APP_CFLAGS) -Wall -Werror you can just execute "make". John G On Thu, Sep 10, 2009 at 9:31 PM, Rachel Baskaran <rachelbaskaran@gmail.com> wrote: > I have a makefile as below in my file rach along with main_rterms and > call.c(where I had renamed main.c to call.c ) hope followed the tutorial to > build. > > PJBASE= C:\pjproject-1.3\ > > include $(PJBASE)\build.mak > > CC = $(APP_CC) > LDFLAGS = $(APP_LDFLAGS) > LDLIBS = $(APP_LDLIBS) > CFLAGS = $(APP_CFLAGS) > CPPFLAGS= ${CFLAGS} > > # If your application is in a file named myapp.cpp or myapp.c > # this is the line you will need to build the binary. > all: call > > call: call.c > $(CC) -o $@ $< $(CPPFLAGS) $(LDFLAGS) $(LDLIBS) > > clean: > rm -f call.o call > > > resaved the folder rach to pjsip-apps/src/rach. > > when I ran the command: make CFLAGS='-Wall -Werror' > > My command-line output was pjlib/include/pj/config_site_sample.h: no newline > at end of file. > > Rachel > > > On Thu, Sep 10, 2009 at 3:31 PM, John Graham > <johngavingraham@googlemail.com> wrote: >> >> This is not an error - far from it, it's actually a good thing! When >> make says "nothing to be done for 'all'", that's because the >> source/object files that your target (i.e. your executable) depends on >> are all older than the target itself, so it doesn't need to waste your >> time by rebuilding it. >> >> You can force make to rebuild your target by resaving your source file >> or, for example, running the 'touch' program on the file. >> >> You need to tell make all the source/object files your target depends >> on, so it knows when to rebuild your executable - if you don't know >> how, a quick look at a tutorial on make should tell you what you need >> to know. >> >> John G >> >> >> >> On Thu, Sep 10, 2009 at 6:53 PM, Rachel Baskaran >> <rachelbaskaran@gmail.com> wrote: >> > Oh now It gives me this error: >> > make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build' >> > make[2]:'../bin/pjsua-i686-pc-mingw32' is up to date >> > make[2]: leaving >> > make -f Samples.mak >> > make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build' >> > make[2]: Nothing to be done for 'all' >> > make[2]: Leaving dir '/c/pjproject-1.3/pjsip-apps/build' >> > >> > I have my folder rach in pjsip-apps/src/rach. >> > Samples.mak(pjsip-apps/build) >> > >> > include ../../build/common.mak >> > >> > ############################################################################### >> > # Gather all flags. >> > # >> > export _CFLAGS     := $(PJ_CFLAGS) $(CFLAGS) >> > export _CXXFLAGS:= $(PJ_CXXFLAGS) >> > export _LDFLAGS := $(PJ_LDFLAGS) $(PJ_LDLIBS) $(LDFLAGS) >> > >> > SRCDIR := ../src/rach >> > OBJDIR := ./output/rach-$(TARGET_NAME) >> > BINDIR := ../bin/rach/$(TARGET_NAME) >> > >> > rach := simple_pjsua \ >> >         rach \ >> > EXES := $(foreach file, $(rach), $(BINDIR)/$(file)$(HOST_EXE)) >> > >> > Previously it was working but now it doesn't . what am I missing? >> > >> > I'll check out the code. >> > >> > Rachel >> > >> > >> > On Thu, Sep 10, 2009 at 1:21 PM, John Graham >> > <johngavingraham@googlemail.com> wrote: >> >> >> >> You could copy the current code that function called (one version >> >> (don't know if it's the latest) is in >> >> >> >> >> >> http://svn.pjsip.org/repos/pjproject/tags/0.5.0-before-conf/pjsip/src/pjsua/pjsua_inv.c) >> >> or search through the library to find a suitable function/set of >> >> functions. >> >> >> >> John G >> >> >> >> >> >> >> >> On Thu, Sep 10, 2009 at 5:34 PM, Rachel Baskaran >> >> <rachelbaskaran@gmail.com> wrote: >> >> > Alright this time my error: >> >> > cd C:/pjproject-1.3 >> >> > make CFLAGS='-Wall -Werror' >> >> > >> >> > >> >> > ../src/rach/rach.c:In function 'ui_console_main' >> >> > ../src/rach/rach.c:117:warning :implicit declaration of function >> >> > 'pjsua_invite' >> >> > >> >> > Is there any way to just change the call part to work in the script I >> >> > attached, coz I have to make this working. >> >> > >> >> > Rachel >> >> >> >> _______________________________________________ >> >> Visit our blog: http://blog.pjsip.org >> >> >> >> pjsip mailing list >> >> pjsip@lists.pjsip.org >> >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org >> > >> > >> > _______________________________________________ >> > Visit our blog: http://blog.pjsip.org >> > >> > pjsip mailing list >> > pjsip@lists.pjsip.org >> > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org >> > >> > >> >> _______________________________________________ >> Visit our blog: http://blog.pjsip.org >> >> pjsip mailing list >> pjsip@lists.pjsip.org >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > >
RB
Rachel Baskaran
Thu, Sep 10, 2009 10:35 PM

Finally I did re-built.

I re-compiled the source pjproject-1.3 as below:

cd C:/pjproject-1.3
./configure
touch pjlib/pj/include/pj_config_site.h
make dep
make

and I did see the executable in pjsip-apps/bin/rach/i686-pc-mingw32
rach_script( executable )

But does it mean I need to re-compile source pjproject-1.3 every time, I
include new c script for building in samples.mak file

rach .= rach /
rach1 /

Doesn't make CFLAGS='-Wall -Werror' do the job.

When I saved rach.c ( pjsip-apps/src/rach) and typed the command: make
CFLAGS='-Wall -Werror' provided I added it to make file(Samples.mak)

My output was:

make[2]-******output/i686-pc-mingw32-ioqueue_select.c] Error 1
make[2]- samples Error 2.

Why is that?

Rachel

On Thu, Sep 10, 2009 at 5:24 PM, John Graham <johngavingraham@googlemail.com

wrote:

This is literally what it sounds like - the file doesn't end with a
new line. Find the file pjlib/include/pj/config_site_sample.h, go to
the end, add a new line.

Also, if you change the line:

CFLAGS = $(APP_CFLAGS)

to read:

CFLAGS = $(APP_CFLAGS) -Wall -Werror

you can just execute "make".

John G

On Thu, Sep 10, 2009 at 9:31 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

I have a makefile as below in my file rach along with main_rterms and
call.c(where I had renamed main.c to call.c ) hope followed the tutorial

to

build.

PJBASE= C:\pjproject-1.3\

include $(PJBASE)\build.mak

CC = $(APP_CC)
LDFLAGS = $(APP_LDFLAGS)
LDLIBS = $(APP_LDLIBS)
CFLAGS = $(APP_CFLAGS)
CPPFLAGS= ${CFLAGS}

If your application is in a file named myapp.cpp or myapp.c

this is the line you will need to build the binary.

all: call

call: call.c
$(CC) -o $@ $< $(CPPFLAGS) $(LDFLAGS) $(LDLIBS)

clean:
rm -f call.o call

resaved the folder rach to pjsip-apps/src/rach.

when I ran the command: make CFLAGS='-Wall -Werror'

My command-line output was pjlib/include/pj/config_site_sample.h: no

newline

at end of file.

Rachel

On Thu, Sep 10, 2009 at 3:31 PM, John Graham
johngavingraham@googlemail.com wrote:

This is not an error - far from it, it's actually a good thing! When
make says "nothing to be done for 'all'", that's because the
source/object files that your target (i.e. your executable) depends on
are all older than the target itself, so it doesn't need to waste your
time by rebuilding it.

You can force make to rebuild your target by resaving your source file
or, for example, running the 'touch' program on the file.

You need to tell make all the source/object files your target depends
on, so it knows when to rebuild your executable - if you don't know
how, a quick look at a tutorial on make should tell you what you need
to know.

John G

On Thu, Sep 10, 2009 at 6:53 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

Oh now It gives me this error:
make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build'
make[2]:'../bin/pjsua-i686-pc-mingw32' is up to date
make[2]: leaving
make -f Samples.mak
make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build'
make[2]: Nothing to be done for 'all'
make[2]: Leaving dir '/c/pjproject-1.3/pjsip-apps/build'

I have my folder rach in pjsip-apps/src/rach.
Samples.mak(pjsip-apps/build)

include ../../build/common.mak

###############################################################################

Gather all flags.

export _CFLAGS    := $(PJ_CFLAGS) $(CFLAGS)
export _CXXFLAGS:= $(PJ_CXXFLAGS)
export _LDFLAGS := $(PJ_LDFLAGS) $(PJ_LDLIBS) $(LDFLAGS)

SRCDIR := ../src/rach
OBJDIR := ./output/rach-$(TARGET_NAME)
BINDIR := ../bin/rach/$(TARGET_NAME)

rach := simple_pjsua
rach
EXES := $(foreach file, $(rach), $(BINDIR)/$(file)$(HOST_EXE))

Previously it was working but now it doesn't . what am I missing?

I'll check out the code.

Rachel

On Thu, Sep 10, 2009 at 1:21 PM, John Graham
johngavingraham@googlemail.com wrote:

You could copy the current code that function called (one version
(don't know if it's the latest) is in

or search through the library to find a suitable function/set of
functions.

John G

On Thu, Sep 10, 2009 at 5:34 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

Alright this time my error:
cd C:/pjproject-1.3
make CFLAGS='-Wall -Werror'

../src/rach/rach.c:In function 'ui_console_main'
../src/rach/rach.c:117:warning :implicit declaration of function
'pjsua_invite'

Is there any way to just change the call part to work in the script

I

Finally I did re-built. I re-compiled the source pjproject-1.3 as below: cd C:/pjproject-1.3 ./configure touch pjlib/pj/include/pj_config_site.h make dep make and I did see the executable in pjsip-apps/bin/rach/i686-pc-mingw32 rach_script( executable ) But does it mean I need to re-compile source pjproject-1.3 every time, I include new c script for building in samples.mak file rach .= rach / rach1 / Doesn't make CFLAGS='-Wall -Werror' do the job. When I saved rach.c ( pjsip-apps/src/rach) and typed the command: make CFLAGS='-Wall -Werror' provided I added it to make file(Samples.mak) My output was: make[2]-******output/i686-pc-mingw32-ioqueue_select.c] Error 1 make[2]- samples Error 2. Why is that? Rachel On Thu, Sep 10, 2009 at 5:24 PM, John Graham <johngavingraham@googlemail.com > wrote: > This is literally what it sounds like - the file doesn't end with a > new line. Find the file pjlib/include/pj/config_site_sample.h, go to > the end, add a new line. > > Also, if you change the line: > > CFLAGS = $(APP_CFLAGS) > > to read: > > CFLAGS = $(APP_CFLAGS) -Wall -Werror > > you can just execute "make". > > John G > > > > On Thu, Sep 10, 2009 at 9:31 PM, Rachel Baskaran > <rachelbaskaran@gmail.com> wrote: > > I have a makefile as below in my file rach along with main_rterms and > > call.c(where I had renamed main.c to call.c ) hope followed the tutorial > to > > build. > > > > PJBASE= C:\pjproject-1.3\ > > > > include $(PJBASE)\build.mak > > > > CC = $(APP_CC) > > LDFLAGS = $(APP_LDFLAGS) > > LDLIBS = $(APP_LDLIBS) > > CFLAGS = $(APP_CFLAGS) > > CPPFLAGS= ${CFLAGS} > > > > # If your application is in a file named myapp.cpp or myapp.c > > # this is the line you will need to build the binary. > > all: call > > > > call: call.c > > $(CC) -o $@ $< $(CPPFLAGS) $(LDFLAGS) $(LDLIBS) > > > > clean: > > rm -f call.o call > > > > > > resaved the folder rach to pjsip-apps/src/rach. > > > > when I ran the command: make CFLAGS='-Wall -Werror' > > > > My command-line output was pjlib/include/pj/config_site_sample.h: no > newline > > at end of file. > > > > Rachel > > > > > > On Thu, Sep 10, 2009 at 3:31 PM, John Graham > > <johngavingraham@googlemail.com> wrote: > >> > >> This is not an error - far from it, it's actually a good thing! When > >> make says "nothing to be done for 'all'", that's because the > >> source/object files that your target (i.e. your executable) depends on > >> are all older than the target itself, so it doesn't need to waste your > >> time by rebuilding it. > >> > >> You can force make to rebuild your target by resaving your source file > >> or, for example, running the 'touch' program on the file. > >> > >> You need to tell make all the source/object files your target depends > >> on, so it knows when to rebuild your executable - if you don't know > >> how, a quick look at a tutorial on make should tell you what you need > >> to know. > >> > >> John G > >> > >> > >> > >> On Thu, Sep 10, 2009 at 6:53 PM, Rachel Baskaran > >> <rachelbaskaran@gmail.com> wrote: > >> > Oh now It gives me this error: > >> > make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build' > >> > make[2]:'../bin/pjsua-i686-pc-mingw32' is up to date > >> > make[2]: leaving > >> > make -f Samples.mak > >> > make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build' > >> > make[2]: Nothing to be done for 'all' > >> > make[2]: Leaving dir '/c/pjproject-1.3/pjsip-apps/build' > >> > > >> > I have my folder rach in pjsip-apps/src/rach. > >> > Samples.mak(pjsip-apps/build) > >> > > >> > include ../../build/common.mak > >> > > >> > > ############################################################################### > >> > # Gather all flags. > >> > # > >> > export _CFLAGS := $(PJ_CFLAGS) $(CFLAGS) > >> > export _CXXFLAGS:= $(PJ_CXXFLAGS) > >> > export _LDFLAGS := $(PJ_LDFLAGS) $(PJ_LDLIBS) $(LDFLAGS) > >> > > >> > SRCDIR := ../src/rach > >> > OBJDIR := ./output/rach-$(TARGET_NAME) > >> > BINDIR := ../bin/rach/$(TARGET_NAME) > >> > > >> > rach := simple_pjsua \ > >> > rach \ > >> > EXES := $(foreach file, $(rach), $(BINDIR)/$(file)$(HOST_EXE)) > >> > > >> > Previously it was working but now it doesn't . what am I missing? > >> > > >> > I'll check out the code. > >> > > >> > Rachel > >> > > >> > > >> > On Thu, Sep 10, 2009 at 1:21 PM, John Graham > >> > <johngavingraham@googlemail.com> wrote: > >> >> > >> >> You could copy the current code that function called (one version > >> >> (don't know if it's the latest) is in > >> >> > >> >> > >> >> > http://svn.pjsip.org/repos/pjproject/tags/0.5.0-before-conf/pjsip/src/pjsua/pjsua_inv.c > ) > >> >> or search through the library to find a suitable function/set of > >> >> functions. > >> >> > >> >> John G > >> >> > >> >> > >> >> > >> >> On Thu, Sep 10, 2009 at 5:34 PM, Rachel Baskaran > >> >> <rachelbaskaran@gmail.com> wrote: > >> >> > Alright this time my error: > >> >> > cd C:/pjproject-1.3 > >> >> > make CFLAGS='-Wall -Werror' > >> >> > > >> >> > > >> >> > ../src/rach/rach.c:In function 'ui_console_main' > >> >> > ../src/rach/rach.c:117:warning :implicit declaration of function > >> >> > 'pjsua_invite' > >> >> > > >> >> > Is there any way to just change the call part to work in the script > I > >> >> > attached, coz I have to make this working. > >> >> > > >> >> > Rachel > >> >> > >> >> _______________________________________________ > >> >> Visit our blog: http://blog.pjsip.org > >> >> > >> >> pjsip mailing list > >> >> pjsip@lists.pjsip.org > >> >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > >> > > >> > > >> > _______________________________________________ > >> > Visit our blog: http://blog.pjsip.org > >> > > >> > pjsip mailing list > >> > pjsip@lists.pjsip.org > >> > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > >> > > >> > > >> > >> _______________________________________________ > >> Visit our blog: http://blog.pjsip.org > >> > >> pjsip mailing list > >> pjsip@lists.pjsip.org > >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > > > > > > _______________________________________________ > > Visit our blog: http://blog.pjsip.org > > > > pjsip mailing list > > pjsip@lists.pjsip.org > > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > > > > > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org >
JG
John Graham
Thu, Sep 10, 2009 11:09 PM

Try making with just "make" instead of "make CFLAGS='-Wall -Werror'" -
all these flags do is to give you more warnings (-Wall) and to treat
warnings as errors (-Werror). They were useful in finding out your
last problem because even though the problem was highlighted at link
time, it was really a problem at compile-time, and the -Wall option
highlights this.

Note that if you're compiling pjproject-1.3 after a fresh ./configure,
you're best to do it with just "make" - pjproject's compilation
generates a few warnings, and it's frankly not worth the effort.

Also, the error you've shown doesn't really help, I'm afraid - that's
just make telling us which file an error occurred in. Try sending the
last 50 lines of the output in the future - don't worry about sending
too much output, better too much than too little!

John G

On Thu, Sep 10, 2009 at 11:35 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

Finally I did re-built.

I re-compiled the source pjproject-1.3 as below:

cd C:/pjproject-1.3
./configure
touch pjlib/pj/include/pj_config_site.h
make dep
make

and I did see the executable in pjsip-apps/bin/rach/i686-pc-mingw32
rach_script( executable )

But does it mean I need to re-compile source pjproject-1.3 every time, I
include new c script for building in samples.mak file

rach .= rach /
           rach1 /

Doesn't make CFLAGS='-Wall -Werror' do the job.

When I saved rach.c ( pjsip-apps/src/rach) and typed the command: make
CFLAGS='-Wall -Werror' provided I added it to make file(Samples.mak)

My output was:

make[2]-******output/i686-pc-mingw32-ioqueue_select.c] Error 1
make[2]- samples Error 2.

Why is that?

Rachel

On Thu, Sep 10, 2009 at 5:24 PM, John Graham
johngavingraham@googlemail.com wrote:

This is literally what it sounds like - the file doesn't end with a
new line. Find the file pjlib/include/pj/config_site_sample.h, go to
the end, add a new line.

Also, if you change the line:

CFLAGS = $(APP_CFLAGS)

to read:

CFLAGS = $(APP_CFLAGS) -Wall -Werror

you can just execute "make".

John G

On Thu, Sep 10, 2009 at 9:31 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

I have a makefile as below in my file rach along with main_rterms and
call.c(where I had renamed main.c to call.c ) hope followed the tutorial
to
build.

PJBASE= C:\pjproject-1.3\

include $(PJBASE)\build.mak

CC = $(APP_CC)
LDFLAGS = $(APP_LDFLAGS)
LDLIBS = $(APP_LDLIBS)
CFLAGS = $(APP_CFLAGS)
CPPFLAGS= ${CFLAGS}

If your application is in a file named myapp.cpp or myapp.c

this is the line you will need to build the binary.

all: call

call: call.c
$(CC) -o $@ $< $(CPPFLAGS) $(LDFLAGS) $(LDLIBS)

clean:
rm -f call.o call

resaved the folder rach to pjsip-apps/src/rach.

when I ran the command: make CFLAGS='-Wall -Werror'

My command-line output was pjlib/include/pj/config_site_sample.h: no
newline
at end of file.

Rachel

On Thu, Sep 10, 2009 at 3:31 PM, John Graham
johngavingraham@googlemail.com wrote:

This is not an error - far from it, it's actually a good thing! When
make says "nothing to be done for 'all'", that's because the
source/object files that your target (i.e. your executable) depends on
are all older than the target itself, so it doesn't need to waste your
time by rebuilding it.

You can force make to rebuild your target by resaving your source file
or, for example, running the 'touch' program on the file.

You need to tell make all the source/object files your target depends
on, so it knows when to rebuild your executable - if you don't know
how, a quick look at a tutorial on make should tell you what you need
to know.

John G

On Thu, Sep 10, 2009 at 6:53 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

Oh now It gives me this error:
make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build'
make[2]:'../bin/pjsua-i686-pc-mingw32' is up to date
make[2]: leaving
make -f Samples.mak
make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build'
make[2]: Nothing to be done for 'all'
make[2]: Leaving dir '/c/pjproject-1.3/pjsip-apps/build'

I have my folder rach in pjsip-apps/src/rach.
Samples.mak(pjsip-apps/build)

include ../../build/common.mak

###############################################################################

Gather all flags.

export _CFLAGS     := $(PJ_CFLAGS) $(CFLAGS)
export _CXXFLAGS:= $(PJ_CXXFLAGS)
export _LDFLAGS := $(PJ_LDFLAGS) $(PJ_LDLIBS) $(LDFLAGS)

SRCDIR := ../src/rach
OBJDIR := ./output/rach-$(TARGET_NAME)
BINDIR := ../bin/rach/$(TARGET_NAME)

rach := simple_pjsua
        rach
EXES := $(foreach file, $(rach), $(BINDIR)/$(file)$(HOST_EXE))

Previously it was working but now it doesn't . what am I missing?

I'll check out the code.

Rachel

On Thu, Sep 10, 2009 at 1:21 PM, John Graham
johngavingraham@googlemail.com wrote:

You could copy the current code that function called (one version
(don't know if it's the latest) is in

http://svn.pjsip.org/repos/pjproject/tags/0.5.0-before-conf/pjsip/src/pjsua/pjsua_inv.c)
or search through the library to find a suitable function/set of
functions.

John G

On Thu, Sep 10, 2009 at 5:34 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

Alright this time my error:
cd C:/pjproject-1.3
make CFLAGS='-Wall -Werror'

../src/rach/rach.c:In function 'ui_console_main'
../src/rach/rach.c:117:warning :implicit declaration of function
'pjsua_invite'

Is there any way to just change the call part to work in the
script I
attached, coz I have to make this working.

Rachel

Try making with just "make" instead of "make CFLAGS='-Wall -Werror'" - all these flags do is to give you more warnings (-Wall) and to treat warnings as errors (-Werror). They were useful in finding out your last problem because even though the problem was highlighted at link time, it was *really* a problem at compile-time, and the -Wall option highlights this. Note that if you're compiling pjproject-1.3 after a fresh ./configure, you're best to do it with just "make" - pjproject's compilation generates a few warnings, and it's frankly not worth the effort. Also, the error you've shown doesn't really help, I'm afraid - that's just make telling us which file an error occurred in. Try sending the last 50 lines of the output in the future - don't worry about sending too much output, better too much than too little! John G On Thu, Sep 10, 2009 at 11:35 PM, Rachel Baskaran <rachelbaskaran@gmail.com> wrote: > Finally I did re-built. > > I re-compiled the source pjproject-1.3 as below: > > cd C:/pjproject-1.3 > ./configure > touch pjlib/pj/include/pj_config_site.h > make dep > make > > and I did see the executable in pjsip-apps/bin/rach/i686-pc-mingw32 > rach_script( executable ) > > But does it mean I need to re-compile source pjproject-1.3 every time, I > include new c script for building in samples.mak file > > rach .= rach / >            rach1 / > > Doesn't make CFLAGS='-Wall -Werror' do the job. > > When I saved rach.c ( pjsip-apps/src/rach) and typed the command: make > CFLAGS='-Wall -Werror' provided I added it to make file(Samples.mak) > > My output was: > > > make[2]-******output/i686-pc-mingw32-ioqueue_select.c] Error 1 > make[2]- samples Error 2. > > > Why is that? > > Rachel > > > > > > On Thu, Sep 10, 2009 at 5:24 PM, John Graham > <johngavingraham@googlemail.com> wrote: >> >> This is literally what it sounds like - the file doesn't end with a >> new line. Find the file pjlib/include/pj/config_site_sample.h, go to >> the end, add a new line. >> >> Also, if you change the line: >> >> CFLAGS = $(APP_CFLAGS) >> >> to read: >> >> CFLAGS = $(APP_CFLAGS) -Wall -Werror >> >> you can just execute "make". >> >> John G >> >> >> >> On Thu, Sep 10, 2009 at 9:31 PM, Rachel Baskaran >> <rachelbaskaran@gmail.com> wrote: >> > I have a makefile as below in my file rach along with main_rterms and >> > call.c(where I had renamed main.c to call.c ) hope followed the tutorial >> > to >> > build. >> > >> > PJBASE= C:\pjproject-1.3\ >> > >> > include $(PJBASE)\build.mak >> > >> > CC = $(APP_CC) >> > LDFLAGS = $(APP_LDFLAGS) >> > LDLIBS = $(APP_LDLIBS) >> > CFLAGS = $(APP_CFLAGS) >> > CPPFLAGS= ${CFLAGS} >> > >> > # If your application is in a file named myapp.cpp or myapp.c >> > # this is the line you will need to build the binary. >> > all: call >> > >> > call: call.c >> > $(CC) -o $@ $< $(CPPFLAGS) $(LDFLAGS) $(LDLIBS) >> > >> > clean: >> > rm -f call.o call >> > >> > >> > resaved the folder rach to pjsip-apps/src/rach. >> > >> > when I ran the command: make CFLAGS='-Wall -Werror' >> > >> > My command-line output was pjlib/include/pj/config_site_sample.h: no >> > newline >> > at end of file. >> > >> > Rachel >> > >> > >> > On Thu, Sep 10, 2009 at 3:31 PM, John Graham >> > <johngavingraham@googlemail.com> wrote: >> >> >> >> This is not an error - far from it, it's actually a good thing! When >> >> make says "nothing to be done for 'all'", that's because the >> >> source/object files that your target (i.e. your executable) depends on >> >> are all older than the target itself, so it doesn't need to waste your >> >> time by rebuilding it. >> >> >> >> You can force make to rebuild your target by resaving your source file >> >> or, for example, running the 'touch' program on the file. >> >> >> >> You need to tell make all the source/object files your target depends >> >> on, so it knows when to rebuild your executable - if you don't know >> >> how, a quick look at a tutorial on make should tell you what you need >> >> to know. >> >> >> >> John G >> >> >> >> >> >> >> >> On Thu, Sep 10, 2009 at 6:53 PM, Rachel Baskaran >> >> <rachelbaskaran@gmail.com> wrote: >> >> > Oh now It gives me this error: >> >> > make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build' >> >> > make[2]:'../bin/pjsua-i686-pc-mingw32' is up to date >> >> > make[2]: leaving >> >> > make -f Samples.mak >> >> > make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build' >> >> > make[2]: Nothing to be done for 'all' >> >> > make[2]: Leaving dir '/c/pjproject-1.3/pjsip-apps/build' >> >> > >> >> > I have my folder rach in pjsip-apps/src/rach. >> >> > Samples.mak(pjsip-apps/build) >> >> > >> >> > include ../../build/common.mak >> >> > >> >> > >> >> > ############################################################################### >> >> > # Gather all flags. >> >> > # >> >> > export _CFLAGS     := $(PJ_CFLAGS) $(CFLAGS) >> >> > export _CXXFLAGS:= $(PJ_CXXFLAGS) >> >> > export _LDFLAGS := $(PJ_LDFLAGS) $(PJ_LDLIBS) $(LDFLAGS) >> >> > >> >> > SRCDIR := ../src/rach >> >> > OBJDIR := ./output/rach-$(TARGET_NAME) >> >> > BINDIR := ../bin/rach/$(TARGET_NAME) >> >> > >> >> > rach := simple_pjsua \ >> >> >         rach \ >> >> > EXES := $(foreach file, $(rach), $(BINDIR)/$(file)$(HOST_EXE)) >> >> > >> >> > Previously it was working but now it doesn't . what am I missing? >> >> > >> >> > I'll check out the code. >> >> > >> >> > Rachel >> >> > >> >> > >> >> > On Thu, Sep 10, 2009 at 1:21 PM, John Graham >> >> > <johngavingraham@googlemail.com> wrote: >> >> >> >> >> >> You could copy the current code that function called (one version >> >> >> (don't know if it's the latest) is in >> >> >> >> >> >> >> >> >> >> >> >> http://svn.pjsip.org/repos/pjproject/tags/0.5.0-before-conf/pjsip/src/pjsua/pjsua_inv.c) >> >> >> or search through the library to find a suitable function/set of >> >> >> functions. >> >> >> >> >> >> John G >> >> >> >> >> >> >> >> >> >> >> >> On Thu, Sep 10, 2009 at 5:34 PM, Rachel Baskaran >> >> >> <rachelbaskaran@gmail.com> wrote: >> >> >> > Alright this time my error: >> >> >> > cd C:/pjproject-1.3 >> >> >> > make CFLAGS='-Wall -Werror' >> >> >> > >> >> >> > >> >> >> > ../src/rach/rach.c:In function 'ui_console_main' >> >> >> > ../src/rach/rach.c:117:warning :implicit declaration of function >> >> >> > 'pjsua_invite' >> >> >> > >> >> >> > Is there any way to just change the call part to work in the >> >> >> > script I >> >> >> > attached, coz I have to make this working. >> >> >> > >> >> >> > Rachel >> >> >> >> >> >> _______________________________________________ >> >> >> Visit our blog: http://blog.pjsip.org >> >> >> >> >> >> pjsip mailing list >> >> >> pjsip@lists.pjsip.org >> >> >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org >> >> > >> >> > >> >> > _______________________________________________ >> >> > Visit our blog: http://blog.pjsip.org >> >> > >> >> > pjsip mailing list >> >> > pjsip@lists.pjsip.org >> >> > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org >> >> > >> >> > >> >> >> >> _______________________________________________ >> >> Visit our blog: http://blog.pjsip.org >> >> >> >> pjsip mailing list >> >> pjsip@lists.pjsip.org >> >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org >> > >> > >> > _______________________________________________ >> > Visit our blog: http://blog.pjsip.org >> > >> > pjsip mailing list >> > pjsip@lists.pjsip.org >> > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org >> > >> > >> >> _______________________________________________ >> Visit our blog: http://blog.pjsip.org >> >> pjsip mailing list >> pjsip@lists.pjsip.org >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > >
RB
Rachel Baskaran
Thu, Sep 10, 2009 11:32 PM

I did edit the line:

CFLAGS = $(APP_CFLAGS)

to:

CFLAGS = $(APP_CFLAGS) -Wall -Werror

sometimes it's kinda weird when the error or warning keeps changing every
min.

'make' did the job.

I'm still struck with previous error "undefined reference  to 'pjsua_invite'

I replaced it with pjsip_inv_invite, pjsua_make_call, but it shows the same
instead of pjsua_invite it's either pjsip_inv_invite or pjsua_make_call.

I tried your other code(pjsua_inv.c) it shows me lots of error.

At least in my previous program do we have any  function to make call after
I enter the URL.
when I press 'm' as console key.
it says: Enter the URL to call(empty to cancel): and when I enter
sip:user@sipprovider.com sip%3Auser@sipprovider.com, it should be calling
but It does nothing.
Do I need the media to do this part(I'm not sure )

Rachel

On Thu, Sep 10, 2009 at 7:09 PM, John Graham <johngavingraham@googlemail.com

wrote:

Try making with just "make" instead of "make CFLAGS='-Wall -Werror'" -
all these flags do is to give you more warnings (-Wall) and to treat
warnings as errors (-Werror). They were useful in finding out your
last problem because even though the problem was highlighted at link
time, it was really a problem at compile-time, and the -Wall option
highlights this.

Note that if you're compiling pjproject-1.3 after a fresh ./configure,
you're best to do it with just "make" - pjproject's compilation
generates a few warnings, and it's frankly not worth the effort.

Also, the error you've shown doesn't really help, I'm afraid - that's
just make telling us which file an error occurred in. Try sending the
last 50 lines of the output in the future - don't worry about sending
too much output, better too much than too little!

John G

On Thu, Sep 10, 2009 at 11:35 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

Finally I did re-built.

I re-compiled the source pjproject-1.3 as below:

cd C:/pjproject-1.3
./configure
touch pjlib/pj/include/pj_config_site.h
make dep
make

and I did see the executable in pjsip-apps/bin/rach/i686-pc-mingw32
rach_script( executable )

But does it mean I need to re-compile source pjproject-1.3 every time, I
include new c script for building in samples.mak file

rach .= rach /
rach1 /

Doesn't make CFLAGS='-Wall -Werror' do the job.

When I saved rach.c ( pjsip-apps/src/rach) and typed the command: make
CFLAGS='-Wall -Werror' provided I added it to make file(Samples.mak)

My output was:

make[2]-******output/i686-pc-mingw32-ioqueue_select.c] Error 1
make[2]- samples Error 2.

Why is that?

Rachel

On Thu, Sep 10, 2009 at 5:24 PM, John Graham
johngavingraham@googlemail.com wrote:

This is literally what it sounds like - the file doesn't end with a
new line. Find the file pjlib/include/pj/config_site_sample.h, go to
the end, add a new line.

Also, if you change the line:

CFLAGS = $(APP_CFLAGS)

to read:

CFLAGS = $(APP_CFLAGS) -Wall -Werror

you can just execute "make".

John G

On Thu, Sep 10, 2009 at 9:31 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

I have a makefile as below in my file rach along with main_rterms and
call.c(where I had renamed main.c to call.c ) hope followed the

tutorial

to
build.

PJBASE= C:\pjproject-1.3\

include $(PJBASE)\build.mak

CC = $(APP_CC)
LDFLAGS = $(APP_LDFLAGS)
LDLIBS = $(APP_LDLIBS)
CFLAGS = $(APP_CFLAGS)
CPPFLAGS= ${CFLAGS}

If your application is in a file named myapp.cpp or myapp.c

this is the line you will need to build the binary.

all: call

call: call.c
$(CC) -o $@ $< $(CPPFLAGS) $(LDFLAGS) $(LDLIBS)

clean:
rm -f call.o call

resaved the folder rach to pjsip-apps/src/rach.

when I ran the command: make CFLAGS='-Wall -Werror'

My command-line output was pjlib/include/pj/config_site_sample.h: no
newline
at end of file.

Rachel

On Thu, Sep 10, 2009 at 3:31 PM, John Graham
johngavingraham@googlemail.com wrote:

This is not an error - far from it, it's actually a good thing! When
make says "nothing to be done for 'all'", that's because the
source/object files that your target (i.e. your executable) depends

on

are all older than the target itself, so it doesn't need to waste

your

time by rebuilding it.

You can force make to rebuild your target by resaving your source

file

or, for example, running the 'touch' program on the file.

You need to tell make all the source/object files your target depends
on, so it knows when to rebuild your executable - if you don't know
how, a quick look at a tutorial on make should tell you what you need
to know.

John G

On Thu, Sep 10, 2009 at 6:53 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

Oh now It gives me this error:
make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build'
make[2]:'../bin/pjsua-i686-pc-mingw32' is up to date
make[2]: leaving
make -f Samples.mak
make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build'
make[2]: Nothing to be done for 'all'
make[2]: Leaving dir '/c/pjproject-1.3/pjsip-apps/build'

I have my folder rach in pjsip-apps/src/rach.
Samples.mak(pjsip-apps/build)

include ../../build/common.mak

###############################################################################

Gather all flags.

export _CFLAGS    := $(PJ_CFLAGS) $(CFLAGS)
export _CXXFLAGS:= $(PJ_CXXFLAGS)
export _LDFLAGS := $(PJ_LDFLAGS) $(PJ_LDLIBS) $(LDFLAGS)

SRCDIR := ../src/rach
OBJDIR := ./output/rach-$(TARGET_NAME)
BINDIR := ../bin/rach/$(TARGET_NAME)

rach := simple_pjsua
rach
EXES := $(foreach file, $(rach), $(BINDIR)/$(file)$(HOST_EXE))

Previously it was working but now it doesn't . what am I missing?

I'll check out the code.

Rachel

On Thu, Sep 10, 2009 at 1:21 PM, John Graham
johngavingraham@googlemail.com wrote:

You could copy the current code that function called (one version
(don't know if it's the latest) is in

or search through the library to find a suitable function/set of
functions.

John G

On Thu, Sep 10, 2009 at 5:34 PM, Rachel Baskaran
rachelbaskaran@gmail.com wrote:

Alright this time my error:
cd C:/pjproject-1.3
make CFLAGS='-Wall -Werror'

../src/rach/rach.c:In function 'ui_console_main'
../src/rach/rach.c:117:warning :implicit declaration of function
'pjsua_invite'

Is there any way to just change the call part to work in the
script I
attached, coz I have to make this working.

Rachel

I did edit the line: CFLAGS = $(APP_CFLAGS) to: CFLAGS = $(APP_CFLAGS) -Wall -Werror sometimes it's kinda weird when the error or warning keeps changing every min. 'make' did the job. I'm still struck with previous error "undefined reference to 'pjsua_invite' I replaced it with pjsip_inv_invite, pjsua_make_call, but it shows the same instead of pjsua_invite it's either pjsip_inv_invite or pjsua_make_call. I tried your other code(pjsua_inv.c) it shows me lots of error. At least in my previous program do we have any function to make call after I enter the URL. when I press 'm' as console key. it says: Enter the URL to call(empty to cancel): and when I enter sip:user@sipprovider.com <sip%3Auser@sipprovider.com>, it should be calling but It does nothing. Do I need the media to do this part(I'm not sure ) Rachel On Thu, Sep 10, 2009 at 7:09 PM, John Graham <johngavingraham@googlemail.com > wrote: > Try making with just "make" instead of "make CFLAGS='-Wall -Werror'" - > all these flags do is to give you more warnings (-Wall) and to treat > warnings as errors (-Werror). They were useful in finding out your > last problem because even though the problem was highlighted at link > time, it was *really* a problem at compile-time, and the -Wall option > highlights this. > > Note that if you're compiling pjproject-1.3 after a fresh ./configure, > you're best to do it with just "make" - pjproject's compilation > generates a few warnings, and it's frankly not worth the effort. > > Also, the error you've shown doesn't really help, I'm afraid - that's > just make telling us which file an error occurred in. Try sending the > last 50 lines of the output in the future - don't worry about sending > too much output, better too much than too little! > > John G > > > > On Thu, Sep 10, 2009 at 11:35 PM, Rachel Baskaran > <rachelbaskaran@gmail.com> wrote: > > Finally I did re-built. > > > > I re-compiled the source pjproject-1.3 as below: > > > > cd C:/pjproject-1.3 > > ./configure > > touch pjlib/pj/include/pj_config_site.h > > make dep > > make > > > > and I did see the executable in pjsip-apps/bin/rach/i686-pc-mingw32 > > rach_script( executable ) > > > > But does it mean I need to re-compile source pjproject-1.3 every time, I > > include new c script for building in samples.mak file > > > > rach .= rach / > > rach1 / > > > > Doesn't make CFLAGS='-Wall -Werror' do the job. > > > > When I saved rach.c ( pjsip-apps/src/rach) and typed the command: make > > CFLAGS='-Wall -Werror' provided I added it to make file(Samples.mak) > > > > My output was: > > > > > > make[2]-******output/i686-pc-mingw32-ioqueue_select.c] Error 1 > > make[2]- samples Error 2. > > > > > > Why is that? > > > > Rachel > > > > > > > > > > > > On Thu, Sep 10, 2009 at 5:24 PM, John Graham > > <johngavingraham@googlemail.com> wrote: > >> > >> This is literally what it sounds like - the file doesn't end with a > >> new line. Find the file pjlib/include/pj/config_site_sample.h, go to > >> the end, add a new line. > >> > >> Also, if you change the line: > >> > >> CFLAGS = $(APP_CFLAGS) > >> > >> to read: > >> > >> CFLAGS = $(APP_CFLAGS) -Wall -Werror > >> > >> you can just execute "make". > >> > >> John G > >> > >> > >> > >> On Thu, Sep 10, 2009 at 9:31 PM, Rachel Baskaran > >> <rachelbaskaran@gmail.com> wrote: > >> > I have a makefile as below in my file rach along with main_rterms and > >> > call.c(where I had renamed main.c to call.c ) hope followed the > tutorial > >> > to > >> > build. > >> > > >> > PJBASE= C:\pjproject-1.3\ > >> > > >> > include $(PJBASE)\build.mak > >> > > >> > CC = $(APP_CC) > >> > LDFLAGS = $(APP_LDFLAGS) > >> > LDLIBS = $(APP_LDLIBS) > >> > CFLAGS = $(APP_CFLAGS) > >> > CPPFLAGS= ${CFLAGS} > >> > > >> > # If your application is in a file named myapp.cpp or myapp.c > >> > # this is the line you will need to build the binary. > >> > all: call > >> > > >> > call: call.c > >> > $(CC) -o $@ $< $(CPPFLAGS) $(LDFLAGS) $(LDLIBS) > >> > > >> > clean: > >> > rm -f call.o call > >> > > >> > > >> > resaved the folder rach to pjsip-apps/src/rach. > >> > > >> > when I ran the command: make CFLAGS='-Wall -Werror' > >> > > >> > My command-line output was pjlib/include/pj/config_site_sample.h: no > >> > newline > >> > at end of file. > >> > > >> > Rachel > >> > > >> > > >> > On Thu, Sep 10, 2009 at 3:31 PM, John Graham > >> > <johngavingraham@googlemail.com> wrote: > >> >> > >> >> This is not an error - far from it, it's actually a good thing! When > >> >> make says "nothing to be done for 'all'", that's because the > >> >> source/object files that your target (i.e. your executable) depends > on > >> >> are all older than the target itself, so it doesn't need to waste > your > >> >> time by rebuilding it. > >> >> > >> >> You can force make to rebuild your target by resaving your source > file > >> >> or, for example, running the 'touch' program on the file. > >> >> > >> >> You need to tell make all the source/object files your target depends > >> >> on, so it knows when to rebuild your executable - if you don't know > >> >> how, a quick look at a tutorial on make should tell you what you need > >> >> to know. > >> >> > >> >> John G > >> >> > >> >> > >> >> > >> >> On Thu, Sep 10, 2009 at 6:53 PM, Rachel Baskaran > >> >> <rachelbaskaran@gmail.com> wrote: > >> >> > Oh now It gives me this error: > >> >> > make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build' > >> >> > make[2]:'../bin/pjsua-i686-pc-mingw32' is up to date > >> >> > make[2]: leaving > >> >> > make -f Samples.mak > >> >> > make[2]: Entering dir '/c/pjproject-1.3/pjsip-apps/build' > >> >> > make[2]: Nothing to be done for 'all' > >> >> > make[2]: Leaving dir '/c/pjproject-1.3/pjsip-apps/build' > >> >> > > >> >> > I have my folder rach in pjsip-apps/src/rach. > >> >> > Samples.mak(pjsip-apps/build) > >> >> > > >> >> > include ../../build/common.mak > >> >> > > >> >> > > >> >> > > ############################################################################### > >> >> > # Gather all flags. > >> >> > # > >> >> > export _CFLAGS := $(PJ_CFLAGS) $(CFLAGS) > >> >> > export _CXXFLAGS:= $(PJ_CXXFLAGS) > >> >> > export _LDFLAGS := $(PJ_LDFLAGS) $(PJ_LDLIBS) $(LDFLAGS) > >> >> > > >> >> > SRCDIR := ../src/rach > >> >> > OBJDIR := ./output/rach-$(TARGET_NAME) > >> >> > BINDIR := ../bin/rach/$(TARGET_NAME) > >> >> > > >> >> > rach := simple_pjsua \ > >> >> > rach \ > >> >> > EXES := $(foreach file, $(rach), $(BINDIR)/$(file)$(HOST_EXE)) > >> >> > > >> >> > Previously it was working but now it doesn't . what am I missing? > >> >> > > >> >> > I'll check out the code. > >> >> > > >> >> > Rachel > >> >> > > >> >> > > >> >> > On Thu, Sep 10, 2009 at 1:21 PM, John Graham > >> >> > <johngavingraham@googlemail.com> wrote: > >> >> >> > >> >> >> You could copy the current code that function called (one version > >> >> >> (don't know if it's the latest) is in > >> >> >> > >> >> >> > >> >> >> > >> >> >> > http://svn.pjsip.org/repos/pjproject/tags/0.5.0-before-conf/pjsip/src/pjsua/pjsua_inv.c > ) > >> >> >> or search through the library to find a suitable function/set of > >> >> >> functions. > >> >> >> > >> >> >> John G > >> >> >> > >> >> >> > >> >> >> > >> >> >> On Thu, Sep 10, 2009 at 5:34 PM, Rachel Baskaran > >> >> >> <rachelbaskaran@gmail.com> wrote: > >> >> >> > Alright this time my error: > >> >> >> > cd C:/pjproject-1.3 > >> >> >> > make CFLAGS='-Wall -Werror' > >> >> >> > > >> >> >> > > >> >> >> > ../src/rach/rach.c:In function 'ui_console_main' > >> >> >> > ../src/rach/rach.c:117:warning :implicit declaration of function > >> >> >> > 'pjsua_invite' > >> >> >> > > >> >> >> > Is there any way to just change the call part to work in the > >> >> >> > script I > >> >> >> > attached, coz I have to make this working. > >> >> >> > > >> >> >> > Rachel > >> >> >> > >> >> >> _______________________________________________ > >> >> >> Visit our blog: http://blog.pjsip.org > >> >> >> > >> >> >> pjsip mailing list > >> >> >> pjsip@lists.pjsip.org > >> >> >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > >> >> > > >> >> > > >> >> > _______________________________________________ > >> >> > Visit our blog: http://blog.pjsip.org > >> >> > > >> >> > pjsip mailing list > >> >> > pjsip@lists.pjsip.org > >> >> > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > >> >> > > >> >> > > >> >> > >> >> _______________________________________________ > >> >> Visit our blog: http://blog.pjsip.org > >> >> > >> >> pjsip mailing list > >> >> pjsip@lists.pjsip.org > >> >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > >> > > >> > > >> > _______________________________________________ > >> > Visit our blog: http://blog.pjsip.org > >> > > >> > pjsip mailing list > >> > pjsip@lists.pjsip.org > >> > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > >> > > >> > > >> > >> _______________________________________________ > >> Visit our blog: http://blog.pjsip.org > >> > >> pjsip mailing list > >> pjsip@lists.pjsip.org > >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > > > > > > _______________________________________________ > > Visit our blog: http://blog.pjsip.org > > > > pjsip mailing list > > pjsip@lists.pjsip.org > > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > > > > > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org >
JG
John Graham
Fri, Sep 11, 2009 8:44 AM

I'm still struck with previous error "undefined reference  to 'pjsua_invite'

That error comes up because there is no function called 'pjsua_invite'
defined in the pjsua API - you need to go through the current API for
a function that does the job you want.

I replaced it with pjsip_inv_invite, pjsua_make_call, but it shows the same
instead of pjsua_invite it's either pjsip_inv_invite or pjsua_make_call.

I tried your other code(pjsua_inv.c) it shows me lots of error.

pjsua_inv.c is purely to demonstrate how the pjsua_invite function was
implemented - it probably uses deprecated/changed parts of the API.
It can be a useful starting point, but like I said you'll either need
to write your own pjsua_invite function or find a library function
that does the job already.

I don't really know the sua/sip side of the library well enough to
help you more than that, I'm afraid!

John G

> I'm still struck with previous error "undefined reference  to 'pjsua_invite' That error comes up because there is no function called 'pjsua_invite' defined in the pjsua API - you need to go through the current API for a function that does the job you want. > I replaced it with pjsip_inv_invite, pjsua_make_call, but it shows the same > instead of pjsua_invite it's either pjsip_inv_invite or pjsua_make_call. > > I tried your other code(pjsua_inv.c) it shows me lots of error. pjsua_inv.c is purely to demonstrate how the pjsua_invite function was implemented - it probably uses deprecated/changed parts of the API. It can be a useful starting point, but like I said you'll either need to write your own pjsua_invite function or find a library function that does the job already. I don't really know the sua/sip side of the library well enough to help you more than that, I'm afraid! John G