DaemonForums  

Go Back   DaemonForums > Miscellaneous > General software and network

General software and network General OS-independent software and network questions, X11, MTA, routing, etc.

Reply
 
Thread Tools Display Modes
  #1   (View Single Post)  
Old 8th November 2008
BSDfan666 BSDfan666 is offline
Real Name: N/A, this is the interweb.
Banned
 
Join Date: Apr 2008
Location: Ontario, Canada
Posts: 2,223
Cool The PCC project seeks donations for ambitious 1.0 release.

So, Yesterday it seems Anders Magnusson put out a call for donations..

http://undeadly.org/cgi?action=artic...20081108135831

PCC is already at an awesome stage, several developers have revived old targets... and it can already compile both OpenBSD's and NetBSD's userland and kernel.

If you have a few dimes to spare, perhaps you can help them work on the few remaining issues.

http://www.bsdfund.org/projects/pcc/
Reply With Quote
  #2   (View Single Post)  
Old 8th November 2008
graudeejs's Avatar
graudeejs graudeejs is offline
Real Name: Aldis Berjoza
ISO Quartermaster
 
Join Date: Jul 2008
Location: Riga, Latvia
Posts: 589
Default

if only it was easy to get new (i know i can get old Mac) PPC for desktop use (with working graphics [2d/3d-optional])

I'd really love to try ppc.... (and yes, i know PS3 is ppc, but there ain't available (normal) video driver)
Reply With Quote
  #3   (View Single Post)  
Old 8th November 2008
adamk adamk is offline
Spam Deminer
 
Join Date: May 2008
Posts: 250
Default

Quote:
Originally Posted by killasmurf86 View Post
if only it was easy to get new (i know i can get old Mac) PPC for desktop use (with working graphics [2d/3d-optional])

I'd really love to try ppc.... (and yes, i know PS3 is ppc, but there ain't available (normal) video driver)
Wow, did you follow the links? Or even read the first post? ppc, in this context, is not the powerpc CPU. It's a fully BSD licensed toolchain.

Adam
Reply With Quote
  #4   (View Single Post)  
Old 8th November 2008
BSDfan666 BSDfan666 is offline
Real Name: N/A, this is the interweb.
Banned
 
Join Date: Apr 2008
Location: Ontario, Canada
Posts: 2,223
Default

Woah, Did either of you read what I wrote? It's PCC(Portable C Compiler), not PPC.
Reply With Quote
  #5   (View Single Post)  
Old 8th November 2008
anemos's Avatar
anemos anemos is offline
Fdisk Soldier
 
Join Date: May 2008
Location: Ελλάδα
Posts: 53
Default

All those weird acronyms are very confusing
GCC, PPC, PCC, BBC... aaaahhh
Reply With Quote
  #6   (View Single Post)  
Old 8th November 2008
graudeejs's Avatar
graudeejs graudeejs is offline
Real Name: Aldis Berjoza
ISO Quartermaster
 
Join Date: Jul 2008
Location: Riga, Latvia
Posts: 589
Red face

actually i did read, and followed the link.... for some reason i thought it's about PowerPC
and for 2nd link i thought it's part of signature (hmm, why, i thought like that....
idk.... must get a sleep, also english ain't my native..., so sometimes i get confused)

I feel like fool... lol


SORRY
*goes back to learn reading *

Last edited by graudeejs; 8th November 2008 at 10:43 PM.
Reply With Quote
  #7   (View Single Post)  
Old 8th November 2008
JMJ_coder JMJ_coder is offline
VPN Cryptographer
 
Join Date: May 2008
Posts: 464
Default

I think its awesome that they what to develop the entire toolchain to be able to (hopefully) boot GNU from the base BSD.

I read some responses on Digg (I think) that was saying that PCC wasn't very capable of creating optimized code like GCC. Does anyone know anything of this? Has the PCC team come out with any sort of benchmark comparisons?
__________________
And the WORD was made flesh, and dwelt among us. (John 1:14)
Reply With Quote
  #8   (View Single Post)  
