Kompile

System Software

Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on git.opendesktop.org

1
Score 81%
Description:

Finally the site www.brainspace.it is online again with Kompile v0.3 Beta 3.
I'm sorry for the long offline period.

WARNING: Version 0.3 beta 3 of Kompile may be unstable and is relase for testing purpose. If you find a bug and you want report it write me an e-mail: tommaso.frazzetto@gmail.com

I'll be grateful to anyone who help me make Kompile better.
Thanks


What's Kompile
Kompile is a KDE interface for automatic execution of configurations, compilation and installation of source tarball.
when you compile and install Kompile sources (with normal steps "configure && make && make install") some new voices are added to
konqueror action menu for tar-based compressed archives (.tar, .tar.gz, .tar.bz, .tar.bz2).

What's new in v0.3
The major innovation of version 0.3 is profiles system. Now Kompile always use a profile to perform an installation/uninstallation.
You can define a custom profile for install an application or use default profile to do it. If you use default profile, Kompile will
create a package's profile based on options specified in your default profile.
Some profiles options are:
- Source tarball backup for uninstallation
- Packages informations (name, version, release, license, description)
- Temporary decompression folder options
- Source configuration options (prefix, enable/disable warnings, enable disable libs such as Qtopia, etc.)
- Compiler options (c/c++/fortran compilers flags, executables, prerocessor flags,linker flags, etc.)
- Simple user (= non root) installation options
- Use checkinstall instead make install (and specify checkinstall options)

More screenshots:
You can find more screenshots at:
http://www.brainspace.it/index.php?option=com_content&task=view&id=23&Itemid=23

Usage
There are 3 modes to use kompile:
1) Run Kompile form KDE System menu and use GUI to invoke Kompile functions. There are 3 major icons:
- Install options:
- Standard installation: use default profile to install new package
- Profiled installation: create a new profile from scratch to perform installation
- Uninstall options:
- Standard uninstallation: remove a package using default profile (may be useful if installed pkg has different prefix form default)
- Repair/Remove Installed Packages: give a list of installed packages to perform package's repair/remove
- Tools:
- Manage Profiles: Modify/delete existing profiles
- Kompile Setup: here you can specify you preference for some kompile functions and MODIFY YOUR DEFAULT PROFILE


2) Invoke Kompile from command line whit below options (form "kompile --help" command):
-i, --install Perform install operation
-u, --uninstall Perform uninstall operation
-t, --use-tarball Use specified tarball for requested operation [need -i or -u]
-p, --use-profile Use specified profile for operation [need -i or -u. Exclude "--use-tarball"]
-s, --search-profile Use with "--use-tarball ".Kompile searches a profile compatible with "". If doesn't find one compatible use default profile.

3) Select operations directly form konqueror kompile menu:
- Perform default package installation: use default profile to install new package. It's equal to "kompile --install --use-tarball "
- Search compatible profile for installation: Kompile searches a profile compatible with "" to perform installation. If doesn't find one compatible use default profile. It's equal to "kompile --install --search-profile --use-tarball "
- Perform default package uninstallation: remove a package using default profile (may be useful if installed pkg has different prefix form default). It's equal to "kompile --uninstall --use-tarball "
- Search compatible profile for uninstallation: Kompile searches a profile compatible with "" to perform installation. If doesn't find one compatible use default profile.It's equal to "kompile --uninstall --search-profile --use-tarball "

# LICENSE
This software is released under GPL (GNU General Public License). Anybody can change and redistribute code under GPL terms.
For more info about GPL see "COPYING" in source package root folder.
For more information about GNU & GPL visit GNU site at:

http://www.gnu.org

# MORE INFORMATIONS
Project Home Page (In Italian): http://www.brainspace.it/index.php?option=com_content&task=view&id=17&Itemid=12

Screenshots Gallery: http://www.brainspace.it/index.php?option=com_content&task=view&id=10&Itemid=7

Download Page (In Italian): http://www.brainspace.it/index.php?option=com_content&task=view&id=17&Itemid=12

