On 06/20/10 08:56, Norikatsu Shigemura wrote:
Hi dougb.

On Sun, 13 Jun 2010 13:04:04 -0700
Doug Barton<do...@freebsd.org>  wrote:
I'm getting this:
===>   Building for liveMedia-2010.06.11,1
(cd liveMedia ; /usr/bin/make)
g++45 -pipe -g -march=native -fpic -g -c Media.cpp
g++45 -pipe -g -march=native -fpic -g -c MediaSource.cpp
Media.cpp:21:20: fatal error: Media.hh: No such file or directory
MediaSource.cpp:21:26: fatal error: MediaSource.hh: No such file or
directory
compilation terminated.
compilation terminated.
*** Error code 1
Could it be related to my using gcc45 for ports?

        I did give liveMedia some robustness by files/config.fixed-freebsd.
        So it is unthinkable issue.
        Please give me work/live/Makefile.

Ok, this is a weird one. I can now tell you _what_ is happening, but I cannot tell you why.

The problem actually is gcc-related, so let me set the stage. I followed the instructions at http://www.freebsd.org/doc/en_US.ISO8859-1/articles/custom-gcc/configuring-ports-gcc.html except with gcc 4.5.1. I also rebuild libtool every time I switch compilers. The relevant bits of my make.conf are:

.if !empty(.CURDIR:M/usr/ports*)
WRKDIRPREFIX=   /usr/local/tmp
.endif
.if !empty(.CURDIR:M/usr/ports*) || !empty(.CURDIR:M/home/*) || defined(UPGRADE_TOOL)
CC=             /usr/local/bin/gcc45
CXX=            /usr/local/bin/g++45
CPP=            /usr/local/bin/cpp45
CPUTYPE=        native
.endif

So, if I'm building in the ports tree, WRKDIRPREFIX is set. Also, the test for when to set CC, etc. is not true in the directory I use for WRKDIRPREFIX, but IS always true if UPGRADE_TOOL is defined (which it always is for portmaster).

Now, here is where it gets weird. If I use _exactly_ this configuration, and build the port by doing 'cd /usr/ports/net/liveMedia && make' it works. However, if I comment out WRKDIRPREFIX, or if I make the setting of CC, etc. unconditional, it does not work (I get the error above). To make it even weirder, the working configuration appears to actually be using gcc 4.5.1, and all of the right cflags are included on the command line:

===>  Building for liveMedia-2010.06.11,1
(cd liveMedia ; make)
/usr/local/bin/g++45 -c -O2 -pipe -march=native -fpic -fno-strict-aliasing -Iinclude -I../UsageEnvironment/include -I../groupsock/include -I. -DBSD=1 -DSOCKLEN_T=socklen_t -DHAVE_SOCKADDR_LEN=1 -Wall -Wno-deprecated DVVideoStreamFramer.cpp

It's probably also worth noting that the file that is first to compile in the working example above is different than the non-working version. I also tried using gmake just in case, no luck there either.

So, something is very, very odd here. I've spent a lot of time staring at this trying to figure out what is without success. :(

The "good" news is that in the simple case (unconditional definition of CC) it fails, so hopefully that will give you some hint as to where to proceed in terms of fixing the build with gcc 4.5.1. Sorry I couldn't figure out the solution myself.


Doug

--

        ... and that's just a little bit of history repeating.
                        -- Propellerheads

        Improve the effectiveness of your Internet presence with
        a domain name makeover!    http://SupersetSolutions.com/

COMPILE_OPTS =          -O2 -pipe -march=native -fpic -fno-strict-aliasing 
$(INCLUDES) -I. -DBSD=1 -DSOCKLEN_T=socklen_t -DHAVE_SOCKADDR_LEN=1
C =                     c
C_COMPILER =            $(CC)
C_FLAGS =               $(COMPILE_OPTS)
CPLUSPLUS_COMPILER =    $(CXX)
CPLUSPLUS_FLAGS =       $(COMPILE_OPTS) -Wall -Wno-deprecated
OBJ =                   o
LINK =                  $(CXX) -o
LINK_OPTS =             -L.
CONSOLE_LINK_OPTS =     $(LINK_OPTS)
LIBRARY_LINK =          $(AR) cr
LIBRARY_LINK_OPTS =     
LIB_SUFFIX =                    a
LIBS_FOR_CONSOLE_APPLICATION =
LIBS_FOR_GUI_APPLICATION =
EXE =
##### End of variables to change

LIVEMEDIA_DIR = liveMedia
GROUPSOCK_DIR = groupsock
USAGE_ENVIRONMENT_DIR = UsageEnvironment
BASIC_USAGE_ENVIRONMENT_DIR = BasicUsageEnvironment

TESTPROGS_DIR = testProgs

MEDIA_SERVER_DIR = mediaServer

all:
        (cd $(LIVEMEDIA_DIR) ; $(MAKE))
        (cd $(GROUPSOCK_DIR) ; $(MAKE))
        (cd $(USAGE_ENVIRONMENT_DIR) ; $(MAKE))
        (cd $(BASIC_USAGE_ENVIRONMENT_DIR) ; $(MAKE))
        (cd $(TESTPROGS_DIR) ; $(MAKE))
        (cd $(MEDIA_SERVER_DIR) ; $(MAKE))

clean:
        (cd $(LIVEMEDIA_DIR) ; $(MAKE) clean)
        (cd $(GROUPSOCK_DIR) ; $(MAKE) clean)
        (cd $(USAGE_ENVIRONMENT_DIR) ; $(MAKE) clean)
        (cd $(BASIC_USAGE_ENVIRONMENT_DIR) ; $(MAKE) clean)
        (cd $(TESTPROGS_DIR) ; $(MAKE) clean)
        (cd $(MEDIA_SERVER_DIR) ; $(MAKE) clean)
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "cvs-all-unsubscr...@freebsd.org"

Reply via email to