Re: Building on Mac OS X Lion fails - stdarg.h cannot include_next itself

Eugene Kirpichov <[email protected]>
Newsgroups gmane.comp.lib.cairo
Message-ID <CANVKUrVS82Mt+fDQTm8GE7G2wZkfnQCqBfFdm6NxEN9A9AD0wA@mail.gmail.com>
Yay, it worked! Thanks again!

On Tue, Jan 10, 2012 at 11:32 AM, Eugene Kirpichov <[email protected]>wrote:

> Hello Andrea,
>
> Thanks a lot, indeed I succeeded with jhbuild build meta-gtk-osx-bootstrap
> after I added the following to my ~/.jhbuildrc-custom:
> os.environ["CC"] = "/usr/bin/llvm-gcc-4.2"
> os.environ["CXX"] = "/usr/bin/llvm-g++-4.2"
>
> Somehow I thought that llvm-gcc and llvm-g++ are already the only
> compilers present on Macs, but apparently that's not the case.
>
> I'm now building meta-gtk-osx-core, let's see how it goes.
>
> On Tue, Jan 10, 2012 at 2:53 AM, Andrea Canciani <[email protected]>wrote:
>
>> On Mon, Jan 9, 2012 at 8:27 PM, Eugene Kirpichov <[email protected]>
>> wrote:
>> > Hi,
>> >
>> > I'm following the instructions at
>> http://live.gnome.org/GTK%2B/OSX/Building
>> > on a Mac OS X Lion 10.7.2, gcc 4.2.
>> >
>> > After customizing my ~/.jhbuildrc-custom with the following
>> >
>> > # setup_sdk(target=_target, sdk_version="native",
>> > architectures=[_default_arch])
>> > ...
>> > moduleset =
>> > "
>> http://git.gnome.org/browse/gtk-osx/plain/modulesets-stable/gtk-osx.modules
>> "
>> > setup_sdk(target="10.6", sdk_version="10.6", architectures=["i386"])
>> >
>> > So - after that, I got jhbuild bootstrap to succeed, but jhbuild build
>> > meta-gtk-osx-bootstrap fails with the following transcript [1] (just
>> the end
>> > of it).
>> >
>> > I was able to reproduce the same thing with a program that just says
>> > "#include <stdarg.h>" (and nothing more) - two invocations of g++, one
>> > successful [2] and one unsuccessful [3], included.
>> >
>> > Looks like the issue is that there's no usr/lib/gcc/... folder with a
>> > platform-specific stdarg.h under the -isysroot set by configure.
>> >
>> > How can I fix this error? I'm assuming that either jhbuild shouldn't
>> have
>> > set -isysroot to the value it has set it to, or perhaps this is an
>> actual
>> > incompatibility with gcc 4.2, but looks like with my level of knowledge
>> > about this build system and general peculiarities of building on Mac
>> (which
>> > I've got only recently), asking for help from the community is the best
>> > thing I can do.
>>
>> I think you might want to try your test commands using the default
>> compiler (i.e. g++, aka llvm-g++ aka llvm-g++-4.2).
>> If they manage to compile your test (and/or libtiff), then you're
>> probably missing some "true-gcc"-specific headers.
>> FWIW, I managed to reproduce the issue on my laptop (XCode 4.2.1)
>> using g++-4.2, but the compilation was fine with llvm-g++:
>>
>> $ /usr/bin/g++-4.2 conftest.cxx -isysroot /Developer/SDKs/MacOSX10.6.sdk/
>> In file included from conftest.cxx:1:
>> /Developer/SDKs/MacOSX10.6.sdk//usr/include/stdarg.h:4:25: error:
>> stdarg.h: No such file or directory
>> $ /usr/bin/g++ conftest.cxx -isysroot /Developer/SDKs/MacOSX10.6.sdk/
>> $
>>
>> It's possible that those headers were available in older XCode versions.
>> "On 10.7 (Lion), use XCode 4.1, which is a free download from the App
>> Store."
>> This might mean that XCode 4.2.x has not been tested and/or that this
>> is not a known issue.
>>
>> You might want to report this problem (and any progress you managed to
>> do, example: maybe it just works with llvm-g++) to a GTK+ development
>> mailing list.
>>
>> AFAICT the solutions might be to:
>>  - avoid -isysroot if "true gcc" is to be used
>>  - use llvm-gcc
>>
>> Andrea
>>
>>
>> >
>> > == TRANSCRIPT 1 ==
>> >
>> > *** Building libtiff *** [12/15]
>> > make
>> > Making all in port
>> > make[1]: Nothing to be done for `all'.
>> > Making all in libtiff
>> > make  all-am
>> > /bin/sh ../libtool  --tag=CXX   --mode=compile /usr/bin/g++-4.2
>> > -DHAVE_CONFIG_H -I.   -I/Users/jkff/gtk/inst/include
>> > -I/Developer/SDKs/MacOSX10.6.sdk/usr/include
>> -I/Users/jkff/gtk/inst/include
>> > -I/Developer/SDKs/MacOSX10.6.sdk/usr/include  -arch i386
>> > -I/Developer/SDKs/MacOSX10.6.sdk/usr/include -arch i386
>> > -I/Developer/SDKs/MacOSX10.6.sdk/usr/include -isysroot
>> > /Developer/SDKs/MacOSX10.6.sdk -mmacosx-version-min=10.6 -isysroot
>> > /Developer/SDKs/MacOSX10.6.sdk -mmacosx-version-min=10.6 -MT
>> tif_stream.lo
>> > -MD -MP -MF .deps/tif_stream.Tpo -c -o tif_stream.lo tif_stream.cxx
>> > libtool: compile:  /usr/bin/g++-4.2 -DHAVE_CONFIG_H -I.
>> > -I/Users/jkff/gtk/inst/include
>> -I/Developer/SDKs/MacOSX10.6.sdk/usr/include
>> > -I/Users/jkff/gtk/inst/include
>> -I/Developer/SDKs/MacOSX10.6.sdk/usr/include
>> > -arch i386 -I/Developer/SDKs/MacOSX10.6.sdk/usr/include -arch i386
>> > -I/Developer/SDKs/MacOSX10.6.sdk/usr/include -isysroot
>> > /Developer/SDKs/MacOSX10.6.sdk -mmacosx-version-min=10.6 -isysroot
>> > /Developer/SDKs/MacOSX10.6.sdk -mmacosx-version-min=10.6 -MT
>> tif_stream.lo
>> > -MD -MP -MF .deps/tif_stream.Tpo -c tif_stream.cxx  -fno-common -DPIC -o
>> > .libs/tif_stream.o
>> > In file included from tiffio.h:247,
>> >                  from tiffiop.h:70,
>> >                  from tif_stream.cxx:30:
>> > /Developer/SDKs/MacOSX10.6.sdk/usr/include/stdarg.h:4:25: error:
>> stdarg.h:
>> > No such file or directory
>> > In file included from
>> > /Developer/SDKs/MacOSX10.6.sdk/usr/include/c++/4.2.1/iosfwd:45,
>> >                  from
>> > /Developer/SDKs/MacOSX10.6.sdk/usr/include/c++/4.2.1/ios:43,
>> >                  from
>> > /Developer/SDKs/MacOSX10.6.sdk/usr/include/c++/4.2.1/ostream:45,
>> >                  from
>> > /Developer/SDKs/MacOSX10.6.sdk/usr/include/c++/4.2.1/iostream:45,
>> >                  from tif_stream.cxx:31:
>> >
>> > == TRANSCRIPT 2 ==
>> > jkff@jkff-laptop ~ $ /usr/bin/g++-4.2 tmp.cxx -o tmp.o -v
>> > Using built-in specs.
>> > Target: i686-apple-darwin11
>> > Configured with: /private/var/tmp/gcc/gcc-5666.3~278/src/configure
>> > --disable-checking --enable-werror --prefix=/usr --mandir=/share/man
>> > --enable-languages=c,objc,c++,obj-c++
>> > --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib
>> > --build=i686-apple-darwin11 --program-prefix=i686-apple-darwin11-
>> > --host=x86_64-apple-darwin11 --target=i686-apple-darwin11
>> > --with-gxx-include-dir=/include/c++/4.2.1
>> > Thread model: posix
>> > gcc version 4.2.1 (Apple Inc. build 5666) (dot 3)
>> >  /usr/libexec/gcc/i686-apple-darwin11/4.2.1/cc1plus -quiet -v -imultilib
>> > x86_64 -D__DYNAMIC__ tmp.cxx -fPIC -quiet -dumpbase tmp.cxx
>> > -mmacosx-version-min=10.6 -m64 -mtune=core2 -auxbase tmp -version
>> > -D__private_extern__=extern -o
>> > /var/folders/jt/r80dbv9d45187qzh0yg853r80000gn/T//ccVJEdap.s
>> > ignoring nonexistent directory
>> > "/usr/include/c++/4.2.1/i686-apple-darwin11/x86_64"
>> > ignoring nonexistent directory
>> >
>> "/usr/lib/gcc/i686-apple-darwin11/4.2.1/../../../../i686-apple-darwin11/include"
>> > #include "..." search starts here:
>> > #include <...> search starts here:
>> >  /Users/jkff/gtk/inst/include
>> >  /usr/include/c++/4.2.1
>> >  /usr/include/c++/4.2.1/backward
>> >  /usr/local/include
>> >  /usr/lib/gcc/i686-apple-darwin11/4.2.1/include
>> >  /usr/include
>> >  /System/Library/Frameworks (framework directory)
>> >  /Library/Frameworks (framework directory)
>> > End of search list.
>> > GNU C++ version 4.2.1 (Apple Inc. build 5666) (dot 3)
>> (i686-apple-darwin11)
>> > compiled by GNU C version 4.2.1 (Apple Inc. build 5666) (dot 3).
>> > GGC heuristics: --param ggc-min-expand=150 --param
>> ggc-min-heapsize=65536
>> > Compiler executable checksum: 1c5d175013b2657e11ab1c9aa1767c94
>> >  /usr/libexec/gcc/i686-apple-darwin11/4.2.1/as -arch x86_64
>> > -force_cpusubtype_ALL -o
>> > /var/folders/jt/r80dbv9d45187qzh0yg853r80000gn/T//ccgQqR0Y.o
>> > /var/folders/jt/r80dbv9d45187qzh0yg853r80000gn/T//ccVJEdap.s
>> > (etc.)
>> >
>> > == TRANSCRIPT 3 ==
>> > jkff@jkff-laptop ~ $ /usr/bin/g++-4.2 -isysroot
>> > /Developer/SDKs/MACOSX10.6.sdk tmp.cxx -o tmp.o -v
>> > Using built-in specs.
>> > Target: i686-apple-darwin11
>> > Configured with: /private/var/tmp/gcc/gcc-5666.3~278/src/configure
>> > --disable-checking --enable-werror --prefix=/usr --mandir=/share/man
>> > --enable-languages=c,objc,c++,obj-c++
>> > --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib
>> > --build=i686-apple-darwin11 --program-prefix=i686-apple-darwin11-
>> > --host=x86_64-apple-darwin11 --target=i686-apple-darwin11
>> > --with-gxx-include-dir=/include/c++/4.2.1
>> > Thread model: posix
>> > gcc version 4.2.1 (Apple Inc. build 5666) (dot 3)
>> >  /usr/libexec/gcc/i686-apple-darwin11/4.2.1/cc1plus -quiet -v -imultilib
>> > x86_64 -D__DYNAMIC__ -isysroot /Developer/SDKs/MACOSX10.6.sdk tmp.cxx
>> -fPIC
>> > -quiet -dumpbase tmp.cxx -mmacosx-version-min=10.6 -m64 -mtune=core2
>> > -auxbase tmp -version -D__private_extern__=extern -o
>> > /var/folders/jt/r80dbv9d45187qzh0yg853r80000gn/T//cckFctdM.s
>> > ignoring nonexistent directory
>> >
>> "/Developer/SDKs/MACOSX10.6.sdk/usr/lib/gcc/i686-apple-darwin11/4.2.1/include"
>> > ignoring nonexistent directory
>> >
>> "/Developer/SDKs/MACOSX10.6.sdk/usr/lib/gcc/i686-apple-darwin11/4.2.1/../../../../i686-apple-darwin11/include"
>> > #include "..." search starts here:
>> > #include <...> search starts here:
>> >  /Users/jkff/gtk/inst/include
>> >  /Developer/SDKs/MACOSX10.6.sdk/usr/include/c++/4.2.1
>> >
>>  /Developer/SDKs/MACOSX10.6.sdk/usr/include/c++/4.2.1/i686-apple-darwin11/x86_64
>> >  /Developer/SDKs/MACOSX10.6.sdk/usr/include/c++/4.2.1/backward
>> >  /Developer/SDKs/MACOSX10.6.sdk/usr/local/include
>> >  /Developer/SDKs/MACOSX10.6.sdk/usr/include
>> >  /Developer/SDKs/MACOSX10.6.sdk/System/Library/Frameworks (framework
>> > directory)
>> >  /Developer/SDKs/MACOSX10.6.sdk/Library/Frameworks (framework directory)
>> > End of search list.
>> > GNU C++ version 4.2.1 (Apple Inc. build 5666) (dot 3)
>> (i686-apple-darwin11)
>> > compiled by GNU C version 4.2.1 (Apple Inc. build 5666) (dot 3).
>> > GGC heuristics: --param ggc-min-expand=150 --param
>> ggc-min-heapsize=65536
>> > Compiler executable checksum: 1c5d175013b2657e11ab1c9aa1767c94
>> > In file included from tmp.cxx:1:
>> > /Developer/SDKs/MACOSX10.6.sdk/usr/include/stdarg.h:4:25: error:
>> stdarg.h:
>> > No such file or directory
>> >
>> >
>> > --
>> > Eugene Kirpichov
>> > Principal Engineer, Mirantis Inc. http://www.mirantis.com/
>> > Editor, http://fprog.ru/
>> >
>> > --
>> > cairo mailing list
>> > [email protected]
>> > http://lists.cairographics.org/mailman/listinfo/cairo
>>
>
>
>
> --
> Eugene Kirpichov
> Principal Engineer, Mirantis Inc. http://www.mirantis.com/
> Editor, http://fprog.ru/
>



-- 
Eugene Kirpichov
Principal Engineer, Mirantis Inc. http://www.mirantis.com/
Editor, http://fprog.ru/

--
cairo mailing list
[email protected]
http://lists.cairographics.org/mailman/listinfo/cairo
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.