Bug 1281292 - Missing rpm dependency for graphviz
Missing rpm dependency for graphviz
Status: CLOSED WORKSFORME
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: graphviz (Show other bugs)
6.7
Unspecified Unspecified
unspecified Severity unspecified
: rc
: ---
Assigned To: Jaroslav Škarvada
BaseOS QE - Apps
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2015-11-12 04:13 EST by Behnam [:ZWNJ] Esfahbod
Modified: 2015-11-13 05:02 EST (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2015-11-13 05:02:44 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Behnam [:ZWNJ] Esfahbod 2015-11-12 04:13:40 EST
Description of problem:
graphviz binaries (like `dot`) fail on their config file being zero-sized. It's zero-sized because the config generation command (`dot -c`) in its rpm's %post script is failing.

First problem: this failure should be fatal!

Then, the script is failing, because of an error like this:
```
$ dot -c
Error: /usr/lib64/graphviz/config6 is zero sized, or other read error.
Warning: Could not load "/usr/lib64/graphviz/libgvplugin_pango.so.6" - file not found
Warning: Could not load "/usr/lib64/graphviz/libgvplugin_xlib.so.6" - file not found
Segmentation fault
```

Which, when `strace`ed, will show you some other lib .so files being missing, which are provided by these packages:
```
libXau
libxcb
libXext
```

So, it looks like the current .so files build in graphviz rpm do have dependencies on those library rpms, but not depending on them.


Version-Release number of selected component (if applicable):
graphviz-2.26.0


How reproducible:
100% of the time.


Steps to Reproduce:
Try this:
```
$ sudo yum remove libXau libxcb libXext
Loaded plugins: yumtorrent
Setting up Remove Process
No Match for argument: libXau
Package(s) libXau available, but not installed.
No Match for argument: libxcb
Package(s) libxcb available, but not installed.
No Match for argument: libXext
Package(s) libXext available, but not installed.
No Packages marked for removal

$ sudo dot -c
Error: /usr/lib64/graphviz/config6 is zero sized, or other read error.
Warning: Could not load "/usr/lib64/graphviz/libgvplugin_gd.so.6" - file not found
Warning: Could not load "/usr/lib64/graphviz/libgvplugin_xlib.so.6" - file not found
Warning: Could not load "/usr/lib64/graphviz/libgvplugin_pango.so.6" - file not found
Warning: Could not load "/usr/lib64/graphviz/libgvplugin_gtk.so.6" - file not found
Warning: Could not load "/usr/lib64/graphviz/libgvplugin_gd.so.6" - file not found
Warning: Could not load "/usr/lib64/graphviz/libgvplugin_xlib.so.6" - file not found
Warning: Could not load "/usr/lib64/graphviz/libgvplugin_pango.so.6" - file not found
Warning: Could not load "/usr/lib64/graphviz/libgvplugin_gtk.so.6" - file not found
```

Additional info:
See other reports on the web, including this SO post: https://stackoverflow.com/questions/30326511/getting-xhprof-visualization-issues-with-graphviz-and-dot-working
Comment 2 Jaroslav Škarvada 2015-11-12 05:34:14 EST
Sorry, I am unable to reproduce the problem. Cleanly provisioned RHEL-6.7:

$ dot -c
$ echo $?
0

$ rpm -q graphviz
graphviz-2.26.0-10.el6.x86_64

The libXau, libxcb, libXext are X libs and their deps are handled by implicit RPM deps, there is no need to require them explicitly (and doing so is really bad approach).

# yum remove libXau
...
Removing for dependencies:
...
graphviz
...

# yum remove libxcb
...
Removing for dependencies:
...
graphviz
...

# yum remove libXext
...
Removing for dependencies:
...
graphviz
...

Is it RHEL? It seems you use packages rebuilt from RHEL on some seriously broken build system.
Comment 3 Behnam [:ZWNJ] Esfahbod 2015-11-12 15:25:09 EST
Thanks, Jaroslav, for looking into this. Well, I'm on CentOS and didn't expect it to be different from RHEL, as it looked like that the RPM is not changed that mush.

Anyway, looks like I need to report it there, then.

Thanks again!
-b
Comment 4 Jaroslav Škarvada 2015-11-13 05:02:44 EST
Thanks for info. It seems your RPM packages have wrong implicit dependencies which are generated by rpmbuild in the build system. I am closing this per comment 3. Feel free to reopen or contact me if this problem is reproducible on RHEL.

Note You need to log in before you can comment on or make changes to this bug.