On Oct 3, 2011, at 4:05 PM, mrivera wrote: > michael-riveras-computer:/usr/local/bin michaelrivera$ which bison > /usr/bin/bison > michael-riveras-computer:/usr/local/bin michaelrivera$ ls > bison yacc Ah, so you successfully installed the new bison, but the old bison is still getting called. What does your PATH look like? Try this command: printenv PATH This is a list of directories, separated by colons, that the shell searches for binaries to run. It will run the binary from the first directory in which it finds it. Your PATH likely looks something like this: /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin so the shell will always run the bison in /usr/bin, even though you installed a new one in /usr/local/bin. You can fix this easily by putting the /usr/local/bin directory first, which you can do by running this command: PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin (If there's other stuff before or after, like this: /opt/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ don't touch that other stuff when you reset PATH: PATH=/opt/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11/bin ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ) If you want this to be permanent, you should modify the command that sets PATH into your .bash_profile file in your home directory. Chip