Please take a look at what's appearing in terminal when I enter 'make' and advise:
~/Downloads/Editors/hexcompare-1.0.4/hexcompare-1.0.4 > sudo make
[sudo] password for ron:
cc -O3 -Wall -Wextra -pedantic -Wformat-security -std=gnu89 -o hexcompare main.c gui.c -lncurses
In file included from main.c:18:0:
gui.h:19:20: fatal error: curses.h: No such file or directory
#include <curses.h>
^
compilation terminated.
In file included from gui.c:16:0:
gui.h:19:20: fatal error: curses.h: No such file or directory
#include <curses.h>
^
compilation terminated.
make: *** [hexcompare] Error 1
This is what's in the directory. Note, I removed file with .dos extension, thinking it was confusing 'make':
~/Downloads/Editors/hexcompare-1.0.4/hexcompare-1.0.4 > ls
general.h gui.c gui.h main.c Makefile README
Any advice will be appreciated. This is my first use of 'make' so my apologies if it's something obvious.
Thanks!
System Information:
Linux Mint, Rosa
Anything else needed to troubleshoot -- please ask.
Hello RonCam, this is not related to hexcompare itself, but rather to your environment. From your output I see that you simply miss the curses header. "Curses" is a library required by HexCompare for all its terminal handling. I don't know what Linux distribution you use, but chances are that it comes with some kind of package manager that should allow you to install a package named "ncurses-dev" (or something similar), which will expose a curses header. Then, the compilation should go fine. Let us know :)
Hi Mateurs, I have Linux Mint, Rosa -- a derivative of Ubuntu.
So far the closest I can find is libncurses5-dev, in developer's libraries for ncurses. I will look for a closer match, but if not found, will load this and see what happens.
OK, just saw your note about the library that looks good. Will proceed now.
Last edit: RonCam 2016-03-01
libncurses5-dev sounds perfect - I'm pretty sure this will be it.
apt-get install libncurses5-dev
OK, very good. The one without the '-dev' was preinstalled. Now both are.
:-) Many thanks! Hexcompare now appears in the directory.
I gather from your docs, that you just run it from anywhere, in terminal.
Will post again if there's a need.
After a bit of searching, I'll place it into usr (Unix system resources) under local (locally compiled utility). If you think this unwise, please let me know. As I mentioned, this was my first user of 'make'. Thanks again for the assistance!
technically it doesn't really matter where you put your executable, as long as it is somewhere that is part of your $PATH. myself, I like storing my custom-built executables in $HOME/bin/ so it never messes up with the system's package manager (and I append $HOME/bin to my $PATH of course). but ultimately it's merely a question of personal feeling and habit, so your choice is as good as any other :)