1. Anders Ruud
  2. love
  3. Issues

Issues

Issue #790 duplicate

'osx.h' file not found

ryandesign
created an issue

Building the latest LÖVE eb8a6179623eb5b08b1a0e7f287d040cb7a8f05f with ./configure and make fails on OS X 10.9 with this message:

libtool: link: ( cd ".libs" && rm -f "liblove.la" && ln -s "../liblove.la" "liblove.la" )
depbase=`echo love.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
    /usr/bin/clang++ -DHAVE_CONFIG_H -I. -I..  -I. -I./modules -I./libraries -I./libraries/enet/libenet/include -I/usr/include/freetype2 -D_FILE_OFFSET_BITS=64 -isystem/opt/local/include -D_THREAD_SAFE -I/opt/local/include/SDL2  -pipe -Os -I/opt/local/include/freetype2 -I/opt/local/include -arch x86_64 -stdlib=libc++ -std=c++11 -MT love.o -MD -MP -MF $depbase.Tpo -c -o love.o love.cpp &&\
    mv -f $depbase.Tpo $depbase.Po
love.cpp:38:10: fatal error: 'osx.h' file not found
#include "osx.h"
         ^
1 error generated.

There is no file "osx.h" in the repository and I don't see a rule to create one. There is a file "OSX.h" in platform/macosx but that directory is not in the include paths. And although the default OS X filesystem is case-insensitive, it is valid to install OS X on a case-sensitive filesystem, and LÖVE should support this by using the correct case for filenames.

Comments (6)

  1. ryandesign reporter

    Thanks. And I see you changed the remaining references to "osx.h" and "osx.mm" to "OSX.h" and "OSX.mm", respectively (in the Xcode project file) in 8ca1af7a7ccd39844271a658c3498ebea7041980. That should take care of the case issues.

    The above build error when using the autotools remains, because the directory platform/macosx is not in the include path. Adding -I../platform/macosx to $CPPFLAGS seems to help but I'm not sure where that should be done in the build system.

  2. Alex Szpakowski

    bartbes: if the main executable file (src/love.cpp) is moved into its own folder somewhere, then I can put the OSX.mm file in with it, since it's only used by the executable's love.cpp.

  3. Log in to comment