473,396 Members | 2,020 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 software developers and data experts.

Incremental linking and multiple projects

I work with a multi-project workspace. One project (the "startup" project)
has a "Configuration Type" of "Application (.exe)". The other 40 projects
have a "Configuration Type" of "Static Library (.lib)".

My question:
Should the linker incrementally link when I make a change to one of the
..cpps in one of my .lib projects?

For VC6 the answer is yes.

For VC71/2003/.net I'm afraid the answer is no.

Incremental linking doesn't work for me when I make changes to my "Static
Library (.lib)" projects. Passing "/test" to link.exe give me the reason:
LINK : LNK6010: library changed; performing full link

The only time I get incremental linking is when I make a change in my
"Application (.exe)" project.

Hoping the answer to "My Question" is yes,

Rudy
Nov 17 '05 #1
6 6508
Hi Rudy,

This is by design. We can't incrementally link when a static lib changes.
That was never supported before either.

Ronald Laeremans
Visual C++ team

"Rudy Ray Moore" <ru*******@hotmail.com> wrote in message
news:%2****************@tk2msftngp13.phx.gbl...
I work with a multi-project workspace. One project (the "startup" project)
has a "Configuration Type" of "Application (.exe)". The other 40 projects
have a "Configuration Type" of "Static Library (.lib)".

My question:
Should the linker incrementally link when I make a change to one of the
.cpps in one of my .lib projects?

For VC6 the answer is yes.

For VC71/2003/.net I'm afraid the answer is no.

Incremental linking doesn't work for me when I make changes to my "Static
Library (.lib)" projects. Passing "/test" to link.exe give me the reason:
LINK : LNK6010: library changed; performing full link

The only time I get incremental linking is when I make a change in my
"Application (.exe)" project.

Hoping the answer to "My Question" is yes,

Rudy

Nov 17 '05 #2

Ronald,

Are you saying that I was always performing a "full link" with this same
setup in VS6? In that case, it takes six times as long to perform a full
link in VS7.1/.net/2003 than in VS6!

BTW, here's a product that enables "incremental linking" for
VS7.1/2003/.net. It works, even with changes to static libraries!

===

http://www.workspacewhiz.com/FastSol...ildReadme.html
New in Version 2.20 is support for incremental linking a multi-project
solution. Visual C++ does not seem to support incremental linking when a
file in a library project has changed. In fact, when examining the output
after turning on the verbose linker output, it appears to be nearly
identical to a full link. Fast Solution Build enables incremental linking
support for all projects in the solution. It is amazing how quickly links
perform when they are incremental.

===

Thanks for your help,

Rudy

"Ronald Laeremans [MSFT]" <ro*****@online.microsoft.com> wrote in message
news:%2****************@TK2MSFTNGP11.phx.gbl...
Hi Rudy,

This is by design. We can't incrementally link when a static lib changes.
That was never supported before either.

Ronald Laeremans
Visual C++ team

"Rudy Ray Moore" <ru*******@hotmail.com> wrote in message
news:%2****************@tk2msftngp13.phx.gbl...
I work with a multi-project workspace. One project (the "startup" project) has a "Configuration Type" of "Application (.exe)". The other 40 projects have a "Configuration Type" of "Static Library (.lib)".

My question:
Should the linker incrementally link when I make a change to one of the
.cpps in one of my .lib projects?

For VC6 the answer is yes.

For VC71/2003/.net I'm afraid the answer is no.

Incremental linking doesn't work for me when I make changes to my "Static Library (.lib)" projects. Passing "/test" to link.exe give me the reason: LINK : LNK6010: library changed; performing full link

The only time I get incremental linking is when I make a change in my
"Application (.exe)" project.

Hoping the answer to "My Question" is yes,

Rudy


Nov 17 '05 #3
Rudy Ray Moore wrote:
Ronald,

Are you saying that I was always performing a "full link" with this
same setup in VS6? In that case, it takes six times as long to
perform a full link in VS7.1/.net/2003 than in VS6!

BTW, here's a product that enables "incremental linking" for
VS7.1/2003/.net. It works, even with changes to static libraries!


It works by mostly ignoring your libraries and simply feeding all of the
..obj's directly to the linker. That's not doing exactly the same thing -
and is only an option for libraries that are built by projects in the same
solution. Still, it's cool that it works.

