This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: GCC GUI???


On 28/12/2010 04:53, emanu wrote:

Well, just forget it... I have not intentionally tryed to be ironic or complain in a rude way about GCC in the face of GCC users and sorry if that's how I came across. I sincerely thought that since the source code I want to edit was mentioned having been compiled in GCC is maybe would have to be compiled in GCC or at least that that would be the shortest way to success. I might have mixed the concept of a program language (C) with the concept of a tool to work with it (GCC) thinking that then there should be command and windows style application of this GCC. Now I think I clearly understand GCC has really "nothing to do" with the fact it has originally been compiled in GCC and written in C. It's not a "C-program", compiled in GCC wich for less skilled user is dificult and therefore could use the windows style version ex MinGW of GCC. It's rather a "C-program" and thereÂs a number of compilers, some command line style and among theese GCC and some windows style ones like MinGW and really windows style ones like Code::Blocks etc. I guess it's have not been clear enough to me even thou I have been on GCCs site Googled on it etc. It's a lot of information and terms etc and what I might have needed was a simple, clear explanation "for dummies" of GCC, what it is etc. It's actually a thing I tryed to find thru Google "GCC for Dummies". Thought I understood some of it but that I got stuck somehow somewhere and so I thought a forum then could actually clear things out even if sensing it might not be the truely right place for it. Didn't have any other ideas thou. Maybe the question to have asked would have been What is really GCC and for what do you or should you use it? But now I think I get it enough to say it a closed/resolved matter. So sorry and thanks.


People in this mailing list are trying to be helpful, but I believe you have some very basic misunderstandings about gcc, compilers, gui programs, and C. Your problems are not really about gcc or its use, and therefore this is the wrong mailing list. But let me try to clear up things a little here, and point you in the right direction.


You are trying to work with a program written in C (gravit). Thus you are looking for a C compiler, and have discovered that gcc is a C compiler.

First, you have to understand what a compiler actually is. It is a program that takes C source code, and generates machine-executable object code. There is no such thing as a "gui" compiler, or "windows-style" compiler - compilers are by their nature command-line programs. They are run with various options, read some files in, and write files out. There is no need nor use of a gui here, and no serious compiler attempts to have such a windowed or graphics interface.

gcc is such a command line compiler.

When you download the gcc packages from the gcc website (or ftp site), you are downloading the source code for gcc. This is of interest to developers, package maintainers, curious hobby users, etc. It is of little interest to end-users - they will normally want a ready-build binary for their operating system and processor of choice.

MinGW is a an example of such a ready-built gcc binary for windows. It is a package of ready-to-run compiler tools, libraries, and related tools. It is often used in conjunction with msys, which is a collection of Linux-style utilities for use on windows. Please look at the msys and mingw websites for information about downloading and installing these. Unfortunately, the process is not as simple as it could be - be prepared to read a bit rather than just clicking an "install" link. If you intend to build other open source software packages, then I recommend you install msys as well as mingw, as a lot of software uses the Linux-style utilities for building. Note that neither mingw nor msys has a gui, nor are they "windows-style" programs. They are collections of command-line programs.


The tool you are mixing up is the IDE, or "integrated development environment". An IDE is an editor, project manager, and often debugger that provides a front-end to a compiler. It is not a compiler itself - it runs the compiler "in the background" as needed. The editor and the debugger front-end are gui programs for user-interaction, while compilation is done using the command-line compiler program, automated by the IDE. Code::Blocks is one such IDE, available for many systems. One choice for downloading and installing Code::Blocks on windows includes mingw, i.e., the gcc compiler on windows. This may be your easiest option, though it does not include the other useful utilities from msys.



Once you believe you have your IDE and compiler in place, it is time to try a /small/ program. Write, compile and run a "Hello world" program before you try to go any further.



A program like "gravit" is large, and depends on a lot of other libraries. It is not a simple matter to compile when you are unfamiliar with the process. You may want to use simpler programs to start with.


To compile gravit, you need to install a number of other libraries. The gravit website gives a list of these, including SDL, OpenGL and Lua. You must first find and install these libraries for your system. You then need to modify the makefile for gravit to get the library installation paths right (read the instructions on the gravit website, or in the gravit source code).

There is a google group for gravit, where you may find some help. However, you may also be told that you should spend more time learning the basics first, before trying to build gravit on windows.


An alternative you should consider if you are serious about learning C development, is to switch to Linux (I recommend Linux Mint for newcomers to Linux). Building a program like gravit is much simpler under Linux, because all the parts (gcc, utilities, libraries) are either pre-installed, or are easily installed from the distribution's package manager.



I wish you luck on your quest, and hope you enjoy working with C and gcc. Remember, it's the journey that's important, not the destination.


And if all else fails, try the pre-build gravit binary for windows:

<http://gravit.slowchop.com/dist/gravit-0.4.2-win32-installer.exe>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]