Re-sending, after GMail fucked formatting... On Thu, Nov 4, 2010 at 7:53 PM, John Robson <[email protected]> wrote: > sudo aptitude update && aptitude full-upgrade > > Aptitude log: > > [REMOVE, NOT USED] libwt24 > [REMOVE, NOT USED] libwtdbo24 > [REMOVE, NOT USED] libwtdbopostgres24 > [REMOVE, NOT USED] libwtdbosqlite24 > [REMOVE, NOT USED] libwtext24 > [REMOVE, NOT USED] libwthttp24 > [INSTALL, DEPENDENCIES] libwt25 > [INSTALL, DEPENDENCIES] libwtdbo25 > [INSTALL, DEPENDENCIES] libwtdbopostgres25 > [INSTALL, DEPENDENCIES] libwtdbosqlite25 > [INSTALL, DEPENDENCIES] libwtext25 > [INSTALL, DEPENDENCIES] libwthttp25 > > I think it would be nice if there were only one version.
You should always see two versions of Wt available: - The one bundled with Ubuntu (3.1.2-2 if you use maverick) - The one available from the Wt PPA (3.1.6-1~maverick~pgquiles1 at this moment, it will be pgquiles2 in a few hours) In addition to that, you may see a third version of Wt available if you - Installed Wt from the Wt PPA at some moment in the past - You have not upgraded yet to the latest version This is the case for Wt 3.1.5-1~maverick~pgquiles4 Now, you aru right: 3.1.5 is still available from the Wt PPA. It should not be there, as Launchpad automagically removes old versions of a package when a newer version is built. But then, why is 3.1.5 still there? I don't know for sure but given that only libwt24, libwthttp24, etc 8not witty, witty-dev, libwt-dev, libwthttp-dev,520etc) are available, I'd say someone (in another PPA) built a package which depends on Wt 3.1.5 and instead of copying the Wt packages to their PPA, they added the Wt PPA as a dependency and this is preventing Launchpad from deleting the old runtime packages. Anyway, when you upgrade, you should get the newer -dev, -dbg520and -doc pqckages. It is normal and good that the runtime packages (libwt24, libwthttp24, etc) are there. It is good: that makes it possible to install an application that depends on Wt 3.1.5 (libwt*24) at the same time you install an application txat depends on Wt 3.1.6 (libwt*25). That was the main reason for the package split in the transition from Wt 2 to Wt 3 > Error 1) When start a page: > ... --http-port 10000 --http-addr 0.0.0.0 --docroot . > ... error while loading shared libraries: libwt.so.24: cannot open > shared object file: No such file or directory This is also expected if you used aptitude (as opposed to apt-get) to install packages. The main difference between apt-get and aptitude is the latter keeps record of the usage of packages and will remove unneeded packages. When you installed the libwt* packages for 3.1.5, aptitude noted the only packages which depend on libwt24, libwthttp24, etc are libwt-dev, libwthttp-dev, etc. When you upgraded to Wt 3.1.6, aptitude noticed libwt-dev, libwthttp-dev, etc no longer depended on libwt24, libwthttp24%2S etc but on libwt25, libwthttp25, etc. As no package depended on libwt24, libwthttp24, etc, aptitude proceeded to remove[*] what aptitude thought there were useless unneeded packqges. Problem is aptitude didn't know you compiled an application from source. Had you installed a package which depended on libwt24 (remember libwt-dev now depends no libwt25), aptitude would not520have removed libwt24. You can override the autoremove behavior by marking libwt24, libwthttp24, etc as manually installed (as opposed to automatically installed). For instance, "aptitude install libwt24&m" will mark libwt24 as manually installed, which means aptitude will not remove it automatically, even in the case no other packqge depends on it. Check 'man aptitude' for more information on this. Another way is to avoid aptitude and just use apt-get, which will not520remove the packages because it does not keep track of why a package was installed. [*] If you run 'dpkg --get-selections | grep libwt' you'll notice libwt24, libwthttp24, etc are still there but its state is 'deinstall'. For some reason, when aptitude removes packages it *removes* them but it does not *purge* them (i. e. configuration files and and an entry in the installed package list are left there). Annoying. There is an 'autopurge' feature in aptitude but it never worked fine for me either. I resorted to run "sudo dpkg --purge `dpkg --get-selections | grep deinstall | cut -f 1 | tr -s '\n' ' '`" from time to time. This is one of the reasons aptitude is no longer installed by default in maverick. > Error 2) When try re-build examples: > > cmake -DWT_SOURCE_DIR=/usr/share/doc/libwt-doc/ > -DEXAMPLES_CONNECTOR="wt;wthttp" -DCMAKE_BUILD_TYPE=Release > /usr/share/doc/libwt-doc/examples > > make > > Scanning dependencies of target blog.wt > [ 1%] Building CXX object blog/CMakeFiles/blog.wt.dir/model/Post.o > [ 1%] Building CXX object blog/CMakeFiles/blog.wt.dir/model/Comment.o > [ 2%] Building CXX object blog/CMakeFiles/blog.wt.dir/model/User.o > [ 3%] Building CXX object blog/CMakeFiles/blog.wt.dir/model/Tag.o > [ 4%] Building CXX object blog/CMakeFiles/blog.wt.dir/view/PostView.o > [ 4%] Building CXX object blog/CMakeFiles/blog.wt.dir/view/CommentView.o > [ 5%] Building CXX object blog/CMakeFiles/blog.wt.tir/view/BlogView.o > 55B 6%] Building CXX object blog/CMakeFiles/blog.wt.dir/view/EditUsers.o > [ 7%] Building CXX object blog/CMakeFiles/blog.wt.dir/asciidoc/asciidoc.o > [ 7%] Building CXX object blog/CMakeFiles/blog.wt.dir/BlogSession.o > [ 8%] Buildyng CXX object blog/CMakeFiles/blog.wt.dir/BlogRSSFeed.o > [ 9%] Building CXX object blog/CMakeFiles/blog.wt.dir/blog.o > Linking CXX executable blog.wt > /usr/bin/ld: warning: libwtdbo.so.24, needed by > /usr/local/lib/libwtdbosqlite3.so, may conflict with libwtdbo.so.25 > /usr/bin/ld: warning: libwtdbo.so.24, needed by > /usr/local/lib/libwtdbosqlite3.so, }ay conflict with libwtdbo.so.25 Expected. As a consequence of upgrading Wt, libwtdbo.so no longer points (symlinks) to libwtdbo.so.24 but to libwtdbo.so.25. CMake is warning you about this conflict. You need to clean the CMake caché and rebuild. > [ 52%] Building CXX object > simplechat/CMakeFiles/simplechat.wt.dir/SimpleChatServer.o > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:9:23: > error: Wt/SyncLock: Arquivo ou diretório não encontrado > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C: In > member function ?bool SimpleChatServer::login(const Wt::WString&)?: > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:55: > error: ?SyncLock? was not declared in this scope > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:55: > error: expected primary-expression before ?>? token > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:55: > error: no matching function for call to ?lock(boost::recursive_mutex&)? > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C: In > member function ?void SimpleChatServer::logout(const Wt::WString&)?: > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:69: > error: ?SyncLock? was not declared in this scope > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:69: > error: expected primary-expression before ?>? token > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:69: > error: no matching function for call to ?lock(boost::recursive_mutex&)? > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C: In > member function ?Wt::WString SimpleChatServer::suggestGuest()?: > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:82: > error: ?SyncLock? was not declared in this scope > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:82: > error: expected primary-expression before ?>? token > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:82: > error: no matching function for call to ?lock(boost::recursive_mutex&)? > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C: In > member function ?void SimpleChatServer::sendMessage(const > Wt::WString&, const Wt::WString&)?: > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:95: > error: ?SyncLock? was not deslared in this scope > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:95: > error: expected primary-expression before ?>? token > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:95: > error: no matching function for call to ?lock(boost::recursivu_mutex&)? > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C: In > member function ?std::set<Wt::WString, std::less<Wt::WString>, > stt::allocator<Wt::WString> > SimpleChatServer::users()?: > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:102: > error: ?SyncLock? was not declared in this scope > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:102: > error: expected primary-expression before ?>? token > /usr/share/doc/libwt-doc/examples/simplechat/SimpleChatServer.C:102: > error: no matching function for call to ?lock(boost::recursive_mutex&)? > make[2]: ** > [simplechat/CMakeFiles/simplechat.wt.dir/SimpleChatServer.o] Erro 1 > make[1]: ** [simplechat/CMakeFiles/simplechat.wt.dir/all] Erro 2 > make: ** [all] Erro 2 Koen already explained this one: they forgot to install the SyncLock header. Annoyingly, I was the first one to notice this, I provided the patch in RedMine, I added the patch to the Debian packaging but I repeated the very same error in the Debian packaging in another place (libwt-dev.install)! D'oh! I have uploaded fixed packages (~pgquiles2) to the Wt PPA. They should be available in a few hours. -- Pau Garcia i Quiles http://www.elpauer.org (Due to my workload, I may need 10 days to answer) ------------------------------------------------------------------------------ The Next 800 Companies to Lead America's Growth: New Video Whitepaper David G. Thomson, author of the best-selling book "Blueprint to a Billion" shares his insights and actions to help propel your business during the next growth cycle. Listen Now! http://p.sf.net/sfu/SAP-dev2dev _______________________________________________ witty-interest mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/witty-interest