-cd
Nov 17 '05 #4
Carl Daniel [VC++ MVP] <cp*****************************@mvps.org.nospam > wrote:
[...] Still, it's cool that it works.
I installed this plugin a while ago and
the main thing thing it does for me is
doing the dependency check within a
fraction of the time VS needs for this.
I wouldn't exactly call that cool. I'd
say it's sad that VS doesn't get this
right for several versions. Dependency
checks have been a nuisance since I use
VS (which I started with VC6).
-cd

Schobi

--
Sp******@gmx.de is never read
I'm Schobi at suespammers dot org

"Sometimes compilers are so much more reasonable than people."
Scott Meyers
Nov 17 '05 #5

I didn't have dependency checking problems with Visual C++ with VC++ 6. I
do have problems with VC++ 2003/.net/7.1.

I wonder if there is something "special" about your VC++6 workspace that
prevented dependency checking from working for you.

Rudy
"Hendrik Schober" <Sp******@gmx.de> wrote in message
news:%2****************@TK2MSFTNGP09.phx.gbl...
Carl Daniel [VC++ MVP] <cp*****************************@mvps.org.nospam >

wrote:
[...] Still, it's cool that it works.


I installed this plugin a while ago and
the main thing thing it does for me is
doing the dependency check within a
fraction of the time VS needs for this.
I wouldn't exactly call that cool. I'd
say it's sad that VS doesn't get this
right for several versions. Dependency
checks have been a nuisance since I use
VS (which I started with VC6).
-cd

Schobi

--
Sp******@gmx.de is never read
I'm Schobi at suespammers dot org

"Sometimes compilers are so much more reasonable than people."
Scott Meyers

Nov 17 '05 #6
Rudy Ray Moore <ru*******@hotmail.com> wrote:
I didn't have dependency checking problems with Visual C++ with VC++ 6. I
do have problems with VC++ 2003/.net/7.1.

I wonder if there is something "special" about your VC++6 workspace that
prevented dependency checking from working for you.
What was "special" about it was, that
it had _a_lot_ of projects in it. And
it wasn't that it didn't work. But I
have seen VS6 beeing off to check
dependencies for 4mins. I have been
told by rather reliable people that
they have seen this 10mins.
If you have such projects, you have two
choices: Do it by hand, or use command
line tools. The IDE is useless.
Rudy
[...]


Schobi

--
Sp******@gmx.de is never read
I'm Schobi at suespammers dot org

"Sometimes compilers are so much more reasonable than people."
Scott Meyers
Nov 17 '05 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
by: Thorsten Ottosen | last post by:
Dear all, I work on a major system written in C# in visual studio 2003. Our solution has 10+ projects and all projects are compiled with /incremental. In a C++ world, non-incremental builds...
0
by: Rudy Ray Moore | last post by:
I've been having trouble getting incremental linking to work under Visual C++ .net 2003 7.1 for my multi-project workspace. Ronald Laeremans and Carl Daniel (and a few others) helped me figure it...
3
by: Alex Shturm | last post by:
Hi, I am trying to activate incremental link using VC7 (.NET 2003) on a pretty big project (executable size is more than 100Mb, and it gets linked from several dozen of libraries and object...
0
by: Steve McLellan | last post by:
Hi, Was wondering whether there's any more info on why the project I'm working on might not be able to link incrementally... as deadlines approach, waiting 3 minutes each link is not what I...
7
by: Michael Reinschmiedt | last post by:
Hello, setting the switch /clr significantly increased the linking time (ca. 18 min). The linker output shows "/incremental:no /fullbuild", when setting the switch /test. The same code linked in...
5
by: news.microsoft.com | last post by:
We have recently upgraded from VS2002 to VS2005 and I'm having a problem with the linker always performing a full link even though nothing has changed. In searching the newsgroups I found that I...
1
yabansu
by: yabansu | last post by:
Hi all, I implemented a basic client application. It communicates with server and works properly. Building processes succeed just by giving the following warning: LINK : D:\DOC\Visual Studio...
8
by: Bern McCarty | last post by:
We have a large mixed dll that I can never seem to get to link incrementally. Below is the console output. For simplicity I've eliminated some stuff that we normally do when we really link this...
35
by: mwelsh1118 | last post by:
Why doesn't C# allow incremental compilation like Java? Specifically, in Java I can compile single .java files in isolation. The resulting individual .class files can be grouped into .jar files....
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.