Opened 11 years ago

Closed 11 years ago

#24841 closed defect (fixed)

stellarium-0.10.4 build fails when MacOSX10.4u SDK isn't installed

Reported by: dfokkema@… Owned by: michaelld (Michael Dickens)
Priority: Normal Milestone:
Component: ports Version: 1.8.2
Keywords: Cc: ryandesign (Ryan Schmidt), michaelld (Michael Dickens)
Port: stellarium

Description

Stellarium fails to build on OS X 10.6.3, Xcode 3.2.2, MacPorts 1.8.2. Please see attached log. Since the compiler is complaining about missing standard C++ header files, I'm thinking this is either quite obvious, or very strange.

Attachments (2)

stellarium-build.log (265.3 KB) - added by dfokkema@… 11 years ago.
stellarium.patch (559 bytes) - added by dfokkema@… 11 years ago.

Download all attachments as: .zip

Change History (16)

Changed 11 years ago by dfokkema@…

Attachment: stellarium-build.log added

comment:1 Changed 11 years ago by ryandesign (Ryan Schmidt)

Cc: ryandesign@… added
Owner: changed from macports-tickets@… to raimue@…

The relevant error seems to be

stddef.h: No such file or directory

Are you able to locate stddef.h on your system? On my Snow Leopard machine, it is located at /usr/include/stddef.h. Does that file exist on yours?

comment:2 Changed 11 years ago by dfokkema@…

Indeed the error seems to be that the compiler doesn't know where to find the include files. However, on my machine (also Snow Leopard), it's there. However, in the generated Makefile, I can't find something like INCLUDE_DIR or some other option. My background is Linux and I've only been on OS X for about a week, so I'm not really sure where to look. However, I'd expect to have an INCLUDE_DIR option in the Makefile. Should I attach it to this ticket?

comment:3 Changed 11 years ago by jmroot (Joshua Root)

Keywords: build failure removed

The compiler always looks for headers in /usr/include unless you use -nostdinc.

comment:4 Changed 11 years ago by michaelld (Michael Dickens)

Cc: michaelld@… added

Cc Me!

comment:5 Changed 11 years ago by dfokkema@…

Hmm... I tried running a make -d in the work directory, which fails. However, the debug options don't show the actual compiler commands, so I don't really know for sure what command line arguments are given. However, tracking down some cmake directories show files containing lots of compiler flags, but no -nostdinc. Why does Mac's make don't show the g++ invocations? How do I track down this problem? Is this problem consistent or are some (or most) people actually able to compile the darn thing?

comment:6 Changed 11 years ago by dfokkema@…

...furthermore, a grep -R nostdinc shows nothing in the entire build directory...

comment:7 Changed 11 years ago by raimue (Rainer Müller)

CMake generated Makefiles are silent by default. Use make VERBOSE=1 to see what it actually invokes.

comment:8 Changed 11 years ago by dfokkema@…

Got it, thanks! So CMakeLists.txt defines a flag to use the MacOSX10.4u.sdk, but that's not present in my XCode install. The following patch solves the problem and stellarium works perfectly.

Changed 11 years ago by dfokkema@…

Attachment: stellarium.patch added

comment:9 Changed 11 years ago by ryandesign (Ryan Schmidt)

Summary: stellarium-0.10.4 compilation error - build failurestellarium-0.10.4 build fails when MacOSX10.4u SDK isn't installed

comment:10 Changed 11 years ago by raimue (Rainer Müller)

Status: newassigned

I don't have the MacOSX10.4u SDK either, but it builds fine for me without it. If we want to patch this, it should also be using ${developer_dir} instead of hardcoded /Developer.

comment:11 Changed 11 years ago by dfokkema@…

Do the Xcode and OS versions match mine? If they do, there must be some configurable or installed port which differs on our systems?

comment:12 Changed 11 years ago by michaelld (Michael Dickens)

Does Stellarium still work (both installing, and executing the .app) for any / all of you? I've been working on ticket #25181 (using 10.5.8 Intel, XCode 3.1.3, MacPorts 1.9.0), and have been able to get Stellarium to compile and install, but the resulting executable isn't any good.

comment:13 Changed 11 years ago by michaelld (Michael Dickens)

Owner: changed from raimue@… to michaelld@…
Status: assignednew

comment:14 Changed 11 years ago by michaelld (Michael Dickens)

Resolution: fixed
Status: newclosed

Should be fixed in [68848]. Upgraded SDK dependency to 10.5.

Note: See TracTickets for help on using tickets.