Libera tu imaginación!
11 respuestas [Último envío]
mar77i
Usuario Desconectado. Visto por última vez 1 year 32 weeks. Desconectado
Integró: 07/26/2010

Hey there

Trying to build kom-0.9a-rev1572 I stumbled over a small issue where conf.destdir isn't attached to Config::CONFIG['sitelibdir'] and changed the behavior with this patch:

--- configure.rb.orig 2010-08-13 09:39:28.000000000 +0200
+++ configure.rb 2010-08-13 09:59:30.000000000 +0200
@@ -76,7 +76,10 @@
destdir_valid = File.expand_path(destdir_valid+"/..")
end

- qonfdestdir = ( (File.stat(Config::CONFIG['sitelibdir']).writable? or not File.stat(destdir_valid).writable? ) ? Config::CONFIG['sitelibdir'] : conf.destdir )
+ qonfdestdir = Config::CONFIG['sitelibdir']
+ if qonfdestdir[0,4] == "/usr"
+ qonfdestdir[0,4] = conf.destdir
+ end
File.open("qonf.pri", "w") { |file|
file << %@
QMAKE_STRIP = echo

I know this might not fullfill all the necessary standards but at least it makes kom build on arch.

The second patch I had to apply was

{ echo "# encoding: utf-8"; cat qonf/configure.rb; } > qonf/configure.rb.new; mv qonf/configure.rb.new qonf/configure.rb

as of ruby 1.9 this header is mandatory for ruby sources that contain direct utf8 bytes.

mar77i
Usuario Desconectado. Visto por última vez 1 year 32 weeks. Desconectado
Integró: 07/26/2010
/usr/share/pixmaps and /usr/share/applications not respected

hello

this should be respected when we finally come to implementing DESTDIR, I mean, we've never been so close;

DESTDIR is prepending PREFIX in general, and, additionally, it should respect both /usr/share/pixmaps and /usr/share/applications . So, DESTDIR would also enable testers to install ktoon to and from a CHROOT/LIVE SYSTEM on virtually any linux flavour, and we've never been so close to implementing it.

I could even provide the necessary patch myself this weekend (8,9,10 oct 2010), please let me know if you want me to do it.

Thank you so much for your efforts, this has been great work already, and I'm proud of what has become out of the build system so far.

xtingray
Usuario Desconectado. Visto por última vez 1 year 7 weeks. Desconectado
Integró: 06/07/2010
Re: Patch

Hello there!

If you can help us writing the patch, we will really appreciate your help.

Thank you!

mar77i
Usuario Desconectado. Visto por última vez 1 year 32 weeks. Desconectado
Integró: 07/26/2010
btw... and another one

Hey...

I still get "==> WARNING: Package contains reference to $srcdir" from my package creation tool. But now, this is only qonf which is installed to /usr/lib/ruby.

Anyway, do I even need qonf installed with ktoon?

xtingray
Usuario Desconectado. Visto por última vez 1 year 7 weeks. Desconectado
Integró: 06/07/2010
Re: Btw... and another one

The configure script for the KTooN compilation looks for some info from Qonf. For now, I would say yes, you even need Qonf.

All these dependencies are temporary... cmake is the future! but it will take some time ;)

mar77i
Usuario Desconectado. Visto por última vez 1 year 32 weeks. Desconectado
Integró: 07/26/2010
git01 packaged.

Well, actually I solved the issue by providing an out-of-the-box komconfig.rb file with the ktoon package additionally, so qonf isn't required for us any more.

more news

kom didn't compile because the ruby path wasn't mapped to the standard --prefix=/path configure option because DESTDIR prefixing is still not possible (didn't even check tho), and it took me 2 hours of ruby debugging to solve issues.

One issue was that I had broken libva.so dependencies on an out-of-date svn verision of ffmpeg. It would be nice if 2>/dev/null redirects were removed from qmake.compile if --debug is given, so ppl can figure out what's going on.

I just came to the gordian/most hackish/evil solution of the qonf problem, I just added the line rm qonf.pri after ./configure to the packaging script, which does the job for now. :-)