Old 8th November 2008
Oko's Avatar
Oko Oko is offline
Rc.conf Instructor
 
Join Date: May 2008
Location: Kosovo, Serbia
Posts: 1,102
Default

Quote:
Originally Posted by JMJ_coder View Post
I think its awesome that they what to develop the entire toolchain to be able to (hopefully) boot GNU from the base BSD.

I read some responses on Digg (I think) that was saying that PCC wasn't very capable of creating optimized code like GCC. Does anyone know anything of this? Has the PCC team come out with any sort of benchmark comparisons?
Not yet as the optimization was not high on the priority list of the developers. However due to the simplicity of code it is easy to imagine that once completed the PCC compiler can be far more optimized than the GCC monster. In practical terms that means that the code compiled with PCC can be probably twice faster than the one compiled by GCC. It would be funny to see OpenBSD running faster than Linux despite heavy crypting and randomization or even better my PIII ThinkPAD running faster than my boss' DeLL under Windows XP with Intel Core 2 Duo and 4 GB of RAM.

The advantages of PCC are numerous. It is only C compiler unlike GNU
Frankenstein. It is extremely portable. I think that it took only 2 days to
port it to i386. It is clean and simple. Originally PCC was written in late seventies by Stephen C. Johnson who was a professional mathematician and the member of legendary Bell Labs as a main C compiler for ATT Unix on PDP 11(Legendary DEC machine). It is much faster than GCC. It takes
about one third of time for PCC to compile the same code as GCC.
You will be actually able to compile Firefox in half an hour.

As BSD666Fan already mentioned that PCC is only 5MB of code while GCC is about 250MB. I can not wait for my default OpenBSD installation to slim down from 550MB to less than 300MB. If the developers of Dillo2 make serious progress (add OpenSSL support and possibly idiotic Java Script Engine) the only monster that I would have to keep would be TeX. I really wish Donald Knuth have cleaned up Troff instead of cooding Damn Small Linux here is coming damn small OpenBSD:-)


Lately GCC started dropping support for non-Wintel architectures which did upset many old Unix guys who still want to run their Alphas, Vaxes, and other more exotic ROCK stable hardware.

This is the greatest news possibly since the release of 4.4 BSD lighte.

Last edited by Oko; 9th November 2008 at 12:57 AM.
Reply With Quote
  #9   (View Single Post)  
Old 9th November 2008
JMJ_coder JMJ_coder is offline
VPN Cryptographer
 
Join Date: May 2008
Posts: 464
Default

Quote:
Originally Posted by Oko View Post
Not yet as the optimization was not high on the priority list of the developers. However due to the simplicity of code it is easy to imagine that once completed the PCC compiler can be far more optimized than the GCC monster. In practical terms that means that the code compiled with PCC can be probably twice faster than the one compiled by GCC. It would be funny to see OpenBSD running faster than Linux despite heavy crypting and randomization or even better my PIII ThinkPAD running faster than my boss's DeLL under Windows XP with Intel Core 2 Duo and 4 GB of RAM.
Or how fast my new laptop will run with that kind of potential!!!



Quote:
Originally Posted by Oko View Post
The advantages of PCC are numerous. It is only C compiler unlike GNU
Frankenstein. It is extremely portable. I think that it took only 2 days to
port it to i386. It is clean and simple. Originally PCC was written in late seventies by Stephen C. Johnson who was a professional mathematician and the member of legendary Bell Labs as a main C compiler for ATT Unix on PDP 11(Legendary DEC machine). It is much faster than GCC.
For some reason I thought that it also did C++ compiling. I do think that if it is to be ultimately viable, it will probably eventually have to compile C++ code.



Quote:
Originally Posted by Oko View Post
It takes
about one third of time for PCC to compile the same code as GCC.
You will be actually able to compile Firefox in half an hour.
I'd like to see the benchmarks for compiling kernel and userland.