# PARTICULAR THANKS TO
Many people have manifested interest in Kompile project and I can't thank all one by one but I'm grateful to anyone.
This people have spent time in Kompile realization with ideas and resources. Thank you.

v0.3
- Urs Wolfer
- Folivier_L
- Marco E.V.
- Roberto F.
- Alfredo B.
- Vincenzo C.
- Bogusz Linda
- Carlos Gonçalves
Last changelog:

13 years ago

- CHANGES FROM Beta 2 to Beta 3:
[*] Profiles managemnt dialog redesigned.[newline][*] Performance improved.[newline][*] Corrected some bugs in profle creation for default install operation.[newline][*] Fixed sintax problems in checkinstall invocation.[newline][*] Minor bugs fixing[newline][*] Polish language translation (Thanks to Bogusz Linda)[newline]
- FEATURES (v0.3):
[*] Add standalone GUI for tarball packages management (you can access it form "System" menu)[newline][*] General Kompile options, as:[newline] * Selection of KDE-Integration menu type (actions menu/kompile standalone menu)
* Play sounds when installation/uninstallation finish
* Set time of automatic close installation/uninstallation dialog when finish
* Enable/Disable automatic close of installation/uninstallation dialog when finish by default
* Setup of default profile for standard installation/uninstallation
[*] Add installation/uninstallation profiles system. Profiles options are:[newline] * Package info (name, version, release, license, description)
* Save of package's sources tarball for repair/uninstallation
* Temporary tarball decompression options
* Configuration flags (prefix, mobile app libs, debug, profiling, etc.)
* Simple user installation/uninstallation options
* Use of checkinstall instead of (make install)
[*] Search existing compatible profile before installation[newline][*] Pause/Resume button in installation dialog[newline][*] Show package's "README" button in installation dialog (if package's README file is available)[newline][*] Show package's "INSTALL" button in installation dialog (if package's INSTALL file is available)[newline][*] Show package's "ChangeLog" button in installation dialog (if package's ChangeLog file is available)[newline][*] Statistics/informations for each task in installation/uninstallation dialog[newline][*] Manage of installed application with Repair/Remove tools[newline][*] Italian translation[newline]
- CHANGES/FIXES
[*] Use KProcess instead of QProcess (more KDE-compilance)[newline][*] Use KDialogBase instead of QDialog (more KDE-compilance)[newline][*] Use KpushButton instead of QPushButton (more KDE-compilance)[newline][*] Add full translation support[newline][*] Removed traybar icon[newline]

brando56894

9 years ago

Im trying to compile Kompile under arch linux 64 and I'm getting these errors:

main.cpp: In function ‘int main(int, char**)’:
main.cpp:96: error: ‘exit’ was not declared in this scope
main.cpp:104: error: ‘exit’ was not declared in this scope
main.cpp:127: error: ‘exit’ was not declared in this scope
main.cpp:151: error: ‘exit’ was not declared in this scope
main.cpp:251: error: ‘exit’ was not declared in this scope
main.cpp:275: error: ‘exit’ was not declared in this scope
main.cpp:283: error: ‘exit’ was not declared in this scope
main.cpp:294: error: ‘exit’ was not declared in this scope
main.cpp:309: error: ‘exit’ was not declared in this scope
main.cpp:332: error: ‘exit’ was not declared in this scope
main.cpp:345: error: ‘exit’ was not declared in this scope
make[2]: *** [main.o] Error 1
make[2]: Leaving directory `/home/bran/builds/kompile/src/kompile-0.3-beta3/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/bran/builds/kompile/src/kompile-0.3-beta3'
make: *** [all] Error 2
==> ERROR: Build Failed.
Aborting...

Report

baDibere

10 years ago

I have downloaded stable version and I installed it (using ./configure, make, make install). But when I want to try to run it, an error shows and says :
"You have forgot to specify a valid sources tarball or specified file isn't a valid sources tarball!
Specify an existing and valid source tarball please.
Maual selection of sources tarball and building options manual setup will be avaiable in future version."

What does it mean? What's the problem and solution?

Thanks..

Report

baDibere

10 years ago

Ok.. No problem.

Report

forbore

10 years ago

I always get this error:

libtool: link: cannot find the library `/usr/lib/libfam.la'

