Visual Studio not building project

Posted on 2002-03-07
Last Modified: 2013-11-20

OS  : Windows NT 4
Env : Visual Studio 6.0 Enterprise edition.

We are working on a project that has 40 c++ application projects and 40 c++ dll projects and a dozen of c++ static lib projects.

To build all of them, there is a masterproj project with a dummy c++ file with only main().

All the c++ exe and dll projects are made dependencies for the masterproj.

Individual components are developed and built on developers machines and maintained by configuration mgmt tool CCC Harvest.

Configuration team check out the projects in their build machine. Build the components and distribute to QA test servers.

I recently changed code for two components and checked with the configuration mgmt system.

For the two components I changed recently, latest version of the source files, individual project files (dsp, dsw) are checked out into the build machine. Also the latest version of the masterproj's dsw file is checked out.

When the masterproj.exe is built, Visual studio builds all the components but for the two components I modified.

I opened the masterproj.exe's dsw file in notepad and manually verfieid for the dependency of my two components and it is present.

Still my components are not built.

Did anyone ever faced a problem similar to this ?

BTW, I checked out the masterproj in my development machine and built the components. All the components including my two components are built perfectly.

Thanks for the help.

Question by:sindbad
  • 4
  • 2
  • 2
  • +3

Expert Comment

ID: 6848979
Sounds like it might be a precompiled header thing.

Try nuking the .obj directory and having it rebuild all from scratch.

Expert Comment

ID: 6849525

Close ur projects in VC++ and open windows explorer and go to those component's folder. Delete off respective .ncb, .opt files and Debug directory. Then again open those components workspace and say "Rebuild All". That should solve ur prob.

Try it out
LVL 49

Expert Comment

ID: 6849813
Check the dates on the relevant files.  If the .OBJ is newer than the .CPP, then VC++ won't build it.  That can happen if you were testing some date-sensitive feature (eg, 30-day trial version logic)  Your computer is in the future (briefly) and you tweek a file or it gets saved automatically with next month's date.  It happens more often that one might think.

-- Dan

Author Comment

ID: 6851364

Hi all,

"Rebuild All" of masterproj is simple solution and I don't mind doing it in my developer machine.

In the client project I'm working, there is a seperate configuration team that builds the components in their server daily and distribute binaries to Quality Assurance team for testing.

Convincing them to do a "Rebuild All" of masterproj is the "tough" job.

One idea came to my mind is delete the release folder for my two components only. And now let my config team do a  build of masterproj and now Visual studio SHOULD recognize these two components and build them.

What experts feel about this solution ?.

BTW, the configuration server donot run any trial software.



Expert Comment

ID: 6851397
The config team should be rebuilding ALL the projects nightly and distributing them to the QA team. They should delete all the .obj files automatically before the rebuild each night, and creating completely new ones. If they are already doing this, deleting the Release directory won't help, but you shouldn't have this problem at all anyways.

If they are not doing this, you will run into many more problems. Visual Studio has still not perfected recognizing when files need to be rebuilt.
Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

LVL 49

Expert Comment

ID: 6851453
>>delete the release folder for my two components only

If the OBJ files are going into the Release directory, then that will ensure a recompile.  Otherwise, a build will just re-link the existing OBJs (for instance, if you are placing them in a different folder).

>>BTW, the configuration server donot run any trial software.
Wow, you really missed the point.  You might consider re-reading my post.

-- Dan

Expert Comment

ID: 6886487
Check the dates on your source code, you may have set them to a future date?
LVL 49

Expert Comment

ID: 6886873
what he said

-- Dan

Author Comment

ID: 7111422


I discovered the root cause for the problem.
Among the two components I worked, let us say A and B, Component A depends on component B.
So, in the dependency of A, component B is added.
However, the person who made change to component B prior to me (on the same day) incorrectly added Component A to its dependency.

This caused a CIRCULAR DEPENDENCY between both the components and Visual Studio failed to build both the components A and B from MasterProj.exe

By removing the dependency of A in project B, we broke the circular dependency and both the components were built from MasterProj.exe, as expected.

A good leason in developing software in a colloborative environment.

I thank all experts for extending their valuable advice.
LVL 49

Expert Comment

ID: 7112153
Good work sinbad.

Since you solved this problem yourself, I suggest that you post a question to Community support and request a refund.  This Q should not be deleted.  It is good information and should be saved in the PAQ.

-- Dan

Accepted Solution

ComTech earned 0 total points
ID: 7114302
Placing this question in PAQ as the woner of the question has answered it himself.

Nice work. : >

CS Admin @ EE

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
paragon account problem 9 96
method notes when mouse over in eclipse 5 68
NotAlone Challenge 20 72
Problem to open Excel file 15 44
Introduction: Dynamic window placements and drawing on a form, simple usage of windows registry as a storage place for information. Continuing from the first article about sudoku.  There we have designed the application and put a lot of user int…
Have you tried to learn about Unicode, UTF-8, and multibyte text encoding and all the articles are just too "academic" or too technical? This article aims to make the whole topic easy for just about anyone to understand.
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.
Internet Business Fax to Email Made Easy - With eFax Corporate (, you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, fr…

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

24 Experts available now in Live!

Get 1:1 Help Now