Solved

Visual Studio not building project

Posted on 2002-03-07
11
359 Views
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.






0
Comment
Question by:sindbad
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
  • 2
  • +3
11 Comments
 
LVL 3

Expert Comment

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

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

Expert Comment

by:VinExpert
ID: 6849525
Hi,

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
VinExpert
0
 
LVL 49

Expert Comment

by:DanRollins
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
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:sindbad
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.

Thanks

0
 
LVL 3

Expert Comment

by:Crius
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.
0
 
LVL 49

Expert Comment

by:DanRollins
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
0
 

Expert Comment

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

Expert Comment

by:DanRollins
ID: 6886873
what he said

-- Dan
0
 

Author Comment

by:sindbad
ID: 7111422

Hi,

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.
0
 
LVL 49

Expert Comment

by:DanRollins
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
0
 

Accepted Solution

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

Nice work. : >

Regards,
ComTech
CS Admin @ EE
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This is to be the first in a series of articles demonstrating the development of a complete windows based application using the MFC classes.  I’ll try to keep each article focused on one (or a couple) of the tasks that one may meet.   Introductio…
Introduction: Ownerdraw of the grid button.  A singleton class implentation and usage. Continuing from the fifth article about sudoku.   Open the project in visual studio. Go to the class view – CGridButton should be visible as a class.  R…
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.
Monitoring a network: how to monitor network services and why? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the philosophy behind service monitoring and why a handshake validation is critical in network monitoring. Software utilized …

627 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