473,626 Members | 3,467 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

debug vs. build vs. publish?

HaLo2FrEeEk
404 Contributor
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 "installabl e" 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 8802
GaryTexmo
1,501 Recognized Expert Top Contributor
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 Contributor
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 Recognized Expert Top Contributor
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 New Member
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 Contributor
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
5864
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 be updated, do I need to set the web.config so that it contains <compilation defaultLanguage="c#" debug="false"> before I publish the web site or can I make this configuration change on the deployment machine after the site has been deployed? ...
5
1978
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# installation I don't have build solution, rebuild solution, Step into, Step out, or the Exceptions options on my menu Does anybody know why these important tools are missing from the menu structure?
2
1888
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 http://odetocode.com/Blogs/scott/archive/2005/11/15/2464.aspx which said the directive is ignored if you "Publish Web Site". In my global.asax file I wanted to do somethings depending on whether we are debugging or live.
4
2086
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 website remains at debug. When I attempt to change the dropdown for the website debug is the only option. How can I ensure that when I build that the entire solution including the website is in release mode? -- Message posted via...
0
1753
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 module of error), but when I publish to the server, if wil give me the hexidecimal error without the line number or module it happened in. Here is how I publish. I do a build, Publish Web site. the only option is checkbox is "Allow this...
4
1866
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 and build it, purely in VS2005, and when I build this single project, the bin folder will contain the compiled DLL files. Is there any settings that I've missed?
2
2418
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 and web.config on the development machine, but then VS 2005 complains that there's no Debug in web.config and asks to modify the file. When I remove the compilation section completely from local web.config, VS 2005 adds a new one. This is a big...
5
1791
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 debug databases with them...
1
1045
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 there is a no dll, what use it is to compile with either Debug or Release configurations? Does that make a difference? Regards,
0
8268
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, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
8202
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 effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
8707
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, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
8510
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 protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
7199
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, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
6125
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 presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
4202
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
1812
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
2
1512
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

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.