Jump to content

[VPC] One vpc for source?


Alina

Recommended Posts

Greetings my minions!

 

I'm currently developing something new and (hopefully) big. It's a vpc specially designed to compile the sources. There are some features I include in this. But! I won't release anything until the community has spoken. I want to discuss this topic with you. Do you think it's good? What do you expect from it? Would you use it? And last but not least: If you have any ideas or features for this vpc, tell me!

The idea behind that is simple: This vpc will come with the basic clang compiler. I'll only release it for freebsd 10.1+ (updates will follow of course ^^). I've recompiled the kernel and configured the machine for one big task: Compiling the source. And for this, I'll edit every source branch you want me to edit. Starting from the famous vanilla core to mainline branches and even your own branches. These sources will be adapted to clang and c++14 standard. I'll also release them. There's just some easy steps for you to do: Just set up the vpc (it's really easy I promise!), upload the source package I provide (it's easy I promise!), extract it and you're ready to compile it. Without worrying about external stuff or libraries, just upload it and you're ready to go!

As mentioned before I'll release newer versions from time to time. What does this mean for you? Just download your sources, install the new updated machine, upload it and continue where you've left off! Easy is that!

My plans for this are simple: I want to create an easy standard for everyone. The kernel is kept with maximum compatibility for every pc so everyone should be able to run the vpc and compile his sources. There will be no need to watch out for libraries or anything else as everything will be kept in a special directory where you can access it. And! Because of the new way the gamefiles will be compiled (outsourcing every library) you won't have to upload tons of mb every time you recompile your game. It'll be smooth and easy work for you.

 

What will the machine have:

1. Easy set up (download, import the virtual machine, adapt it's speed if you want and you're ready to go!)

2. Complete documentation (from installing, configuring, setting up network and everything else so you can look up if anything doesn't work as you want it)

3. External libraries. The gamefile will be by far smaller than before and you won't have to upload a big file everytime you recompile it

4. Easy to maintain. Ports like portupgrade are installed by default so you can update the libraries and stuff easy and fast

5. Completely configured for one purpose: Compiling. It's trimmed to optimum speed so you will be even faster when compiling your gamefile

6. Using clang as the new native compiler of FreeBSD. This way you're sticking to the things the system already has. You won't have to worry about extensions (Iike in vanilla source with g++410 and stuff) because you can use the internal compiler (or if you know what you're doing, install your own and do the extension stuff. Everything is open for you!)

7. By far prettier console so you can see where you are, what you're doing and what's happening!

 

So as mentioned before, tell me please your thoughts about it! If the community disagrees with it, I'll drop the development. It depends on your wishes and ideals, because the vpc should be for you!

 

 

Edit: Project sadly cancelled. I managed to finish my work but unfortunately I can't seem to upload it. Size is about 10gb and it'd take me roughly about 100 hours to upload it. Damn, hours work for nothing. But I'll do something else out of it! :)

Edited by Alina
  • Love 8
Link to comment
Share on other sites

Why use clang. Use gcc5.1

All what i want is boost 1.55 and g++5.1  :D

​Because clang is making huge progress. It's compilation times are by far faster than gcc. Additionally FreeBSD dropped gcc in favour of clang. So clang is the compiler used for the base system. If I want to make a vpc and sources that should work everywhere even with newer systems then it's best to stick with the native compiler ;)

  • Love 1
Link to comment
Share on other sites

Why use clang. Use gcc5.1

All what i want is boost 1.55 and g++5.1  :D

​Because clang is making huge progress. It's compilation times are by far faster than gcc. Additionally FreeBSD dropped gcc in favour of clang. So clang is the compiler used for the base system. If I want to make a vpc and sources that should work everywhere even with newer systems then it's best to stick with the native compiler ;)

​I recommand you Intel compiler and gcc5  https://software.intel.com/en-us/c-compilers

May I recommend gcc compiler, and intel compiler. I never used clang, so I can not give their opinion.

Yes , clang is top 1 on compilation speed. Clang is faster that all compilers.

GCC 5 also offers speed boosts in a few of our common open-source C/C++ benchmarks over GCC 4.9.

Acutal i use Intel Compiler, and is good. Speed, optimization. :D

 

Maybe i will try clang :)

Edited by Ira™
  • Love 2
Link to comment
Share on other sites

You'd give it a try ;)

I do agree that gcc is faster, I never tried the intel compiler (especially since I use AMD cpu and I guess Intel's compiler is optimized for Intel only) but I'm very statisfied with clang. Those small speed boosts you may saw are nothing big, in normal cases they won't even be noticed. Also clang is faster in some other cases than gcc, so it's just based on the task they're doing ;)

Link to comment
Share on other sites

Why do you need ccache to do the job? You can also use ccache to reduce compilation time even further but you won't have to because clang is already damn fast, not only in compilation time but also in binary speed. As mentioned before, in some cases gcc is faster, in some other clang is. It really doesn't matter that much. And I want to stick to the system as much as possible, especially for this project it's the easiest way.

Here is the first screen from the machine! I'm using zsh to extend the capabilities of the shell ;)

 

 

shell2.JPG

Edited by Alina
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

Announcements



×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.