Geogebra 6.0.356 installation

I tried to install Geogebra 6.0.356.
I downloaded from http://wiki.geogebra.org/en/Reference:GeoGera_Installation , in section Other GeoGebra Classic 6 I download version Linux (rpm): 64 bit.
Trying to install it using Software Installer I get an error message

… cannot be installed: geogebra … (due to unsatisfied /usr/lib64/libstdc++.so.6) …

Installing libstdc++6 version 7.2.1_2017.09-1:2015.0 don’t solve the problem.
Where can I find libstdc++.so.6 ?

  • OpenMandriva Lx version: 3.02 64

The package libstdc++6 contains libstdc++.so.6. I don’t have the new 7.2.1_2017.09-1:2015.0 but the one I have installed do provide this library.

I have /usr/lib64/libstdc++.so too then libstdc++.so.6 should be available.
I ask in Geogebra forum.
Thanks.

Post edit: here’s Geogebra thread

I have two computers. One has the new lib64stdc++6-7.2.1_2017.09-1-omv2015.0.x86_64, the other was not updated.

The new one:
$ rpm -q --what-provides lib64stdc++.so.6
no package provides lib64stdc++.so.6

the old one:
$ rpm -q --what-provides lib64stdc++.so.6
libstdc++6-6.3.1_2017.02-1-omv2015.0.x86_64

It seems to be a sort of “misunderstood”. Either the problem is in the OMV package list of provides or in the geogebra way of “asking”.

Curiously, somehow the OMV package provides libstdc++.so.6 but it can’t be seen since its list appears appended with ()(64bit), if you try in the new one:

$ rpm -q --provides lib64stdc++6-7.2.1_2017.09-1-omv2015.0.x86_64
libstdc++ = 7.2.1_2017.09-1:2015.0
libstdc++.so.6()(64bit)
......

and, in the old one,

$ rpm -q --provides libstdc++6-6.3.1_2017.02-1-omv2015.0.x86_64
libstdc++.so.6
....

I have same results:

$ rpm -q --what-provides lib64stdc++.so.6 no package provides lib64stdc++.so.6

$ rpm -q --provides lib64stdc++6-7.2.1_2017.09-1-omv2015.0.x86_64 libstdc++ = 7.2.1_2017.09-1:2015.0 libstdc++.so.6()(64bit) libstdc++.so.6(CXXABI_1.3)(64bit) . . .
Then is not so clear how libstdc++.so.6 is available and how is detected.
What about opening a bug?

Not sure but maybe:

# urpmi libstdc++6

Edit: But the files I think geogbra is looking for are in /lib not /usr/lib64.

After installing ‘libstdc++6’:

$ ls -l /lib
...
lrwxrwxrwx  1 root root      19 Oct 29 15:33 libstdc++.so.6 -> libstdc++.so.6.0.24
-rwxr-xr-x  1 root root 1499288 Oct  6 15:33 libstdc++.so.6.0.24

As you can read in first message I already installed libstdc++6.

[quote=“ben79, post:6, topic:1485”]
But the files I think geogbra is looking for are in /lib not /usr/lib64
[/quote]Error message asks for /usr/lib64/libstdc++.so.6

Well that says a lot for my ability to read. Anyway can you just copy the file to /usr/lib64?

Edit: Or use a symbolic link?

Don’t worry it happens in a hurry to answer.
.

[quote=“ben79, post:9, topic:1485”]
Anyway can you just copy the file to /usr/lib64?
[/quote]Which file? Where I can find it?

libstdc++.so.6

/lib

$ ls -l /lib

lrwxrwxrwx 1 root root 19 Oct 29 15:33 libstdc++.so.6 -> libstdc++.so.6.0.24
-rwxr-xr-x 1 root root 1499288 Oct 6 15:33 libstdc++.so.6.0.24

Edit: I think to create a symbolic link would be:

# ln -s /lib/libstdc++.so.6 /usr/lib64

1 Like

Any progress on this? Can we close this topic?

Copied libstdc++.so.6 from /lib to /usr/lib64, checked and found /usr/lib64/libstdc++.so.6 of 1.4 MiB as the origin in /lib. But Geogebra don’t install.

And /usr/lib64/libstdc++.so.6 seems still invisible

$ rpm -q --what-provides lib64stdc++.so.6 no package provides lib64stdc++.so.6

It is not invisible, it just provides the library with some “surnames”.

It shows geogebra wants
libstdc++.so.6
and not
libstdc++.so.6()(64bit)
although they are the same.

In situations like this it can be worth to create a kind of “dummy” package which just “provides” libstdc++.so.6 and will let geogebra to install.

Symlink as explained by @ben79 is a better solution.

No packages provides for /usr/lib64/libstdc++.so.6 so once you are sure you have it you may force the installation with rpm -ivh --nodeps ....

Tried to create symbolic link

# ln -s /lib/libstdc++.so.6 /usr/lib64 ln: failed to create symbolic link '/usr/lib64/libstdc++.so.6': File exists
then using mc I delete /usr/lib64/libstdc++.so.6. Now it seems link is created

[root@HP_16ac lib64]# ln -s /lib/libstdc++.so.6 /usr/lib64 [root@HP_16ac lib64]# but Geogebra still won’t install

# urpmi ./geogebra-classic-6.0.392.0-201710132322.x86_64.rpm A requested package cannot be installed: geogebra-classic-6.0.392.0-201710132322.x86_64 (due to unsatisfied /usr/lib64/libstdc++.so.6) Continue installation anyway? (Y/n)

You my try with:

urpmi --allow-nodeps ./geogebra-classic-6.0.392.0-201710132322.x86_64.rpm

[code]# urpmi --allow-nodeps ./geogebra-classic-6.0.392.0-201710132322.x86_64.rpm
ATTENZIONE: l’opzione --allow-nodeps è in uso. Strani problemi potrebbero verificarsi

installazione di geogebra-classic-6.0.392.0-201710132322.x86_64.rpm da .
Installazione fallita:
/usr/lib64/libstdc++.so.6 is needed by geogebra-classic-6.0.392.0-201710132322.x86_64
error while checking dependencies
Provo l’installazione senza controllare le dipendenze? (s/N) s
In preparazione… ###############################################################################################################
1/1: geogebra-classic ###############################################################################################################
/var/tmp/rpm-tmp.34996: riga 1: /usr/local/bin/update-mime-database: File o directory non esistente
Redirecting to /bin/systemctl start atd.service [/code]
Geogebra is installed and seems working. Thanks.

The option “nodeps” may force installation even if other dependencies besides libstdc++.so.6 are not met.
A dummy package would overcome only the dependency on libstdc++.so.6.

1 Like

That’s true but usually RPMs provided by upstream minimize dependencies at essential ones. However it is better to check it

rpm --qp --requires ./geogebra-classic-6.0.392.0-201710132322.x86_64.rpm

… and providing the symlink. This is my preferred solution but build an RPM could not be trivial for someone haven’t never made it.