Visual Studio not building project

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.

Who is Participating?
Placing this question in PAQ as the woner of the question has answered it himself.

Nice work. : >

CS Admin @ EE
Sounds like it might be a precompiled header thing.

Try nuking the .obj directory and having it rebuild all from scratch.
Vinayak KumbarSr Program ManagerCommented:

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
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

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
sindbadAuthor Commented:

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.


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.
>>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
Check the dates on your source code, you may have set them to a future date?
what he said

-- Dan
sindbadAuthor Commented:


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.
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
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.