By default, Bugzilla does not search the list of RESOLVED bugs.
You can force it to do so by putting the upper-case word ALL in front of your search query, e.g.: ALL tdelibs
We recommend searching for bugs this way, as you may discover that your bug has already been resolved and fixed in a later release.

Bug 980

Summary: Build issue: kvirc package is unusable
Product: TDE Reporter: Slávek Banko <slavek.banko>
Component: non-core programsAssignee: Timothy Pearson <kb9vqf>
Status: RESOLVED FIXED    
Severity: blocker CC: albator78, bugwatch, darrella
Priority: P5    
Version: 3.5.13 [Trinity]   
Hardware: All   
OS: Linux   
Compiler Version: TDE Version String:
Application Version: Application Name:
Bug Depends on:    
Bug Blocks: 991    
Attachments: Fix commit e45ba8e
Fix hard-coded path /opt/kde3
Fixed compile support for TDE and subsequent FTBFS
Removed additional moving of service files
Fix hard-coded path /opt/kde3, compile support for TDE and subsequent FTBFS

Description Slávek Banko 2012-04-26 12:04:20 CDT
The package contains no modules.
kvirc therefore can not be run.

Original from Lenny: 
/usr/bin/kvirc
/usr/lib/kvirc/3.4/modules/libkviabout.so
/usr/lib/kvirc/3.4/modules/libkviaction.so
/usr/lib/kvirc/3.4/modules/libkviactioneditor.so
/usr/lib/kvirc/3.4/modules/libkviaddon.so
/usr/lib/kvirc/3.4/modules/libkvialiaseditor.so
/usr/lib/kvirc/3.4/modules/libkviavatar.so
/usr/lib/kvirc/3.4/modules/libkvichan.so
/usr/lib/kvirc/3.4/modules/libkvichannelsjoin.so
/usr/lib/kvirc/3.4/modules/libkviclock.so
/usr/lib/kvirc/3.4/modules/libkvicodetester.so
/usr/lib/kvirc/3.4/modules/libkviconfig.so
/usr/lib/kvirc/3.4/modules/libkvicontext.so
/usr/lib/kvirc/3.4/modules/libkvidcc.so
/usr/lib/kvirc/3.4/modules/libkvidialog.so
/usr/lib/kvirc/3.4/modules/libkvidockwidget.so
/usr/lib/kvirc/3.4/modules/libkvieditor.so
/usr/lib/kvirc/3.4/modules/libkvieventeditor.so
/usr/lib/kvirc/3.4/modules/libkvifile.so
/usr/lib/kvirc/3.4/modules/libkvifiletransferwindow.so
/usr/lib/kvirc/3.4/modules/libkvihelp.so
/usr/lib/kvirc/3.4/modules/libkvihttp.so
/usr/lib/kvirc/3.4/modules/libkviident.so
/usr/lib/kvirc/3.4/modules/libkviiograph.so
/usr/lib/kvirc/3.4/modules/libkvilamerizer.so
/usr/lib/kvirc/3.4/modules/libkvilinks.so
/usr/lib/kvirc/3.4/modules/libkvilist.so
/usr/lib/kvirc/3.4/modules/libkvilog.so
/usr/lib/kvirc/3.4/modules/libkvilogview.so
/usr/lib/kvirc/3.4/modules/libkvimask.so
/usr/lib/kvirc/3.4/modules/libkvimath.so
/usr/lib/kvirc/3.4/modules/libkvimediaplayer.so
/usr/lib/kvirc/3.4/modules/libkvimircimport.so
/usr/lib/kvirc/3.4/modules/libkvimy.so
/usr/lib/kvirc/3.4/modules/libkvinotifier.so
/usr/lib/kvirc/3.4/modules/libkviobjects.so
/usr/lib/kvirc/3.4/modules/libkvioptions.so
/usr/lib/kvirc/3.4/modules/libkviperl.so
/usr/lib/kvirc/3.4/modules/libkviperlcore.so
/usr/lib/kvirc/3.4/modules/libkvipopupeditor.so
/usr/lib/kvirc/3.4/modules/libkviraweditor.so
/usr/lib/kvirc/3.4/modules/libkviregchan.so
/usr/lib/kvirc/3.4/modules/libkvireguser.so
/usr/lib/kvirc/3.4/modules/libkvirijndael.so
/usr/lib/kvirc/3.4/modules/libkvisetup.so
/usr/lib/kvirc/3.4/modules/libkvisharedfile.so
/usr/lib/kvirc/3.4/modules/libkvisharedfileswindow.so
/usr/lib/kvirc/3.4/modules/libkvisnd.so
/usr/lib/kvirc/3.4/modules/libkvisocketspy.so
/usr/lib/kvirc/3.4/modules/libkvispaste.so
/usr/lib/kvirc/3.4/modules/libkvistr.so
/usr/lib/kvirc/3.4/modules/libkvisystem.so
/usr/lib/kvirc/3.4/modules/libkviterm.so
/usr/lib/kvirc/3.4/modules/libkvitexticons.so
/usr/lib/kvirc/3.4/modules/libkvitheme.so
/usr/lib/kvirc/3.4/modules/libkvitip.so
/usr/lib/kvirc/3.4/modules/libkvitmphighlight.so
/usr/lib/kvirc/3.4/modules/libkvitoolbar.so
/usr/lib/kvirc/3.4/modules/libkvitoolbareditor.so
/usr/lib/kvirc/3.4/modules/libkvitorrent.so
/usr/lib/kvirc/3.4/modules/libkviurl.so
/usr/lib/kvirc/3.4/modules/libkviwindow.so
/usr/lib/libkvilib.so.3.0.0
/usr/lib/libkvilib.so.3 -> libkvilib.so.3.0.0
/usr/share/doc/kvirc/FAQ.gz
/usr/share/doc/kvirc/README.gz
/usr/share/doc/kvirc/TODO
/usr/share/doc/kvirc/changelog.Debian.gz
/usr/share/doc/kvirc/changelog.gz
/usr/share/doc/kvirc/copyright
/usr/share/lintian/overrides/kvirc
/usr/share/menu/kvirc

