Diagram drawing program for Mac?

Is it really so that there are no simple and free diagram drawing programs for Mac OS X? My needs would be greatly satified with something like dia, but I would prefer native OS X app, since I don’t have very good experiences from X applications I have tried (Gimp, Inkscape). Anyone?

This entry was posted in Internet and computers and tagged , , . Bookmark the permalink.

8 Responses to Diagram drawing program for Mac?

  1. Ilkka says:

    Hurray! I got dia working, and it actually seems to work pretty well. I used MacPorts to install it (“sudo port install dia”), and after three iterations of that, I had a working application! Before that, I had to resolve few cryptic error messages (some broken dependencies), and wonder how on earth the installation failed because of memory allocation problems (that is, 4 GB of RAM wasn’t enough):

    tclsh(89785,0x8025d720) malloc: *** mmap(size=65536) failed (error code=12)
    *** error: can’t allocate region
    *** set a breakpoint in malloc_error_break to debug

    So, it really was an open-source experience once again, but at least I got what I wanted :)

  2. Andrés says:

    Hi Ilkka,

    If you want to work with latex, i’ll recommend you something hardcore:
    IPE: http://tclab.kaist.ac.kr/ipe/

    I am using it at the moment to produce some diagrams, and they look good. It took some time to get used to its special user interaction “features”, but once I did it was quite fast. Its resulting pdf are beatifully scaled in my latex documents :)

    IPE for mac: http://naranja.umh.es/~atg/software-qt4.html
    Article on IPE: http://www.tug.org/pracjourn/2006-2/hlavacek/hlavacek.pdf

    Cheers,

  3. Ilkka says:

    Thanks, Andrés!

    The IPE looks very nice, and espcially the controls feels very handy for me. I have used to produce the diagrams to Latex document with dia, but this seems to be even more flexible for that.

  4. Matti says:

    Well, it’s not exactly free, but OmniGraffle is a GREAT program. I did install DiA too, but when I understood the power of good-looking presentations, I ended choosing OmniGraffle. Simple & super fast, and produces good looking stuff.

  5. Faiz says:

    Hi Ilka,

    How did you solve your problem for the port installation? I have been trying to overcome the port installation problem exactly like what you had (for teTeX) but still no success :-(

  6. Ilkka says:

    Hello Faiz, I think I got rid of that memory allocation problem just by trying the installation again, probably after a reboot. Then I did some internet search, here the error messages gave quite good pointers what to search for. I think the last point was to install the libXrandr. That instruction I found from some discussion forum.

    I dig the command line history a bit (I just learned that command history shows more than 500 last commands) and here is what I found (related to macports and dia installation):

    327 sudo port selfupdate
    328 sudo port install dia
    336 sudo port install dia
    338 sudo port clean --work py25-hashlib
    339 sudo port install xorg-libXrandr
    340 sudo port install dia

  7. Jon Watson says:

    I’m actually getting a very different error on Snow Leopard. I’ve pasted the output below. This happens when the process gets to installing libemf.

    Error: Target org.macports.build returned: shell command ” cd “/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_libemf/work/libEMF-1.0.3″ && /usr/bin/make -j2 all ” returned error 2
    Command output: Making all in include
    Making all in libEMF
    make[2]: Nothing to be done for `all’.
    make[2]: Nothing to be done for `all-am’.
    Making all in libemf
    if /bin/sh ../libtool –mode=compile /usr/bin/g++-4.2 -DHAVE_CONFIG_H -I. -I. -I../config -I../include -I/opt/local/include -O2 -arch x86_64 -D_REENTRANT -DPTHREADS -MT libemf.lo -MD -MP -MF “.deps/libemf.Tpo” -c -o libemf.lo libemf.cpp; \
    then mv -f “.deps/libemf.Tpo” “.deps/libemf.Plo”; else rm -f “.deps/libemf.Tpo”; exit 1; fi
    /usr/bin/g++-4.2 -DHAVE_CONFIG_H -I. -I. -I../config -I../include -I/opt/local/include -O2 -arch x86_64 -D_REENTRANT -DPTHREADS -MT libemf.lo -MD -MP -MF .deps/libemf.Tpo -c libemf.cpp -fno-common -DPIC -o .libs/libemf.o
    In file included from ../include/libEMF/wine/windef.h:16,
    from ../include/libEMF/emf.h:27,
    from libemf.h:31,
    from libemf.cpp:23:
    ../include/libEMF/wine/winnt.h:45:3: error: #error Unknown CPU architecture!
    ../include/libEMF/wine/winnt.h:1051:2: error: #error You need to define a CONTEXT for your CPU
    In file included from ../include/libEMF/wine/windef.h:16,
    from ../include/libEMF/emf.h:27,
    from libemf.h:31,
    from libemf.cpp:23:
    ../include/libEMF/wine/winnt.h:1054: error: expected initializer before ‘*’ token
    ../include/libEMF/wine/winnt.h:2294: error: ‘PCONTEXT’ does not name a type
    ../include/libEMF/wine/winnt.h:2307: error: ‘PCONTEXT’ has not been declared
    In file included from ../include/libEMF/emf.h:28,
    from libemf.h:31,
    from libemf.cpp:23:
    ../include/libEMF/wine/winbase.h:120: error: ‘PCONTEXT’ does not name a type
    ../include/libEMF/wine/winbase.h:1243: error: ‘CONTEXT’ has not been declared
    ../include/libEMF/wine/winbase.h:1377: error: expected ‘,’ or ‘…’ before ‘*’ token
    ../include/libEMF/wine/winbase.h:1377: error: ISO C++ forbids declaration of ‘CONTEXT’ with no type
    make[1]: *** [libemf.lo] Error 1
    make: *** [all-recursive] Error 1

    Error: The following dependencies failed to build: libemf popt
    Error: Status 1 encountered during processing.

  8. Nalin says:

    Hi All,

    This is an old post, but just incase it is useful, I too had problems installing Dia using MacPorts. However, an easy download for Mac OS X Snow Leopard is available at http://dia-installer.de/download/macosx.html in native .dmg format. It was simple and works like charm.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>