trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: January 2012

Re: [trinity-devel] Konqueror: Does not update file pane with file changes

From: /dev/ammo42 <mickeytintincolle@...>
Date: Sun, 15 Jan 2012 04:21:32 +0100
On Sat, 14 Jan 2012 19:06:05 -0800 (PST)
Darrell Anderson <humanreadable@...> wrote:

> I'm trying to resolve bug report 756.
> 
> I noticed FAM support is not provided in the build process. I
> conjured up this patch:
> 
> =============================
> diff -urN kdelibs/CMakeLists.txt kdelibs.new/CMakeLists.txt
> --- kdelibs/CMakeLists.txt  2011-10-29 15:47:19.000000000 -0500
> +++ kdelibs.new/CMakeLists.txt  2012-01-14 19:35:33.000000000 -0600
> @@ -736,6 +736,14 @@
>  endif( WITH_HSPELL )
> 
> 
> +##### check for FAM/GAMIN ##########################
> +
> +check_include_file( "fam.h" HAVE_FAM_H )
> +if( HAVE_FAM_H )
> +  set( HAVE_FAM 1 )
> +endif( HAVE_FAM_H )
> +
> +
>  ##### write configure files #####################
> 
>  configure_file( config.h.cmake config.h )
> diff -urN kdelibs/config.h.cmake kdelibs.new/config.h.cmake
> --- kdelibs/config.h.cmake  2011-08-10 21:30:27.000000000 -0500
> +++ kdelibs.new/config.h.cmake  2012-01-14 19:42:56.000000000 -0600
> @@ -114,7 +114,7 @@
>  #undef HAVE_FADVISE
> 
>  /* Define if your system has libfam */
> -#undef HAVE_FAM
> +#cmakedefine HAVE_FAM 1
> 
>  /* Define to 1 if you have the <float.h> header file. */
>  #cmakedefine HAVE_FLOAT_H 1
> =============================
> 
> kdelibs fails to build with that patch:
> 
> =============================
> kio/libksycoca.a(kdirwatch.cpp.o): In function `KDirWatchPrivate':
> /dev/shm/kdelibs/kio/kio/kdirwatch.cpp:241: undefined reference to
> `FAMOpen' /dev/shm/kdelibs/kio/kio/kdirwatch.cpp:241: undefined
> reference to `FAMOpen' kio/libksycoca.a(kdirwatch.cpp.o): In function
> `KDirWatchPrivate::removeEntry(KDirWatch*, QString const&,
> KDirWatchPrivate::Entry*)': /dev/shm/kdelibs/kio/kio/kdirwatch.cpp:935:
> undefined reference to `FAMCancelMonitor'
> kio/libksycoca.a(kdirwatch.cpp.o): In function
> `KDirWatchPrivate::checkFAMEvent(FAMEvent*)': /dev/shm/kdelibs/kio/kio/kdirwatch.cpp:1502:
> undefined reference to `FAMCancelMonitor'
> kio/libksycoca.a(kdirwatch.cpp.o): In function
> `KDirWatchPrivate::famEventReceived()': /dev/shm/kdelibs/kio/kio/kdirwatch.cpp:1410:
> undefined reference to
> `FAMPending' /dev/shm/kdelibs/kio/kio/kdirwatch.cpp:1411: undefined
> reference to `FAMNextEvent' kio/libksycoca.a(kdirwatch.cpp.o): In
> function
> `KDirWatchPrivate::useFAM(KDirWatchPrivate::Entry*)': /dev/shm/kdelibs/kio/kio/kdirwatch.cpp:613:
> undefined reference to
> `FAMMonitorFile' /dev/shm/kdelibs/kio/kio/kdirwatch.cpp:595:
> undefined reference to `FAMMonitorDirectory'
> kio/libksycoca.a(kdirwatch.cpp.o): In function
> `~KDirWatchPrivate': /dev/shm/kdelibs/kio/kio/kdirwatch.cpp:356:
> undefined reference to
> `FAMClose' /dev/shm/kdelibs/kio/kio/kdirwatch.cpp:356: undefined
> reference to `FAMClose' /dev/shm/kdelibs/kio/kio/kdirwatch.cpp:356:
> undefined reference to `FAMClose' collect2: ld returned 1 exit status
> make[2]: *** [kio/libkio.so.4.2.0] Error 1 make[2]: Leaving directory
> `/dev/shm/kdelibs.build' make[1]: ***
> [kio/CMakeFiles/kio-shared.dir/all] Error 2 make[1]: *** Waiting for
> unfinished jobs.... make[2]: Leaving directory
> `/dev/shm/kdelibs.build' /usr/bin/cmake -E
> cmake_progress_report /dev/shm/kdelibs.build/CMakeFiles [ 58%] Built
> target kdeprint_tool_escputil-module Linking CXX executable
> artsmessage cd /dev/shm/kdelibs.build/arts/message && /usr/bin/cmake
> -E cmake_link_script CMakeFiles/artsmessage.dir/link.txt
> --verbose=1 /usr/bin/c++   -O2 -march=i486 -mtune=i686 -ggdb
> -DQT_NO_ASCII_CAST -DQT_CLEAN_NAMESPACE -DQT_NO_STL -DQT_NO_COMPAT
> -DQT_NO_TRANSLATION -DQT_THREAD_SUPPORT -D_REENTRANT -include tqt.h
> CMakeFiles/artsmessage.dir/artsmessage.cc.o  -o artsmessage -rdynamic
> -L/opt/trinity/lib/qt3-3.3.8.d/lib ../../kdeui/libkdeui.so.4.2.0 ../../kdecore/libkdecore.so.4.2.0 ../../dcop/libDCOP.so.4.2.0 ../../kdefx/libkdefx.so.4.2.0
> -ltqt -lqt-mt -lXrender -lX11 -lz -lidn -lXcomposite -lXfixes -lICE
> -lSM -lfreetype -lfontconfig
> -Wl,-rpath,/opt/trinity/lib/qt3-3.3.8.d/lib:/dev/shm/kdelibs.build/kdeui:/dev/shm/kdelibs.build/kdecore:/dev/shm/kdelibs.build/dcop:/dev/shm/kdelibs.build/kdefx:
> make[2]: Leaving directory `/dev/shm/kdelibs.build' /usr/bin/cmake -E
> cmake_progress_report /dev/shm/kdelibs.build/CMakeFiles [ 58%] Built
> target artsmessage make[1]: Leaving directory
> `/dev/shm/kdelibs.build' make: *** [all] Error 2
> =============================
> 
> The header includes look correct so I'm guessing a linker problem.
> 
> Ideas?
You need to link to libfam.so or libgamin-1.so.
I don't know how to do the CMake wizardry right but if pkg-config is to
be used both fam and gamin shall be checked in the CMakeLists.txt.
> 
> Darrell
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> trinity-devel-unsubscribe@... For additional
> commands, e-mail: trinity-devel-help@... Read
> list messsages on the Web archive:
> http://trinity-devel.pearsoncomputing.net/ Please remember not to
> top-post:
> http://trinity.pearsoncomputing.net/mailing_lists/#top-posting
>