Now in Trinity (from 3.5.12 to R14):
/opt/trinity/lib/libkvilib.so.3.0.0
/opt/trinity/lib/libkvilib.so.3 -> libkvilib.so.3.0.0
/opt/trinity/bin/kvirc
/usr/share/doc/kvirc-trinity/FAQ.gz
/usr/share/doc/kvirc-trinity/README.gz
/usr/share/doc/kvirc-trinity/TODO
/usr/share/doc/kvirc-trinity/changelog.Debian.gz
/usr/share/doc/kvirc-trinity/changelog.gz
/usr/share/doc/kvirc-trinity/copyright
/usr/share/lintian/overrides/kvirc
/usr/share/menu/kvirc-trinity
Comment 1 Timothy Pearson 2012-04-26 15:33:16 CDT
This should be fixed in packaging GIT hash e45ba8e.

Thanks for reporting!
Comment 2 Slávek Banko 2012-04-29 03:18:04 CDT
(Odpověď na komentář #1)
> This should be fixed in packaging GIT hash e45ba8e.
> 
> Thanks for reporting!

With the packaging is still something wrong. For the i386 is okay, but for amd64 modules still missing.

https://quickbuild.pearsoncomputing.net/~slavek-banko/+archive/axis/+build/36589
https://quickbuild.pearsoncomputing.net/~slavek-banko/+archive/axis/+build/36587
https://quickbuild.pearsoncomputing.net/~slavek-banko/+archive/axis/+packages?field.name_filter=kvirc
Comment 3 Slávek Banko 2012-04-30 20:59:37 CDT
Created attachment 569 [details]
Fix commit e45ba8e

Previous fix did not work when compiling only platform-dependent part of the package. Therefore, the revision corrects your fix - adding common-install-arch.
Comment 4 Timothy Pearson 2012-04-30 21:22:15 CDT
(In reply to comment #3)
> Created attachment 569 [details]
> Fix commit e45ba8e
> 
> Previous fix did not work when compiling only platform-dependent part of the
> package. Therefore, the revision corrects your fix - adding
> common-install-arch.

Committed to GIT in hash 5ece516.

Thanks for the patch!
Comment 5 Slávek Banko 2012-05-03 18:29:34 CDT
(Odpověď na komentář #4)
> Committed to GIT in hash 5ece516.
> 
> Thanks for the patch!

Sorry, but I have to open the bug again. The files are already successfuly in the package, but inside the program is tightly written path /opt/kde3/
Comment 6 Slávek Banko 2012-05-05 09:29:18 CDT
I found another problem with compilation - package is not compiled with support for KDE/Trinity and the arts:

checking if KDE support is requested... yes
checking for the general KDE directory... failed...continuing with normal checks
checking for KDE services directory... unknown
checking for the KDE libraries... "FAILED"
.
.
checking if Arts support is requested... no KDE so no Arts
Comment 7 Slávek Banko 2012-05-05 10:12:54 CDT
Created attachment 601 [details]
Fix hard-coded path /opt/kde3

But it is essential that starttde had exported variable TDEDIR.
Comment 8 Slávek Banko 2012-05-06 04:10:55 CDT
Created attachment 606 [details]
Fixed compile support for TDE and subsequent FTBFS
Comment 9 Slávek Banko 2012-05-06 04:17:41 CDT
Created attachment 607 [details]
Removed additional moving of service files

Due to the fact that kvirc is compiled with support for TDE, service files are installed in the correct place during compilation. No need to move further, during packaging.
Comment 10 Francois Andriot 2012-05-06 05:13:38 CDT
The "Fix hard-coded path /opt/kde3" will not work for distributions that use "lib64" folder instead of "lib".

There is also a list of hardcoded path in src/kvirc/kernel/kvi_app_setup.cpp . This list is missing "/opt/trinity".

Kvirc is tricky to build. You can see the procedure I use in Redhat/Fedora here:
http://git.trinitydesktop.org/cgit/tde-packaging/tree/redhat/applications/kvirc/trinity-kvirc.spec
Comment 11 Slávek Banko 2012-05-08 06:02:21 CDT
Created attachment 615 [details]
Fix hard-coded path /opt/kde3, compile support for TDE and subsequent FTBFS

Inspired by Francois solution, I have prepared a new solution - using automake. With acinclude are written into config.h paths KDE_DIR and KDE_LIBDIR, which are subsequently used in the code - instead of hard-coded paths. I also incorporated FTBFS because of missing link libraries (from Francois) - but are linked only if it is compiled with support for TDE.
Comment 12 Timothy Pearson 2012-05-10 15:41:07 CDT
(In reply to comment #11)
> Created attachment 615 [details]
> Fix hard-coded path /opt/kde3, compile support for TDE and subsequent FTBFS
> 
> Inspired by Francois solution, I have prepared a new solution - using automake.
> With acinclude are written into config.h paths KDE_DIR and KDE_LIBDIR, which
> are subsequently used in the code - instead of hard-coded paths. I also
> incorporated FTBFS because of missing link libraries (from Francois) - but are
> linked only if it is compiled with support for TDE.

Patch looks sane; updated for latest GIT HEAD and committed in GIT hash 136d2c8.

Thanks!
Comment 13 Slávek Banko 2012-05-10 19:46:58 CDT
(Odpověď na komentář #12)
> Patch looks sane; updated for latest GIT HEAD and committed in GIT hash
> 136d2c8.
> 
> Thanks!

Still need to apply the patch to clean up the rules in compiling Debian/Ubuntu packages - see attachment 607 [details].
Comment 14 Timothy Pearson 2012-05-10 20:08:00 CDT
(In reply to comment #13)
> (Odpověď na komentář #12)
> > Patch looks sane; updated for latest GIT HEAD and committed in GIT hash
> > 136d2c8.
> > 
> > Thanks!
> 
> Still need to apply the patch to clean up the rules in compiling Debian/Ubuntu
> packages - see attachment 607 [details].

Committed to tde-packaging GIT in hash 22ce2a3.

Have I forgotten anything else? ;-)