Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade project to Xcode 4.6 #85

Closed
herzbube opened this issue Dec 14, 2012 · 7 comments
Closed

Upgrade project to Xcode 4.6 #85

herzbube opened this issue Dec 14, 2012 · 7 comments

Comments

@herzbube
Copy link
Owner

Comments below refer to Xcode 4.5 because the original goal was to upgrade to Xcode 4.5. In the meantime Xcode 4.6 has come out, and I am going straight for this, so I have updated the title of this issue.

@horaceho
Copy link

Wonderful, looking forward to that !!

@herzbube
Copy link
Owner Author

There is now a branch upgrade-to-xcode-4.5 that holds the changes necessary to the 3rdparty build system to work with Xcode 4.5. I will integrate the branch into develop as soon as I get a new dev machine that is capable of running Xcode 4.5. Currently I am stuck with a machine that runs Mac OS X 10.6, but is too old for an upgrade to Mac OS X 10.8, which means I am busted because Xcode 4.5 does not run on 10.6 :-(

@herzbube
Copy link
Owner Author

Important: For the build to work you probably need to install the command line developer tools (those that are located in /usr/bin). On a fresh Mac OS X with a newly installed Xcode 4.5, these dev tools are not installed. The easiest way to install them is from within Xcode, under "Preferences > Download > Components".

@herzbube
Copy link
Owner Author

TODOs for when I finally get a proper Xcode 4.5 system to run:

  • Investigate whether the following envvars in build-env.sh need to be updated; lines with the new suggested values have already been added, but are currently commented: IPHONE_SIMULATOR_CONFIGUREFLAGS and MACOSX_CONFIGUREFLAGS
  • Upgrade cocoalumberjack due to deprecation warnings in 3rdparty build
  • Fix warning "implicit declaration of function 'DDLogInfo' is invalid in C99"
    • This can't be from the fact that the header is missing, it clearly is there in the precompiled header
    • It must have something to do how the header file is being processed by the new compiler
    • This possibly goes away with the upgrade to the new version of cocoalumberjack
  • Update README.developer with notes about which prerequisites must be met
    • cmdline dev tools
    • autoconf
    • automake
  • Investigate linker errror
    ld: warning: direct access in boost::system::system_error::~system_error() to global weak symbol vtable for boost::system::system_error means the weak symbol cannot be overridden at runtime. This was likely caused by different translation units being compiled with different visibility settings.
  • Table view background on play view is no longer there, it's just white
  • Add myself to devgroup, as per this SO question, plus run "sudo /usr/sbin/DevToolsSecurity --enable"
  • Possibly update wiki pages for Boost and Xcode
  • Try for a newer boost
  • Try again to make Fuego into an Xcode project. We could then use one of the ready-made boost-as-framework solutions

@herzbube
Copy link
Owner Author

A linker error occurs when building for the device. The reason is because in the Xcode project the target architecture is set to $(ARCHS_STANDARD_32_BIT), which resolves to "armv7 armv7s". The 3rd party software, however, is built with architecture "armv7" only, so when the linker tries to gather objects for the "armv7s" arch, it fails.

I made an attempt at including "armv7s" into the 3rd party software build, but did not succeed. I ended up fixing the problem by removing "armv7s" from the ARCHS build setting. The change is in commit c0748a6, which is still on feature branch "feature-view-board-positions" (i.e. not yet in develop).

@herzbube
Copy link
Owner Author

  • I have not seen the warning "implicit declaration of function 'DDLogInfo' is invalid in C99" for a long time now, while working in the develop branch. The warning must have been an artifact of the preliminary "upgrade-to-xcode-4.5" branch.
  • CocoaLumberjack upgraded to 1.6 (cecc874)
  • Table view background issue has been fixed (36ff378)
  • Boost and Fuego remain unchanged. An upgrade to the build process is planned when Fuego 2.0 comes out. Details are in issue 3rd party software build should not use llvm-gcc anymore #92.
  • Research regarding the linker warning has not yielded any useful result, so I am hoping for the best :-(

@herzbube
Copy link
Owner Author

Important commits that help with closing this issue: 9a23080, 2038191, a4449cf

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants