GithubHelp home page GithubHelp logo

Comments (6)

blakewatters avatar blakewatters commented on July 19, 2024

I think this is because RestKit and Three20 do not have a dependency between them and parallel building is going on. When I have seen this, its because RestKit can't find the Three20 headers it needs to compile libRestKitThree20.a. I think we can copy a private copy of the TTModel header into RestKit and that's all it will need to compile -- the symbols will be resolved at link time. Are you seeing something different?

from restkit.

jeffarena avatar jeffarena commented on July 19, 2024

Actually, yes, I'm seeing something slightly different. libRestKitThree20.a is building just fine in my case. But my GateGuru targets are failing to build due to missing headers. Here's the build sequence I'm seeing and where I think the problem is:

  1. Build RestKit dependency (libRestKit[Network|ObjectMapping|Support|CoreData|JSONParserJSONKit].b)
  2. RestKit target executes copy headers, which copies everything from the above subsystems into the proper location
  3. Build Three20 dependencies
  4. Build libRestKitThree20.a
  5. Build GateGuru

The GateGuru build step, #5, fails because the copy headers script executed in step #2 misses the libRestKitThree20.a headers that were built as part of step #4. This is obvious when you delete the RestKit/Build directory, but not obvious thereafter. Regardless, you're libRestKitThree20.a headers are guaranteed to always be one build behind as a result of the copy headers task executing in step #2 and not in between step #4 and #5. Make sense?

Note that if I add a copy headers step in between #4 and #5, by adding a Copy Headers task to the RestKitThree20 target, in addition to the RestKit target, everything works fine and as expected.

Hope this helps clarify.

Thanks,
Jeff

from restkit.

blakewatters avatar blakewatters commented on July 19, 2024

Got it. I have added a run script phase to the end of libRestKitThree20.a that re-runs the copy files script. It uses rsync, so it shouldn't show down the build noticeably. Pull 0.9 and give her a try.

from restkit.

blakewatters avatar blakewatters commented on July 19, 2024

I have also switched the build dependency on Three20 from the Support target to the aggregate target so that if you link just Three20, you get everything built and all the headers will copy properly

from restkit.

jeffarena avatar jeffarena commented on July 19, 2024

Cool, will check it out first thing tomorrow. Thanks, Blake!

On Mar 24, 2011, at 7:07 PM, [email protected] wrote:

I have also switched the build dependency on Three20 from the Support target to the aggregate target so that if you link just Three20, you get everything built and all the headers will copy properly

Reply to this email directly or view it on GitHub:
https://github.com/twotoasters/RestKit/issues/34#comment_915548

from restkit.

blakewatters avatar blakewatters commented on July 19, 2024

Closing this out.

from restkit.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.