Opened 12 years ago
Last modified 3 years ago
#36707 new defect
graphviz +smyrna fails when gtk2 is installed +quartz -x11
Reported by: | i3roly | Owned by: | ryandesign (Ryan Carsten Schmidt) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.1.2 |
Keywords: | Cc: | cooljeanius (Eric Gallager), mascguy (Christopher Nielsen) | |
Port: | graphviz-devel |
Description
Hi,
I'm on OSX 10.8 with the latest xcode installed.
I've managed to install graphviz-devel, but when specifying the smyrna variant (i.e. graphviz-devel +smyrna), it does not produce a smyrna executable.
Attachments (2)
Change History (16)
comment:1 Changed 12 years ago by mf2k (Frank Schima)
Keywords: | smyrna graphviz plots removed |
---|---|
Owner: | changed from macports-tickets@… to ryandesign@… |
comment:2 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
So the port builds successfully, but does not end up containing smyrna?
Can you test whether the graphviz port has the same problem?
comment:3 Changed 12 years ago by i3roly
both have the same problem.
even when building graphviz from source, this is the same issue.
however when I try to build from source it gives some information about what part of the configure process failed.
i suspect it's the same issue, which is finding the proper glut headers. I have pasted the relevant chunks from the "configure" command.:
GagansMacPro:graphviz-2.29.20121016.0445 Gagan$ ./configure with_smyrna=yes
*snip*
checking for connect... (cached) yes checking for gethostbyname... (cached) yes checking for expat-config... no checking expat.h usability... yes checking expat.h presence... yes checking for expat.h... yes checking for main in -lexpat... yes checking IL/il.h usability... no checking IL/il.h presence... no checking for IL/il.h... no configure: WARNING: Optional DevIL library not available - missing headers checking for main in -lIL... no configure: WARNING: Optional DevIL library not available checking for main in -lXpm... yes checking X11/Intrinsic.h usability... yes checking X11/Intrinsic.h presence... yes checking for X11/Intrinsic.h... yes checking for X11/Xaw/Text.h... yes checking for main in -lXaw... yes checking zlib.h usability... yes checking zlib.h presence... yes checking for zlib.h... yes checking for main in -lz... yes checking for deflateBound... yes checking for RSVG... no checking ghostscript/iapi.h usability... no checking ghostscript/iapi.h presence... no checking for ghostscript/iapi.h... no checking for PANGOCAIRO... yes checking for PANGOFT2... yes checking for pango_fc_font_lock_face... yes checking for pango_fc_font_unlock_face... yes checking for LASI... yes checking for FREETYPE2... yes checking for FONTCONFIG... yes checking for GDK_PIXBUF... yes checking for GTK... yes checking for GTKGL... no checking for GTKGLEXT... yes checking for GTS... yes checking for GLADE... yes checking for qmake-qt4... no checking for qmake-qt3... no checking for qmake... no checking for gdlib-config... /opt/local/bin/gdlib-config checking gd.h usability... yes checking gd.h presence... yes checking for gd.h... yes checking for main in -lgd... yes checking GL/glut.h usability... no checking GL/glut.h presence... no checking for GL/glut.h... no configure: WARNING: Optional glut library not available - no GL/glut.h configure: WARNING: SMYRNA requires GLUT checking if have working sincos()... no checking if FILE struct contains _cnt... no checking if FILE struct contains _r... yes checking if FILE struct contains _next... no checking if FILE struct contains _IO_read_end... no checking if errno externs are declared... yes checking if getopt externs are declared... yes checking if intptr_t is declared... yes checking if assert needs __eprintf... no checking size of long long... 8 checking size of int... 4 configure: creating ./config.status config.status: creating Makefile config.status: creating debian/changelog
*snip*
=== configuring in libltdl (/Users/Gagan/Downloads/graphviz-2.29.20121016.0445/libltdl) configure: running /bin/sh ./configure --disable-option-checking '--prefix=/usr/local' 'with_smyrna=yes' '--enable-ltdl-convenience' --cache-file=/dev/null --srcdir=. checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... config/install-sh -c -d checking for gawk... no checking for mawk... no checking for nawk... no checking for awk... awk checking whether make sets $(MAKE)... yes checking build system type... x86_64-apple-darwin12.2.0 checking host system type... x86_64-apple-darwin12.2.0 checking how to print strings... printf checking for style of include used by make... GNU checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking dependency style of gcc... gcc3 checking for a sed that does not truncate output... /usr/bin/sed checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld checking if the linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) is GNU ld... no checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm checking the name lister (/usr/bin/nm) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 196608 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking how to convert x86_64-apple-darwin12.2.0 file names to x86_64-apple-darwin12.2.0 format... func_convert_file_noop checking how to convert x86_64-apple-darwin12.2.0 file names to toolchain format... func_convert_file_noop checking for /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld option to reload object files... -r checking for objdump... no checking how to recognize dependent libraries... pass_all checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for ar... ar checking for archiver @FILE support... no checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/bin/nm output from gcc object... ok checking for sysroot... no checking for mt... no checking if : is a manifest tool... no checking for dsymutil... dsymutil checking for nmedit... nmedit checking for lipo... lipo checking for otool... otool checking for otool64... no checking for -single_module linker flag... yes checking for -exported_symbols_list linker flag... yes checking for -force_load linker flag... yes checking how to run the C preprocessor... gcc -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fno-common -DPIC checking if gcc PIC flag -fno-common -DPIC works... yes checking if gcc static flag -static works... no checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) supports shared libraries... yes checking dynamic linker characteristics... darwin12.2.0 dyld checking how to hardcode library paths into programs... immediate checking for dlopen in -ldl... yes checking whether a program can dlopen itself... yes checking whether a statically linked program can dlopen itself... yes checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking which extension is used for runtime loadable modules... .so checking which variable specifies run-time module search path... DYLD_LIBRARY_PATH checking for the default library search path... /usr/local/lib /lib /usr/lib checking for library containing dlopen... none required checking for dlerror... yes checking for shl_load... no checking for shl_load in -ldld... no checking for dld_link in -ldld... no checking for _ prefix in compiled symbols... yes checking whether we have to add an underscore for dlsym... no checking whether deplibs are loaded by dlopen... yes checking for argz.h... no checking for error_t... no checking for argz_add... no checking for argz_append... no checking for argz_count... no checking for argz_create_sep... no checking for argz_insert... no checking for argz_next... no checking for argz_stringify... no checking whether libtool supports -dlopen/-dlpreopen... yes checking for unistd.h... (cached) yes checking for dl.h... no checking for sys/dl.h... no checking for dld.h... no checking for mach-o/dyld.h... yes checking for dirent.h... yes checking for closedir... yes checking for opendir... yes checking for readdir... yes checking for strlcat... yes checking for strlcpy... yes configure: creating ./config.status config.status: creating Makefile config.status: creating config.h config.status: config.h is unchanged config.status: executing depfiles commands config.status: executing libtool commands ---------------------------------------------------------------- graphviz-2.29.20121016.0445 will be compiled with the following: options: graph: No (disabled deprecated) cgraph: Yes digcola: Yes expat: Yes fontconfig: Yes freetype: Yes glut: No (missing GL/glut.h) gts: Yes ipsepcola: No (disabled by default - C++ portability issues) ltdl: Yes ortho: Yes sfdp: Yes shared: Yes static: No (disabled by default) qt: No (qmake not found) x: Yes commands: dot: Yes (always enabled) neato: Yes (always enabled) fdp: Yes (always enabled) circo: Yes (always enabled) twopi: Yes (always enabled) gvpr: Yes (always enabled) gvmap: Yes (always enabled) lefty: Yes smyrna: No (requires: glut) gvedit: No (qmake not found) plugin libraries: dot_layout: Yes (always enabled) neato_layout: Yes (always enabled) core: Yes (always enabled) devil: No (missing library) gd: Yes gdiplus: No (disabled by default - Windows only) gdk_pixbuf: Yes ghostscript: No (missing headers) glitz: No (disabled by default - incomplete) gtk: Yes lasi: Yes ming: No (disabled by default - incomplete) pangocairo: Yes quartz: No (disabled by default - Mac only) rsvg: No (rsvg library not available) visio: No (disabled by default - experimental) webp: No (disabled by default - experimental) xlib: Yes
comment:4 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
We were missing the freeglut dependency, which I added in r99088. Please wait 30 minutes, then "sudo port selfupdate", "sudo port clean graphviz-devel" and then try again. Does that help?
comment:5 Changed 12 years ago by i3roly
hi, I tried this and smyrna *does* install, however it cannot render graphics.
Can you ensure that it is compiled with quartz instead of x_11? The binary executes fine, but there is no graphics in the window, instead it will take the graphics of whatever window I alt tab from.
weird. much closer though heh.
comment:6 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Summary: | Graphviz-devel 2.2x Smyrna does not build → graphviz +smyrna fails when gtk2 is installed +quartz -x11 |
---|
I had never tried compiling graphviz +smyrna when the gtk stack is installed with +quartz instead of +x11, but it would not surprise me if that did not work. It works for me when using +x11.
I just created a new MacPorts installation to compile everything with +quartz right now to test this. graphviz-devel +smyrna fails to build. The log is attached. graphviz +smyrna builds but when running smyrna I get a similar problem as you did, with random graphics memory showing up in the entire smyrna window. You can report these bugs to the developers of Graphviz if you like. Until they fix it, install the gtk stack with +x11 instead.
Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Attachment: | main.log.bz2 added |
---|
comment:7 Changed 3 years ago by cooljeanius (Eric Gallager)
I have graphviz installed with +smyrna
currently even though my gtk stack is installed with +quartz
; I'm not sure if the smyrna functionality actually works, though:
$ port installed graphviz The following ports are currently installed: graphviz @2.40.1_4+gdk_pixbuf+guile+java+ming+ocaml+pangocairo+perl+poppler+python27+rsvg+ruby+tcl+x11 graphviz @2.49.1_0+gdk_pixbuf+guile+java+lua+ming+pangocairo+perl+poppler+python27+rsvg+ruby+smyrna+tcl+x11 graphviz @2.49.1_0+gdk_pixbuf+guile+java+ming+pangocairo+perl+poppler+python27+rsvg+ruby+smyrna+tcl+x11 (active) graphviz @2.49.1_0+pangocairo+x11
comment:8 Changed 3 years ago by cooljeanius (Eric Gallager)
Cc: | cooljeanius added |
---|
comment:9 Changed 3 years ago by mascguy (Christopher Nielsen)
Cc: | mascguy added |
---|
comment:10 Changed 3 years ago by i3roly
hi,
when i install graphviz with smyrna, i simply (and only) add the +smyrna flag
i.e.
sudo port install graphviz +smyrna
since smyrna is a very powerful program, in spite of its primitive appearance, it will automatically install the appropriate packages.
you have way, way, too many graphviz variants installed. you should only need one. adding smyrna shouldn't affect the other programs (or so i'm assuming).
GagansMacPro:chapter 3 Gagan$ sudo port installed | grep graphviz graphviz @2.40.1_4+pangocairo+smyrna+x11 (active)
to verify smyrna is operating, you should call it on the command line and see a window in XQuartz
edit: oh i see, there's a 2.49 graphviz out. wow it's been some time! let me try it and follow-up.
edit2: working without issue. might even be slightly faster.
Changed 3 years ago by i3roly
Attachment: | Screenshot 2021-10-09 at 5.40.12 PM.png added |
---|
comment:11 Changed 3 years ago by cooljeanius (Eric Gallager)
ah ok, so smyrna is installed for me, it just doesn't work:
$ smyrna 2021-10-09 20:02:04.552 smyrna[74214:2021616] *** WARNING: Method userSpaceScaleFactor in class NSView is deprecated on 10.7 and later. It should not be used in new applications. Use convertRectToBacking: instead. freeglut (smyrna): failed to open display ':0' $
comment:12 Changed 3 years ago by i3roly
what version is that?
your active version seems very weird.
why can't you just install a pangocairo+x11+smyrna graphviz?
i dunno why it's using java, gdk, etc. i think if you can build against those, then yes you will probably have an issue.
i guess you may be going for a super-optimised version, which never crossed my mind, lol.
comment:13 Changed 3 years ago by i3roly
eric i'm just curious: are you trying to get smyrna to work *only* using the configuration you shared a few comments above?
did macports automatically add all of those packages to the command line? i just find those packages to be strange. i don't see why it would need perl, python, ruby and java...
are you interested in getting graphviz+smyrna to work, no matter what the options?
if so, just try
install port graphviz +smyrna -ming -gdk_pixbuf -lua -java -perl -poppler -python27 -rsvg -ruby -tcl
to see if it installs with just pangocairo and x11
comment:14 Changed 3 years ago by cooljeanius (Eric Gallager)
I selected those variants manually because I like to install my ports with maximum variants enabled in general when possible, just to see what works.
In the future, please Cc the port maintainer(s).