LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   Installation of mysql-workbench asking some weird packages. (https://www.linuxquestions.org/questions/slackware-14/installation-of-mysql-workbench-asking-some-weird-packages-4175447196/)

unkn(0)wn 01-25-2013 11:54 AM

Installation of mysql-workbench asking some weird packages.
 
Hi,

I was trying to install mysql-workbench on slackware. Somehow i found pre-built package of mysql-workbench and installed it. But it wont start.

Then i decided to compile it from source, i seek slackbuild.org for it and tried an installation.

It asked me for gtkmm-2.4

Code:

.
.
.
configure: error: Package requirements (gtkmm-2.4 >= 2.12) were not met:

No package 'gtkmm-2.4' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables GNOME_CFLAGS
and GNOME_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

Then when i tried installing gtkmm3 it is asking me for

Code:

.
.
.
configure: error: Package requirements (giomm-2.4 >= 2.32.0 pangomm-1.4 >= 2.27.1 gtk+-3.0 >= 3.4.0 cairomm-1.0 >= 1.9.2 gdk-pixbuf-2.0 >= 2.22.1) were not met:

No package 'giomm-2.4' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables GDKMM_CFLAGS
and GDKMM_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

but i cant find giomm anywhere!

knudfl 01-25-2013 12:02 PM

Quote:

No package 'giomm-2.4' found
'giomm-2.4' : That's /usr/lib(64)/pkgconfig/giomm-2.4.pc,
a package config file, provided by glibmm ..
http://slackbuilds.org/repository/14...raries/glibmm/

Didier Spaier 01-25-2013 12:30 PM

Why install gtkmm-3 when gtkmm-2.4 is required?

Just read carefully the "This requires" notes on slackbuilds.org for each application or library. Make and install the dependencies first, using only what is provided on Slackbuilds.org.

So begin with the dependencies of dependencies.

ponce 01-25-2013 12:56 PM

you can also use sbopkg (some docs) and its queuefiles to ease things, but you are still supposed to read the README for every package you build from slackbuilds.org's scripts.

Also if stuff like the queuefiles repository can help, remember that you have to resolve dependencies (mandatories and optionals) on your installation (you decide and are responsible on what is in and what is out).

unkn(0)wn 01-25-2013 01:09 PM

Thanks, i already got hint on installing packages from slackbuild.org and i am following it already.

Anyway, after installing Dependencies of dependencies and again few more dependencies, i ended up with following error

Code:

/bin/sh ../../../libtool --tag=CXX  --mode=link g++  -Wextra -Wall -Wno-unused -Wno-deprecated    -DTIXML_USE_STL=1  -o libgrt.la -rpath /usr/lib64/mysql-workbench grtpp_grt.lo grtpp_helper.lo grtpp_metaclass.lo grtpp_util.lo grtpp_value.lo grtpp_shell.lo grtpp_shell_lua.lo grtpp_shell_lua_help.lo grtpp_module.lo grtpp_module_cpp.lo grtpp_module_lua.lo grtpp_notifications.lo lua_context.lo serializer.lo unserializer.lo grtpp_undo_manager.lo changefactory.lo changelistobjects.lo diffchange.lo grtdiff.lo grtlistdiff.lo grtpp_module_python.lo grtpp_shell_python.lo grtpp_shell_python_help.lo python_context.lo python_grtdict.lo python_grtlist.lo python_grtobject.lo python_module.lo -L/usr/lib -llua -lm  -luuid -pthread -Wl,--export-dynamic -lgthread-2.0 -lgmodule-2.0 -lrt -lglib-2.0 -lxml2 -lsigc-2.0 -L/usr/lib -llua -lm  -luuid -L/usr/lib64 -lpython2.7 ../../../library/base/libwbbase.la
/bin/grep: /usr/lib/libstdc++.la: No such file or directory
/bin/sed: can't read /usr/lib/libstdc++.la: No such file or directory
libtool: link: `/usr/lib/libstdc++.la' is not a valid libtool archive
make[4]: *** [libgrt.la] Error 1
make[4]: Leaving directory `/tmp/build/mysql-workbench-gpl-5.2.45-src/library/grt/src'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/tmp/build/mysql-workbench-gpl-5.2.45-src/library/grt'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/tmp/build/mysql-workbench-gpl-5.2.45-src/library'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/build/mysql-workbench-gpl-5.2.45-src'
make: *** [all] Error 2

ponce : thanks for referring sbopkg.

Didier Spaier 01-25-2013 01:24 PM

Quote:

Originally Posted by unkn(0)wn (Post 4877542)
Thanks, i already got hint on installing packages from slackbuild.org and i am following it already.

Anyway, after installing Dependencies of dependencies and again few more dependencies, i ended up with following error

Code:

/bin/grep: /usr/lib/libstdc++.la: No such file or directory

Looks a bit strange as this file is provided by gcc-g++-4.7.1
Make sure that this package be installed (it should, if you made a full installation of Slackware-14.0)

unkn(0)wn 01-25-2013 01:56 PM

Well, i was surfing and found http://www.linuxquestions.org/questi...ckages-850734/
this person is having same error as mine, but i couldn't understand how he fixed it!
Pls do tell, i am tired of installing workbench!

Didier Spaier 01-25-2013 02:05 PM

Did you install a 32 bit or a 64 bit Slackware 14?

unkn(0)wn 01-25-2013 02:09 PM

64!

Didier Spaier 01-25-2013 02:23 PM

That's why it doesn't find that file. It is in /usr/lib64, not in /usr/lib, in your installation (you can check that).

You had that error running mysql-workbench-gpl.SlackBuild, right? Then it should have set LIBDIRSUFFIX to 64, so that's look a bit strange. And the source code is architecture independant so you should not need compat libraries. In any case this is not the same problem as in the thread you linked to.

Just to make sure, please provide output of:
Code:

uname -m

ponce 01-25-2013 02:24 PM

Quote:

Originally Posted by unkn(0)wn (Post 4877568)
64!

and multilib too, I suppose: refeer to slackbuilds.org' faq.

unkn(0)wn 01-25-2013 02:32 PM

bash-4.2$ uname -a
Linux unkn0wn-XPS 3.7.1 #2 SMP Thu Dec 20 21:20:41 CST 2012 x86_64 Intel(R) Core(TM) i5 CPU M 460 @ 2.53GHz GenuineIntel GNU/Linux

Didier Spaier 01-25-2013 03:11 PM

I assume you have multilib gcc-g++ installed.

If that is the case, edit mysql-workbench-gpl.SlackBuild this way (line added in red):
Code:

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}" \
./autogen.sh