xtingray
Usuario Desconectado. Visto por última vez 1 year 7 weeks. Desconectado
Integró: 06/07/2010
Re: git01 packaged.

Hello mar77i!

I am a little disappointed about compiling KTooN from Arch. I mean, I was making the usual process (configure, make, make install) from a very recent version of Arch and everything was so perfect that I got depressed.
The truth is, I was expecting many problems from the first step, but it never happened. Even more, I uploaded a picture of the binary in the gallery: http://www.ktoon.net/gallery2/main.php?g2_itemId=133

Why is so hard to make the Arch package if the compilation process is so clean? :S

PS: Your suggestion about the "/dev/null" instructions and the --debug option is priceless! I am going to work on it. Thank you! ;)

mar77i
Usuario Desconectado. Visto por última vez 1 year 32 weeks. Desconectado
Integró: 07/26/2010
Another one...

btw, configure.rb line 65

config.addDefine(%@KLIB_PREFIX='\\\\"'#{conf.destdir}'\\\\"'@)

this leaves a trace to the build directory in kaudioplayer.cpp / ultimately in libksound.so, because I'm using ./configure --prefix to the package files dir because I don't directly install the built package (and make install doesn't support DESTDIR).

patched that one as well in configure.rb (header date is the same due to the patch being handcrafted):

--- configure.rb.orig 2010-08-13 09:39:28.000000000 +0200
+++ configure.rb 2010-08-13 09:59:30.000000000 +0200
@@ -62,7 +62,8 @@
print "[ \033[92mOFF\033[0m ]\n"
end

- config.addDefine(%@KLIB_PREFIX='\\\\"'#{conf.destdir}'\\\\"'@)
+ config.addDefine(%@KLIB_PREFIX='\\\\"'#{conf.destdir[/\/usr.*/]}'\\\\"'@)

unix = config.addScope("unix")
unix.addVariable("MOC_DIR", ".moc")

xtingray
Usuario Desconectado. Visto por última vez 1 year 7 weeks. Desconectado
Integró: 06/07/2010
Re: Another one...

Your fixes solve the problem, but the issue is more complex if we think about all the others Linux distros. What I mean is that I need to test the configure scripts in Arch and then make a general fix for every distro.

Anyway, your feedback is very handy. Thank you!

mar77i
Usuario Desconectado. Visto por última vez 1 year 32 weeks. Desconectado
Integró: 07/26/2010
Normal compilation in arch

Okay, then I'll tell you what we normally do on arch.
when packaging, we put all installed files to $pkgdir - with fakeroot in userspace.
that means, the build function normally looks like this:

build() {
cd $srcdir/$pkgname-$pkgver # unpacked source tarball
./configure --prefix=/usr # arch don't like /usr/local
make
make DESTDIR=$pkgdir/usr install # this changes the "real" installation dir to the fakeroot env.
}

read more:
Creating Packages
Arch Packaging Standards

xtingray
Usuario Desconectado. Visto por última vez 1 year 7 weeks. Desconectado
Integró: 06/07/2010
Re: Normal compilation in arch

Hello there,

At last, I could try KTooN from Linux Arch, here is the proof:

http://www.ktoon.net/gallery2/main.php?g2_itemId=133

The utf-8 tip was very handy to make the compilation process clean. In fact, that was the only problem I had to compile KTooN from Arch.

I was checking the links you sent me and they are very interesting. I will try to make those packages in the future, with a little help of some friends, but the process seems to be very clean and easy.

For now, I am witness that you can compile KTooN from Arch. The little fix will be included in our repository for the next revision.

Thank you guys!

xtingray
Usuario Desconectado. Visto por última vez 1 year 7 weeks. Desconectado
Integró: 06/07/2010
Re: Ruby 1.9 issue

Definitely there's an issue around the KTooN's configure scripts and it seems to be related to the ruby version.

In Ubuntu, the ruby version is 1.8.7 and there's no problem.

I think I will have to try Arch in some way and then, try to check what's going on.

Thanks for your patch!