Quote:
Originally Posted by Oko View Post
As BSD666Fan already mentioned that PCC is only 5MB of code while GCC is about 250MB. I can not wait for my default OpenBSD installation to slim down from 550MB to less than 300MB. If the developers of Dillo2 make serious progress (add OpenSSL support and possibly idiotic Java Script Engine) the only monster that I would have to keep would be TeX. I really wish Donald Knuth have cleaned up Troff instead of cooding Damn Small Linux here is coming damn small OpenBSD:-)
Hmmm...you just gave me a possible idea for my Senior Project next year.
__________________
And the WORD was made flesh, and dwelt among us. (John 1:14)
Reply With Quote
Old 9th November 2008
BSDfan666 BSDfan666 is offline
Real Name: N/A, this is the interweb.
Banned
 
Join Date: Apr 2008
Location: Ontario, Canada
Posts: 2,223
Default

Quote:
Originally Posted by JMJ_coder View Post
For some reason I thought that it also did C++ compiling. I do think that if it is to be ultimately viable, it will probably eventually have to compile C++ code.
There is no C++ support.. doesn't mean it's impossible.

What would it be required? C++ is not used in the kernel or userland.. as a system compiler it would most definitely be a candidate for replacing the local gcc compiler.

In the future, perhaps pcc (and a binutils replacement..) will be part of comp??.tgz and GCC/binutils will only available as ports.
Reply With Quote
Old 9th November 2008
JMJ_coder JMJ_coder is offline
VPN Cryptographer
 
Join Date: May 2008
Posts: 464
Default

Quote:
Originally Posted by BSDfan666 View Post
There is no C++ support.. doesn't mean it's impossible.

What would it be required? C++ is not used in the kernel or userland.. as a system compiler it would most definitely be a candidate for replacing the local gcc compiler.

In the future, perhaps pcc (and a binutils replacement..) will be part of comp??.tgz and GCC/binutils will only available as ports.
You know what it was, I mistook the name for the preproccessor (cpp) as the code for the C++ implementation.
__________________
And the WORD was made flesh, and dwelt among us. (John 1:14)
Reply With Quote
Old 9th November 2008
TerryP's Avatar
TerryP TerryP is offline
Arp Constable
 
Join Date: May 2008
Location: USofA
Posts: 1,547
Default