I run Mandriva Powerpack 2008.0 64bit

Report

forbore

10 years ago

I tried running the RPM but nothing happens.

Report

dispatched

10 years ago

kconfigure, kinstall, kompare, klik etc...

There are simply too many DIFFERENT efforts going on trying to provide the same sort of
functionality or even the same sort of app (guess how many of such similar tools for other
window manager might exist)! And apparently some projects are not even aware of the other
ones!?

That's BAD: open source is all about collaboration and not about cooking your own soup.

It should be possible to accomplish much more by uniting the manpower from all related
projects, so that these projects can be -functionality-wise- merged into a new fork
of all of these tools, ensuring that there is no unnecessary competition in an area
that has been successfully addressed on other platforms for decades already.

Apart from that, I truly like kompare-from its maintenance, UI and feature-richness point
of view, kompare is for sure the most advanced and promising utility in its category and
that's GREAT!

However, there are clearly some issues that -for the sake of kompare and its likely future
within KDE- should preferably be addressed, many of which were previously mentioned, but
some weren't yet-I would like to provide a number of enhancements and suggestions related
to turning kompile into a "software build manager":

- in certain situations, configuring a project requires pre-configuration:

some tarballs provide autogen.sh files specifically for this purpose, but
even if these are missing in the tarball itself, the autotools build files
can usually be re-created using autoconf, automake & co
It should be considered to provide optional support for "pre-configuration"
for packages that seem to make use of GNU autotools.


- configurable build directory location

in some situations it may make sense to use non-temporary build locations, that
may optionally not be deleted after installation

- repeated/incremental builds:

some projects may need to be regularly rebuild, so their folder must not be deleted

- decouple the configuration & build steps:

configuration is a step different from building: it doesn't necessarily
require root priviledges, nor will everybody usually/immediatley want to
run the build directly after the tarball's configuration: Steps that aren't
intertwined by default, should be properly separated and being dealt with
as separate entities. Some good suggestions related to kdesudo were already
made, in fact kconfigure also handles all steps separately.

- provide means to individually customize crucial configuration/build standard parameters and environment variables:

most scripts and tools used in the average linux/kde [GNU/autotools-based] tarball
use a predefined set of tools which usually supports a number of standard parameters
and honors certain environment variables (CC, CXX, CFLAGS, CXXFLAGS, LD_FLAGS,
LD_LIBRARY_PATH etc): advanced users may want to be provided with an overview of such
customizable attributes to show their contents and optionally edit/modify them, possibly
even allowing such users to save these settings in some sort of configuration/build profile.
This could for example be used to provide standard build profiles for use of ccache or distcc while
building.

- provide means to customize non-standard parameters:

by running configure --help, the configure script's help can usually be obtained,
this could in turn be used to enable users to pass certain arguments to the script,
this could for example be based on coming up with a suggestion for the argument
name (retrieved from parsing the output), accompanied by a description/tooltip
coming from the description of the argument in the --help output, and then a
textbox/file picker dialog to optionally provide additional info, i.e. for cases
where additional information needs to be passed: ./configure --with-foo=path/to/foo

- interactive default mode while running kompile under KDE/X without arguments:

it might make sense to consider automatically going into interactive/GUI mode
when no parameter were provided, if the DISPLAY variable is set, you can assume
that X is available and anyone running kompile from a shell without arguments,
will probably want to start it in interactive mode, where the tarball can be chosen
from within the UI.

- build management/scheduler:

