473,394 Members | 1,693 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,394 software developers and data experts.

debug vs. build vs. publish?

HaLo2FrEeEk
404 256MB
I've been wondering this for a long time. Mainly what is/are the difference(s) between build and publish? I know that when I debug or build a version gets saved to both /bin and /obj, I usually run the one from /bin/build, but what is the difference between the build in /obj and /bin? Is building a good distribution method?

If I make a program I want other people to be able to use, I build it then upload just the executable created, leaving the manifest and other files generated. Is there a reason those files are generated? And when I publish it seems to make a "installable" version of the project, but most times I don't want that.

And there's compile. I always assumed that building the project compiled it, because it generates an executable that I can run on other computers. Is something else happening, or is building and compiling the same thing?

I want to do these things right, so the more I know about all this the better.
Dec 30 '09 #1
5 8778
GaryTexmo
1,501 Expert 1GB
Well, for the most part, they're just build configs. In Visual Studio you can set up multiple build configs to save different settings, then select whichever from the dropdown list and build that. By default, when you create new projects in VS it makes a debug and release one. The debug config builds with full debugging info and some other settings turned on, whereas the release has different debugging settings. You can check all this by checking the solution/project settings for each config. You can also add/edit/delete configs to suit your purposes.
Dec 30 '09 #2
HaLo2FrEeEk
404 256MB
But which is a better option when it comes to distribution? Build, publish, or compile? I can build right within visual studio and give people the file in /bin/release and it works fine (as long as the .net framework is installed on that computer.) Are there advantages to using an actual compiler as opposed to building or publishing?

And I still want to know the differences between building and publishing, you didn't answer that.
Dec 30 '09 #3
GaryTexmo
1,501 Expert 1GB
I was under the impression that building and compiling were the same, perhaps that's not the case. I don't know what publishing is... maybe it has something to do with web or ClickOnce applications?

Maybe give google a try. Sorry, I don't know the answer to those ones.
Dec 30 '09 #4
alexis4
113 100+
I can say for sure that in low level C programming, you compile a single file to get warnings and errors about this specific file. On the other hand, you build not a single file, but the whole project.
If for example you have a global variable in fileA and you use this variable in fileB without declaring it as external, then the builder will throw the error. If you compile fileA as standalone you will get no error. If you compile fileB you will get an error. So I always use build. I compile a single file only to check out that this specific file has no errors without further information about the other files of this project.
This stands for low level C but in VS I haven't seen any "compile" command. Have you?
Debug on the other hand downloads your program on the CPU and gives you the chance to de-bug your program. Breakpoints, step by step run and everything you need to discover the mistake in your code which caused the bug.
About publishing I don't know much details. I know that the publish feature is primarily for websites, moving your dll to a server or something like that...
Dec 30 '09 #5
HaLo2FrEeEk
404 256MB
So I'm probably just fine sticking with building as a distribution method then. Thanks for the help guys, much appreciated!
Dec 30 '09 #6

Sign in to post your reply or Sign up for a free account.

Similar topics

1
by: Alexander Walker | last post by:
Hello I have recently published a web application using the "Publish Web Site" option of the solution explorer from Visual Studio 2005, I have published the website so that the pages could not...
5
by: Steve Le Monnier | last post by:
I've just noticed that the menu items available in Visual Studio 2005 for the Debug and Build menus differ significantly when compared to the menu items in Visual Studio 2003. On my C#...
2
by: Chuck P | last post by:
How can you determine if you are in debug mode in Asp.net 2.0 I thought I could look at the web.config compilation debug directive but then I read this...
4
by: andy6 via DotNetMonster.com | last post by:
I am in VS2005 Configuration Manager and have selected from the Active Solution Configuration "release". The deployment project and a supporting c# dll project both switch to release, however the...
0
by: Chris Davoli | last post by:
Desktop Environment - Win XP Pro 2002 SP2, Visual Studio 2005 Professional Server Enviroment - Windows Server 2003 My debugging is working just fine on my local machine (gives me line number and...
4
by: Janet | last post by:
Hi, I've converted my project from VS 2003 to VS 2005. But when I try to build the web project, there are no DLL files inside the bin folder. I've tried to create a new Class library project...
2
by: muriwai | last post by:
Hi, I have <compilation debug="true"in my web.config. The trouble is that I have to manually change this to "false" every time I publish the website. I tried moving this to global machine.config...
5
by: Andy B | last post by:
How do you tell vs2005 to keep debug info out of your release builds? When I build a release and a debug version, there seems to be no difference in them at all...The release builds still have the...
1
by: Abubakar | last post by:
Hi, I'm working in asp.net 2.0, the one that comes with visual studio 2005. I have noticed that while I build my website there is no dll produced as used to happen in the earlier versions. If...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
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
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
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...

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.