Quote:
Originally Posted by JMJ_coder View Post
I do think that if it is to be ultimately viable, it will probably eventually have to compile C++ code.
I personally see little reason why a C Compiler should be capable of compiling C++ code, unless the C++ code restricts itself to valid C code or it is specifically advertised as a 'C/C++ Compiler'. (I once made the inverse of that, before I said F' MSVC++ for C). Would you use gcc instead of g++ to compile Qt?


C and C++ are related languages, but they are different languages. If the same compiler did both, C++ would probably boat it like a truck horse at an all you can eat anyway.


Footnote: Whatever the opinions of some people as to it's meaning, to me the phrase "C/C++" only means "C and C++"
__________________
My Journal

Thou shalt check the array bounds of all strings (indeed, all arrays), for surely where thou typest ``foo'' someone someday shall type ``supercalifragilisticexpialidocious''.
Reply With Quote
Old 9th November 2008
Carpetsmoker's Avatar
Carpetsmoker Carpetsmoker is offline
Real Name: Martin
Tcpdump Spy
 
Join Date: Apr 2008
Location: Netherlands
Posts: 2,243
Default

Thread split to The big TeX and (g)troff thread, please continue all Tex/(g)troff discussion there.
__________________
UNIX was not designed to stop you from doing stupid things, because that would also stop you from doing clever things.
Reply With Quote
Old 9th November 2008
JMJ_coder JMJ_coder is offline
VPN Cryptographer
 
Join Date: May 2008
Posts: 464
Default

Quote:
Originally Posted by TerryP View Post
I personally see little reason why a C Compiler should be capable of compiling C++ code, unless the C++ code restricts itself to valid C code or it is specifically advertised as a 'C/C++ Compiler'. (I once made the inverse of that, before I said F' MSVC++ for C). Would you use gcc instead of g++ to compile Qt?


C and C++ are related languages, but they are different languages. If the same compiler did both, C++ would probably boat it like a truck horse at an all you can eat anyway.


Footnote: Whatever the opinions of some people as to it's meaning, to me the phrase "C/C++" only means "C and C++"
I wouldn't be surprised in the least if every program in kernel and userland on a base *BSD system was written in C. But, what about ports/pkgsrc? Many of those programs are written in C++ or a combo of C/C++. I'm not saying it should be an immediate goal, but eventually it should be able to compile C++ code to be able to boot gcc (and its companion g++) from the base system.

And, if I read their website correctly, it compiles f77 code, which is much different from C than C++.
__________________
And the WORD was made flesh, and dwelt among us. (John 1:14)
Reply With Quote
Old 9th November 2008
BSDfan666 BSDfan666 is offline
Real Name: N/A, this is the interweb.
Banned
 
Join Date: Apr 2008
Location: Ontario, Canada
Posts: 2,223
Default

Quote:
Originally Posted by JMJ_coder View Post
I wouldn't be surprised in the least if every program in kernel and userland on a base *BSD system was written in C. But, what about ports/pkgsrc? Many of those programs are written in C++ or a combo of C/C++. I'm not saying it should be an immediate goal, but eventually it should be able to compile C++ code to be able to boot gcc (and its companion g++) from the base system.

And, if I read their website correctly, it compiles f77 code, which is much different from C than C++.
Yes, the kernel and user land is typically all in C, minus a few perl/shell scripts.

I'm still not understanding your desire for C++, it's an entirely different language...

Now, perhaps it's a lack of understanding.. but you do not need a C++ compiler to build either gcc or g++, GNU's C++ compiler is written in C.
Reply With Quote
Old 9th November 2008
nfries88's Avatar
nfries88 nfries88 is offline
Port Guard
 
Join Date: Sep 2008
Posts: 24
Default

Quote:
Originally Posted by BSDfan666 View Post
Yes, the kernel and user land is typically all in C, minus a few perl/shell scripts.

I'm still not understanding your desire for C++, it's an entirely different language...

Now, perhaps it's a lack of understanding.. but you do not need a C++ compiler to build either gcc or g++, GNU's C++ compiler is written in C.
Maybe the desire is not to compile an operating system or another compiler but rather his own C++ project(s)? If pcc wants to replace gcc, why wouldn't it make a p++ to replace g++, a pobjc to replace gobjc, and so-on? :P
Reply With Quote
Old 9th November 2008
BSDfan666 BSDfan666 is offline
Real Name: N/A, this is the interweb.
Banned
 
Join Date: Apr 2008
Location: Ontario, Canada
Posts: 2,223
Default

Quote:
Originally Posted by nfries88 View Post
Maybe the desire is not to compile an operating system or another compiler but rather his own C++ project(s)? If pcc wants to replace gcc, why wouldn't it make a p++ to replace g++, a pobjc to replace gobjc, and so-on? :P
You misunderstand, it wants to replace GCC as a system compiler, prior to 4.4BSD, PCC was the original compiled used.

Now, GCC stands for "GNU Compiler Collection", PCC stands for "Portable C Compiler".

GCC is a collection of compilers for different languages, PCC is a C compiler... a BSD licenced C compiler.

Presumably, 3rd party ports could be compiled by GCC if necessary, or PCC if they're not an absolute compatibility nightmare.
Reply With Quote
Old 9th November 2008
J65nko J65nko is offline
Administrator
 
Join Date: May 2008
Location: Budel - the Netherlands
Posts: 4,125
Default

As far as I understand newer versions of Gcc have dropped support for some architectures/hardware platforms. That is the reason, why for example NetBSD is forced to use older Gcc versions for some CPUs, while they only can use the newest Gcc for the i386 and amd65 platforms.

Wile gcc has the name of being an open source project, it is actually run by a few companies, which, if they don't see any need to still support an older CPU, just drop support.

Fromhttp://gcc.gnu.org/gcc-4.0/changes.html
Quote:
Obsolete Systems

Support for a number of older systems has been declared obsolete in GCC 4.0. Unless there is activity to revive them, the next release of GCC will have their sources permanently removed.

All GCC ports for the following processor architectures have been declared obsolete:

* Intel i860
* Ubicom IP2022
* National Semiconductor NS32K
* Texas Instruments TMS320C[34]x

Also, those for some individual systems have been obsoleted:

* SPARC family
o SPARClite-based systems (sparclite-*-coff, sparclite-*-elf, sparc86x-*-elf)
o OpenBSD 32-bit (sparc-*-openbsd*)
__________________
You don't need to be a genius to debug a pf.conf firewall ruleset, you just need the guts to run tcpdump
Reply With Quote
Old 9th November 2008
TerryP's Avatar
TerryP TerryP is offline
Arp Constable
 
Join Date: May 2008
Location: USofA
Posts: 1,547
Default

Quote:
Originally Posted by JMJ_coder View Post
I wouldn't be surprised in the least if every program in kernel and userland on a base *BSD system was written in C. But, what about ports/pkgsrc? Many of those programs are written in C++ or a combo of C/C++. I'm not saying it should be an immediate goal, but eventually it should be able to compile C++ code to be able to boot gcc (and its companion g++) from the base system.
Some programs in ports only 'officially' support the GNU Compiler Collection 3.x or 4.x; some software also may need to use compiler specifics every now and then that are not standardized.


Port X needs C++ compiler, install g++ as dependency.

Code:
Tools/packages necessary for building GCC

ISO C90 compiler
    Necessary to bootstrap GCC, although versions of GCC prior to 3.4 also allow bootstrapping with a traditional (K&R) C compiler.

    To build all languages in a cross-compiler or other configuration where 3-stage bootstrap is not performed, you need to start with an existing GCC binary (version 2.95 or later) because source code for language frontends other than C might use GCC extensions. 

...

Sounds simple enough, not fun, but simple enough lol.

realistically I would expect to see gcc, g++, and pcc all in the base systems compiler dist set for awhile; the question is which one will be /usr/bin/cc and friends? At the point where the OS can be compiled with pcc and pcc can handle getting GCC up for ports/pkgsrc - do they really need gcc in the base after that?
__________________
My Journal

Thou shalt check the array bounds of all strings (indeed, all arrays), for surely where thou typest ``foo'' someone someday shall type ``supercalifragilisticexpialidocious''.
Reply With Quote
Old 10th November 2008
Carpetsmoker's Avatar
Carpetsmoker Carpetsmoker is offline
Real Name: Martin
Tcpdump Spy
 
Join Date: Apr 2008
Location: Netherlands
Posts: 2,243
Default

Dealing with c++ ports is easy, just add to the port Makefile:

Code:
BUILD_DEPENDS= lang/gcc42
It's really that easy, there is no need to add c++ support to any of the BSD's base -- FreeBSD seems to have a few c++ files in the source tree, but only by 3rd party projects (Just three: groff, OpenSSL and wpa_supplicant), rewriting those files to C would be infinitesimally easier than writing a c++ compiler, not in the least because c++ is a horribly designed language that almost no single human being can fully understand without a decade of study and a humongous brain.
__________________
UNIX was not designed to stop you from doing stupid things, because that would also stop you from doing clever things.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Need suggestions on what to name this project TerryP Off-Topic 10 6th November 2010 03:13 PM
C project to study maxrussell Programming 10 23rd January 2009 08:47 AM
Project layout, any comments? PatrickBaer FreeBSD General 1 12th October 2008 05:13 PM
Suggestions for my honours degree project... scotsman FreeBSD General 7 20th September 2008 01:38 PM
FreeBSD 6.2-RELEASE > 7.0-RELEASE Upgrade Marci FreeBSD Installation and Upgrading 2 23rd July 2008 02:10 PM


All times are GMT. The time now is 07:56 AM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Content copyright © 2007-2010, the authors
Daemon image copyright ©1988, Marshall Kirk McKusick