in some situations it may be desirable to postpone the compilation/build process of
a large -already configured- software project, thus it would be useful if there
was some sort of process (or even daemon) that could act as a build scheduler, which
would trigger builds based on certain criteria/conditions.
For example: I regularly rebuild large software packages such as kde, gcc and mozilla,
however I don't want this to interfere with my daily use of the machine, so I usually
postpone the build to take place at a time when I am not working at the machine, or
when the work/cpu load is really low.
Thus, it would be useful if there was a way to schedule builds to take place at a later time.
This could be based on certain factors, i.e. system load (reading directly from /proc or using
kde sensors).

- build priorities:

for users it would be useful to be able to configure priorities for each scheduled
build (high vs. low)

- build dependencies:

it is not unusual for developers to download a number of related tarballs which feature
mutual dependencies, thus for a software build manager it would make sense to provide
an abstract view of related tarballs, which may need to be configured/built in a certain
order, using information that may come from other projects. This would enable a scenario
where users may configure a number of tarballs to either "be" dependencies of another tarball,
or to provide dependencies to another tarball, so that kompile would be able to automatically
build related packages in a given order.


Again, thank you very much for an already very neat piece of software, and please consider the above ramblings only of advisory character, maybe other users could leave comments concerning these ideas, to help you assess what is generally considered useful and what isn't.

All the Best

Report

Contrast

11 years ago

Are there any plans to implement support for programs that use setup.py for their installation? (And if so, would it be possible to make it so said programs could be uninstalled by Kompile even if the setup.py file doesn't include a rule for uninstalling?) That's the only thing I find lacking. Otherwise, keep up the great work! :-)

Report

saejoh

11 years ago

Hi,
I used this app in its beta2 version.
Unfortunately this link http://www.kde-apps.org/content/download.php?content=30223&id=4 lets us download a tar.gz-file, which is impossible to be extracted as expected with Ark for instance. The extraction process results in numerous errors: ...Couldn't open file. Permission denied. Then follows a general error: Extraction failed.
So my question is: where can we find a proper tar.gz for this wonderful beta3? (I went back to beta2)
Thanks in advance.

Report

C

invernomuto

11 years ago

Hi,
probably there was been an error during tarball creation.
I've uploaded a new tarball which should work.

Report

ziuchkov

11 years ago

Great idea. This could really help new Linux users adjust to this wonderful OS.

Report

hellblade

11 years ago

If you want to get the source try:
http://archive.ubuntu.com/ubuntu/pool/universe/k/kompile/kompile_0.3~beta2.orig.tar.gz

Report

hellblade

11 years ago

Nice program. Is it still under development?

Feature request:
Better integration with checkinstall. Add a configuration dialog providing settings such as name, maintainer, version, description etc.

If you implement the above you can (optionally) try to get some of the info from the distribution, if that program already exists in a repository.
e.g. you can parse the output of "apt-cache show PACKAGENAME" and get the description and the dependencies.

Report

premierSullivan

11 years ago

This program should have been written a decade ago.

Report

discodiver

11 years ago

http://packages.ubuntulinux.org/edgy/kde/kompile

you can find it here

Report

hacosta

11 years ago

the links is broken..
what method do you use to keep track of installed files?

Report

bischofPhilipp

11 years ago

I like to see Kompile that it creates .deb/.rpm etc - packages and then installs them instead of the source-tarball.
The advantage is that you could remove the packages with a package manager.

.deb-packages are made and installed with:

./configure
make
sudo checkinstall -D make install

I do not know how .rpm's are made.

Report

vixiado

12 years ago

Hi.

For those you are trying to find the Kompile RPMs for SUSE 10.1 you can find them here: http://www.carlos.pinguix.com/suse/10.1/ (src, i586 and debuginfo packages available)

Report

cgoncalves

11 years ago

For now on Kompile RPM for SUSE and openSUSE can be found here: http://software.opensuse.org/download/KDE:/Community/

Report

MuoX

12 years ago

Every time I download a package from KDE-Apps and see it has a compile script via the tbz or tgz kio, I try kompile on it. Even I know how to deal with a term, I must admit this kompile way is much more comfortable. Althoug it takes a larger amount of time to compile apps compared to doing it on a terminal.