and run the SlackBuild again.

unkn(0)wn 01-25-2013 03:21 PM

Sorry for being such a burden, but in absence of all you gentlemen i messed with package gcc-g++ and now my holy system is serving me with error.

Code:

configure: error: C++ preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details

Please dont kill me!

Didier Spaier 01-25-2013 03:32 PM

Quote:

Originally Posted by unkn(0)wn (Post 4877604)
Please dont kill me!

We can't, unless you kindly give us your address :^)

Would you be kind enough to tell us:
(1) Which command did you issue which gave you this error message?
(2) What did you do exactly with gcc-g++?

This could help us to help you.

unkn(0)wn 01-25-2013 03:41 PM

Hmmm.

I read online and found that above error is caused by package gcc-c++ , which i couldn't find for Slackware. Then i moved to gcc-g++ and reinstalled v4.7.2 . Now i realized something's wrong, so removed both versions and did a clean installation of v4.7.2. On running slackpkg upgrade-all i found that the mirror i had selected had only version 4.7.1. So i uninstalled v4.7.2 and did a clean installation of version 4.7.1.

In the middle of this mayhem installation of mysql-workbench started giving /lib/cpp error.

But now its gone, and in farewell, gifted me a new kind of error which is described below!

Code:

In file included from /usr/include/boost/signals2/detail/foreign_ptr.hpp:18:0,
                from /usr/include/boost/signals2/slot_base.hpp:18,
                from /usr/include/boost/signals2/detail/tracked_objects_visitor.hpp:18,
                from /usr/include/boost/signals2/slot.hpp:22,
                from /usr/include/boost/signals2/connection.hpp:23,
                from base/trackable.h:24,
                from base/ui_form.h:29,
                from ui_form.cpp:23:
/usr/include/boost/smart_ptr/bad_weak_ptr.hpp:39:7: error: redefinition of 'class boost::bad_weak_ptr'
In file included from /usr/include/boost/detail/shared_count.hpp:28:0,
                from /usr/include/boost/shared_ptr.hpp:32,
                from base/trackable.h:23,
                from base/ui_form.h:29,
                from ui_form.cpp:23:
