Xcode keeps re-compiling unchanged files

  • Xcode seems to insist on re-compiling a few of the .cpp files in my project. None of their dependencies is changing (I can Build twice in a row and it still compiles the second time).

    Part of the problem with this is that these files have a ton of warnings (they're not my responsibility, so I can't fix them). So the warnings clutter the build results.

    Any idea how to get Xcode to stop? Thanks!

    --
    Rick
  • Double-check the modification dates on your input files vs. their corresponding output files in the build products directory. The dependency analysis is based on a pretty straight forward "is the input newer than the output" type check.

    Joar

    On 22 maj 2013, at 17:23, Rick Mann <rmann...> wrote:

    > Xcode seems to insist on re-compiling a few of the .cpp files in my project. None of their dependencies is changing (I can Build twice in a row and it still compiles the second time).
    >
    > Part of the problem with this is that these files have a ton of warnings (they're not my responsibility, so I can't fix them). So the warnings clutter the build results.
    >
    > Any idea how to get Xcode to stop? Thanks!
    >
    > --
    > Rick
    >
    >
    >
    >
    > _______________________________________________
    > Do not post admin requests to the list. They will be ignored.
    > Xcode-users mailing list      (<Xcode-users...>)
    > Help/Unsubscribe/Update your Subscription:
    > https://lists.apple.com/mailman/options/xcode-users/<joar...>
    >
    > This email sent to <joar...>
  • On May 22, 2013, at 20:43 , Joar Wingfors <joar...> wrote:

    > Double-check the modification dates on your input files vs. their corresponding output files in the build products directory. The dependency analysis is based on a pretty straight forward "is the input newer than the output" type check.

    Okay, it's definitely faster the second time, assuming you start from a clean build. So, it's clearly not recompiling all the files.

    But it re-shows all the warnings, even for files that didn't recompile. The reason I thought it was recompiling was that I thought the behavior was to only show the warnings for the last compile, and if you built again, if the file wasn't re-compiled, it wouldn't show it.

    That, plus the fact that the log navigator showed an entry for each file, I thought it was re-compiling each time.

    Wasn't there UI at one point to show only recent issues?

    Oh, I think I just found it. The little clock in the bottom-left. Weird. I remember UI across the top of a window before for this.

    --
    Rick
  • On 23 maj 2013, at 01:27, Rick Mann <rmann...> wrote:

    >
    > On May 22, 2013, at 20:43 , Joar Wingfors <joar...> wrote:
    >
    >> Double-check the modification dates on your input files vs. their corresponding output files in the build products directory. The dependency analysis is based on a pretty straight forward "is the input newer than the output" type check.
    >
    > Okay, it's definitely faster the second time, assuming you start from a clean build. So, it's clearly not recompiling all the files.
    >
    > But it re-shows all the warnings, even for files that didn't recompile. The reason I thought it was recompiling was that I thought the behavior was to only show the warnings for the last compile, and if you built again, if the file wasn't re-compiled, it wouldn't show it.
    >
    > That, plus the fact that the log navigator showed an entry for each file, I thought it was re-compiling each time.
    >
    > Wasn't there UI at one point to show only recent issues?
    >
    > Oh, I think I just found it. The little clock in the bottom-left. Weird. I remember UI across the top of a window before for this.

    You may be confusing the issue navigator for the log viewer. In the log viewer there's a "recent vs. all" filter at the top.

    Joar
  • On May 23, 2013, at 01:31 , Joar Wingfors <joar...> wrote:

    > You may be confusing the issue navigator for the log viewer. In the log viewer there's a "recent vs. all" filter at the top.

    I don't have a "recent vs. all" in either.

    --
    Rick
  • On 23 May 2013, at 11:18 AM, Rick Mann <rmann...> wrote:

    > On May 23, 2013, at 01:31 , Joar Wingfors <joar...> wrote:
    >
    >> You may be confusing the issue navigator for the log viewer. In the log viewer there's a "recent vs. all" filter at the top.
    >
    > I don't have a "recent vs. all" in either.

    I am using Xcode 4.6.2 (though this has been a feature since 4.0). I have selected the Log navigator (last tab). I selected a "Build" log. At the upper-left corner of the viewer pane are two sets of lozenges. The second is for filtering severity.

    The first offers a choice between "All" and "Recent." "All" shows the union of all unresolved errors (etc.) in previous builds, even in files that had not been changed, and therefore not included in the last build. "Recent" just shows the results of the last build.

    — F

    --
    Fritz Anderson
    Xcode 4 Unleashed: 4.5 supplement for free!
    http://www.informit.com/store/xcode-4-unleashed-9780672333279
  • On May 23, 2013, at 11:18:01, Rick Mann <rmann...> wrote:

    > On May 23, 2013, at 01:31 , Joar Wingfors <joar...> wrote:
    >
    >> You may be confusing the issue navigator for the log viewer. In the log viewer there's a "recent vs. all" filter at the top.
    >
    > I don't have a "recent vs. all" in either.

    He said log VIEWER, not log navigator. Click a log in the log navigator and you'll get a log viewer in the main pane, which indeed has those buttons.

    There's also the little clock icon at the bottom of the log navigator to filter out all but the most recent log.

    --
    Steve Mills
    office: 952-818-3871
    home: 952-401-6255
    cell: 612-803-6157
  • On May 23, 2013, at 09:36 , Fritz Anderson <fritza...> wrote:

    > I am using Xcode 4.6.2 (though this has been a feature since 4.0). I have selected the Log navigator (last tab). I selected a "Build" log. At the upper-left corner of the viewer pane are two sets of lozenges. The second is for filtering severity.
    >
    > The first offers a choice between "All" and "Recent." "All" shows the union of all unresolved errors (etc.) in previous builds, even in files that had not been changed, and therefore not included in the last build. "Recent" just shows the results of the last build.

    Indeed, it's there. I had failed to actually select one of the log entries; it was still showing source from a selected file in the other tab.

    I really hate this browser UI model.

    --
    Rick
previous month may 2013 next month
MTWTFSS
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    
Go to today