Trying to get compile psybnc on NAS. ipkg is default package manager in here. I've installed ncurses already, it's in /opt/lib (libncurses.so)
[\w] # ls /opt/lib | grep ncurses
libncurses.so
libncurses.so.5
libncurses.so.5.7
libncursesw.so
libncursesw.so.5
libncursesw.so.5.7
[\w] # file libncurses.so.5.7
libncurses.so.5.7: ELF 32-bit LSB shared object, ARM, version 1 (SYSV), dynamically linked, stripped
I added this path to /etc/profile
[\w] # echo $PATH
/bin:/sbin:/usr/bin:/usr/sbin:/opt/bin:/opt/sbin:/opt/lib
So trying to make menuconfig gives me this error
[\w] # make menuconfig
Initializing Menu-Configuration
[*] Running Conversion Tool for older psyBNC Data.
Using existent configuration File.
[*] Running Autoconfig.
System: Linux
Socket Libs: Internal.
Environment: Internal.
Time-Headers: in time.h and sys/time.h
Byte order: Big Endian.
IPv6-Support: Yes, general support. But no interface configured.
async-DNS-Support: Yes.
SSL-Support: No openssl found. Get openssl at www.openssl.org
Creating Makefile
[*] Creating Menu, please wait.
This needs the ncurses library. If it is not available, menuconf wont work. If you are using curses, use make menuconfig-curses instead.
make: *** [menuconfig] Error 1
Same goes for make menuconfig-curses
[\w] # make menuconfig-curses
Initializing Menu-Configuration using Curses
[*] Running Conversion Tool for older psyBNC Data.
Using existent configuration File.
[*] Running Autoconfig.
System: Linux
Socket Libs: Internal.
Environment: Internal.
Time-Headers: in time.h and sys/time.h
Byte order: Big Endian.
IPv6-Support: Yes, general support. But no interface configured.
async-DNS-Support: Yes.
SSL-Support: No openssl found. Get openssl at www.openssl.org
Creating Makefile
[*] Creating Menu, please wait.
This needs the curses library. If it is not available, menuconf wont work.
make: *** [menuconfig-curses] Error 1
Psybnc compiled ok, just wanna work with menuconfig instead of configuration file.
With a help of my FRIEND, I finally know what's happend.
First of all ncurses-dev need to be installed on NAS if you want to compile any package who have dependencies, you need headers of those dependencies and ncurses-dev packages have them
so
then go edit Makefile in you source directory and add CFLAGS like this:
this path is path of header files you need, that's why autoconf tools couldn't find them. but you need to put cflags to gcc as param, because autotools ingnores overrided variables...
so I just opened Makefile and added $(CCFLAGS) like param and that's it, now it works!!
The curses library is not installed, since you did not provide us with the information what kind of NAS (Model / Vendor) this is we cannot help you more in detail.
If there is a package of curses for the Distribution on that NAS of that Vendor you could install it.
Or you'd just use the config and a text editor.
Update
If you're sure you have setup the Libraries correctly you might try setting
LD_LIBRARY_PATH
manually to/opt/lib
. Also have a look at theMakefile
and make the corresponding ($CC) line more verbose.