Report

CGA

12 years ago

This doesn't work for me, complains about missing kdelibs4c2 although it is installed. Link to a non-beta version would be appreciated.

Report

zero1

12 years ago

this is a very neat and handy app here. saves you a lot things by doing tarball installs. this is very minor but please make a fix of this app's frames. somehow you have to resize it coz the buttons/widgets don't fit into it. otherwise it's great.. .

thanks! 2 thumbs up!

Report

zero1

12 years ago

i'm trying to compile Kompile on my 64-bit machine and i get an error. it's about a "qt-mt" library that it can't seem to find. i have the KDE version that comes with SUSE 10.1. i think it's kde 3.5.1. i'm able to compile other source packages though.

what package is this BTW? i can't seem to find it.

has this project been discontinued? it's been a while since an update.

Report

polrus

12 years ago

i'm unable to make new profiles in 3beta2
when i try to do it with "modify" and than "save profile" it says profile has no name but i have no place to put the name

Report

Fez

12 years ago

I was waiting for something like this to come along.
I hope KDE get behind this and supports you. Particulary when I´ve tried installing it on Mandriva 2005 LE and met dependancy hell and given up in disgust. It would be great to see included with KDE as a package.

Keep up the good work.

Report

C

invernomuto

12 years ago

I have corrected nearly all the bugs reported and now I'm working on performance.
I'm trying to understand to us why v0.3 is more slower than v0.2. The only change to "install engine" form v0.2 to v0.3 is switch from QProcess to KProcess classes for building commands's execution.
Thanks to all for reports and patience ;-)

Report

13 years ago

- CHANGES FROM Beta 2 to Beta 3:
[*] Profiles managemnt dialog redesigned.[newline][*] Performance improved.[newline][*] Corrected some bugs in profle creation for default install operation.[newline][*] Fixed sintax problems in checkinstall invocation.[newline][*] Minor bugs fixing[newline][*] Polish language translation (Thanks to Bogusz Linda)[newline]
- FEATURES (v0.3):
[*] Add standalone GUI for tarball packages management (you can access it form "System" menu)[newline][*] General Kompile options, as:[newline] * Selection of KDE-Integration menu type (actions menu/kompile standalone menu)
* Play sounds when installation/uninstallation finish
* Set time of automatic close installation/uninstallation dialog when finish
* Enable/Disable automatic close of installation/uninstallation dialog when finish by default
* Setup of default profile for standard installation/uninstallation
[*] Add installation/uninstallation profiles system. Profiles options are:[newline] * Package info (name, version, release, license, description)
* Save of package's sources tarball for repair/uninstallation
* Temporary tarball decompression options
* Configuration flags (prefix, mobile app libs, debug, profiling, etc.)
* Simple user installation/uninstallation options
* Use of checkinstall instead of (make install)
[*] Search existing compatible profile before installation[newline][*] Pause/Resume button in installation dialog[newline][*] Show package's "README" button in installation dialog (if package's README file is available)[newline][*] Show package's "INSTALL" button in installation dialog (if package's INSTALL file is available)[newline][*] Show package's "ChangeLog" button in installation dialog (if package's ChangeLog file is available)[newline][*] Statistics/informations for each task in installation/uninstallation dialog[newline][*] Manage of installed application with Repair/Remove tools[newline][*] Italian translation[newline]
- CHANGES/FIXES
[*] Use KProcess instead of QProcess (more KDE-compilance)[newline][*] Use KDialogBase instead of QDialog (more KDE-compilance)[newline][*] Use KpushButton instead of QPushButton (more KDE-compilance)[newline][*] Add full translation support[newline][*] Removed traybar icon[newline]

File (click to download) Version Description Packagetype Architecture Downloads Date Filesize DL OCS-Install
Pling
Details
license
version
0.3 beta 3
updated Jun 09 2007
added Oct 14 2005
downloads today
0
page views today 10
System Tags app software