ellson / MOTHBALLED-graphviz

Moved to https://gitlab.com/graphviz/graphviz
Eclipse Public License 1.0
1.29k stars 256 forks source link

build fails linking when looking for 'aglexeof' and friends #63

Open ekg opened 9 years ago

ekg commented 9 years ago

I ran autogen, then configured as such:

./configure --prefix=/home/erik --enable-perl=no

make fails with the following error:

../../lib/cgraph/.libs/libcgraph.so: undefined reference to `aglexeof'
../../lib/cgraph/.libs/libcgraph.so: undefined reference to `aaglex'
../../lib/cgraph/.libs/libcgraph.so: undefined reference to `aagin'
../../lib/cgraph/.libs/libcgraph.so: undefined reference to `aglexinit'
../../lib/cgraph/.libs/libcgraph.so: undefined reference to `aglexbad'
../../lib/cgraph/.libs/libcgraph.so: undefined reference to `aagerror'
../../lib/gvc/.libs/libgvc.so: undefined reference to `agsetfile'

It looks like these are in libcgraph, which I have already installed. I'm confused what's going on.

ellson commented 9 years ago

Erik

Can you tell me what platform you are building on?

Also, if building from GIT sources, did you see any issues with yacc or lex (or bison, flex) processing? (These are pre-processed if you build from tar.gz sources, so as to avoid these toolchain dependencies.)

BTW, At that point in the build it is trying to link to those symbols in the libcraph.so in the build tree and not to any version that you may have previously installed.

John

On 10/24/2015 09:11 AM, Erik Garrison wrote:

I ran autogen, then configured as such:

|./configure --prefix=/home/erik --enable-perl=no |

|make| fails with the following error:

|../../lib/cgraph/.libs/libcgraph.so: undefined reference to aglexeof' ../../lib/cgraph/.libs/libcgraph.so: undefined reference toaaglex' ../../lib/cgraph/.libs/libcgraph.so: undefined reference to aagin' ../../lib/cgraph/.libs/libcgraph.so: undefined reference to aglexinit' ../../lib/cgraph/.libs/libcgraph.so: undefined reference to aglexbad' ../../lib/cgraph/.libs/libcgraph.so: undefined reference toaagerror' ../../lib/gvc/.libs/libgvc.so: undefined reference to `agsetfile' |

It looks like these are in libcgraph, which I have already installed. I'm confused what's going on.

— Reply to this email directly or view it on GitHub https://github.com/ellson/graphviz/issues/63.

ekg commented 9 years ago

I'm building on Ubuntu 15.04. I assumed it would be linking into the build tree, so this is confusing. I didn't catch any issues with yacc/lex or friends, but maybe there is a problem that ran past without my noticing it.

sergsb commented 8 years ago

I have the same error on:

Distributor ID: Ubuntu Description: Ubuntu 14.04.2 LTS Release: 14.04 Codename: trusty

When I try to make: ./autogen.sh --prefix=/home/mydir/graphviz --enable-perl=no

bastiandg commented 8 years ago

I get the same issue. With Ubuntu 14.04 and Debian Jessie.

In both cases this work around helped me:

git checkout 'master@{2014-04-13 00:00:00}' # checkout the last stable release
./autogen.sh && ./configure --prefix=/home/user/graphviz/ --enable-perl=no && make # compile
git checkout master # go back to the master
make clean 
./autogen.sh && ./configure --prefix=/home/user/graphviz/ --enable-perl=no && make # compile again
nanofrog commented 8 years ago

I've got the save error on win10 linux shell. the flex cmd may not generate lex.yy.c for target scan.c in /lib/cgraph/Makefile. then the scan.c is empty. so i change flex -i $(top_srcdir)/lib/cgraph/scan.l to flex -i -olex.yy.c $(top_srcdir)/lib/cgraph/scan.l and it works fine

lucaswiman commented 7 years ago

While investigating https://github.com/pygraphviz/pygraphviz/issues/111, I fixed this error in ubuntu 16.04 with apt-get -y install bison. The full build instructions are here: https://gist.github.com/lucaswiman/1f73a8371b1fe81a58f5dc7374f3b3b2

shigerufujita commented 7 years ago

Thank you all. I've got the same error on Raspbian GNU/Linux 8 (jessie) on Raspberry Pi 3.

I fixed this error by apt-get install bison apt-get install byacc apt-get install flex git clean -f ./autogen.sh ./configure --enable-perl=no make make install

and it works.

emden commented 7 years ago

Why is everyone building from the GIT source? If you just build from the source package, all of these issues are avoided.

JJ commented 5 years ago

@emden I guess it's due to the fact that newer graphviz versions are not available for old (as in LTS) versions of Ubuntu...

magneticnorth commented 5 years ago

Graphviz is now gitlab.com/graphviz/graphviz

It is likely that symbols like aagerror are not defined because actions in Makefile such as

/usr/bin/sed "s/yy/aag/g" < lex.yy.c | /usr/bin/sed '/extern.*isatty/d' > scan.c did not execute correctly. Possibly scan.c is an empty file. You'll have to dig in to find out what went wrong, e.g. make V=1 SCN

On Mon, Jul 8, 2019 at 12:32 PM Juan Julián Merelo Guervós < notifications@github.com> wrote:

@emden https://github.com/emden I guess it's due to the fact that newer graphviz versions are not available for old (as in LTS) versions of Ubuntu...

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/ellson/MOTHBALLED-graphviz/issues/63?email_source=notifications&email_token=AAVVNT5X2NMA6CX6GKUUZF3P6NTZHA5CNFSM4BSUBIZ2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODZNUM6I#issuecomment-509298297, or mute the thread https://github.com/notifications/unsubscribe-auth/AAVVNTYVFUBM7JOCWF2QWWTP6NTZHANCNFSM4BSUBIZQ .