/usr/include/boost/detail/bad_weak_ptr.hpp:39:7: error: previous definition of 'class boost::bad_weak_ptr'
make[3]: *** [ui_form.lo] Error 1
make[3]: Leaving directory `/tmp/build/mysql-workbench-gpl-5.2.45-src/library/base'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/tmp/build/mysql-workbench-gpl-5.2.45-src/library'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/build/mysql-workbench-gpl-5.2.45-src'
make: *** [all] Error 2


unkn(0)wn 01-25-2013 03:58 PM

That's it. What done is done. Going for a clean reinstall NOW!

Thank you for having me!

Didier Spaier 01-25-2013 04:00 PM

I really don't know why you did all that.
<rant>Don't follow (blindly) any advise on line especially if they are not intended for your version of your distribution: stay with us or leave for good.</rant>
Of course the error can't be caused by a package which is not part of Slackware (and don't be fooled by packages's names anyway: content of packages bearing the same name are not the same across distributions, and the same library can be found in packages named differently across distributions).
Besides, why install gcc-g++ v-4.7.2 as Slackware includes version v-4.7-1, why???

Now my best advise would be to clean your system before doing anything else:
Code:

slackpkg update
slackpkg upgrade-all
slackpkg clean-system # Keep only the packages you are sure you should keep.

EDIT I didn't see your last post before posting. Anyway, don't worry: making mistakes (and understanding why they are mistakes) is still the best way to learn. Take care.

unkn(0)wn 01-26-2013 10:59 AM

Thanks Didier,

Actually i had upgraded my slack to slack current. And then maybe messing with deb packages using deb2tgx causes the problem. After reinstalling slack, i found that most people find slack current as much stable as slack stable. So i decided to upgrade to current.

Is there any difference between installing mysql-workbench in slack 14 and slack current? Should i upgrade to current? Would i able to install mysql-workbench in slack current?

Sorry for bugging again on dead thread.

Didier Spaier 01-26-2013 11:26 AM

Slackware-current public exposure's purpose is to get a chance to be tested as thoroughly as possible before it becomes the next stable release.

But for a regular user there is really no advantage running -current - there are inconveniences instead:
(1) it may become instable at some point of time and is harder to keep up to date. It may happen that you even have to reinstall from scratch.
(2) it makes harder to install third party packages. For instance http://slackbuilds.org does not provide SlackBuilds for -current.

You won't get any advantage, nor see any difference, in running mysql-workbench in -current. Its installation will only be more difficult.

So my advise is: stay with Slackware-14.0.

Also consider that people running -current are supposed to be able to solve themselves the problems which can occur using it. So if you want to try, at least wait till you be a little more experienced.

Oh, and as already said, do not try to install packages not intended for Slackware-14 - in particular do not try to install .deb packages.

PS You will find on slackbuilds.org a few SlackBuilds which re-package .deb packages. You may safely use these SlackBuilds as they are carefully reviewed, but do not use the .debs in any other way.

HTH,

unkn(0)wn 01-26-2013 02:10 PM

Thanks Didier for such a great explanation.

willysr 01-26-2013 08:35 PM

There's no problem building mysql-workbench on -current
in fact, i tested both on -Current and -Stable on my machine for my mysql-workbench in my SlackHacks repository

Didier Spaier 01-27-2013 01:18 AM

@Willy: that's good, but out of curiosity why the need of keeping the (almost) same stuff on two different repositories? in other words, why not simply push the changes you made on SlackHacks to slackbuilds.org?

@unkn(o)wn: that doesn't mean you should go for -current. In fact what Willy said merely confirm that in this case at least, you wouldn't see any difference in using -14 or -current ;)

willysr 01-27-2013 02:10 AM

it's because i'm not the current maintainer of mysql-workbench in SBo, so it's not my privileges to submit changes to SBo, except when two things happened:
1. The current maintainer stepped down and i took maintainership
2. New Slackware version is coming and the admins stopped submission to test all the scripts to make sure it works in next slackware release

The only reason why i'm testing in two environments is because SBo requires that a package is built on stable releases, while my slackhacks is intended for my own private testing on packages for current and hopefully when new slackware version comes out, i don't have to test again and just submitted my packages to SBo :)

Didier Spaier 01-27-2013 03:38 AM

I see, thanks for your explanation, Willy. :cool:


All times are GMT -5. The time now is 01:42 PM.