0

I read mod_sftpd is not compiled by default. So, I tried to manually install proftpd-basic downloading it from here, following the steps described here but something went wrong. When I run sudo make I have this error:

msg.c: In function ‘sftp_msg_write_mpint’:

msg.c:449:12: error: dereferencing pointer to incomplete type ‘BIGNUM {aka const struct bignum_st}’

   if (mpint->neg) {

            ^~
Makefile:34: recipe for target 'msg.lo' failed

make[2]: *** [msg.lo] Error 1

make[2]: Leaving directory '/home/pi/proftpd-dfsg-1.3.5b/contrib/mod_sftp'

Makefile:41: recipe for target 'shared' failed

make[1]: *** [shared] Error 2

make[1]: Leaving directory '/home/pi/proftpd-dfsg-1.3.5b/modules'

Makefile:39: recipe for target 'modules' failed

make: *** [modules] Error 2

I tried to search for similar questions but I did not find anything related to raspberry

6
  • Did you try the version available from Raspbian? Does it not work?
    – joan
    Aug 22 '18 at 19:50
  • You should use the source packages from debian. These respect the build environment and will not produce errors about missing components.
    – Ingo
    Aug 23 '18 at 12:14
  • @joan in raspbian packages I founded only deb packages without the possibility of re-compile it. If I install it with 'apt install' mod_sftp is not installed
    – bit
    Aug 23 '18 at 15:11
  • @ingo as I wrote, I tried with debian proftpd source code, but when I run "sudo make" appears the error above
    – bit
    Aug 23 '18 at 15:13
  • Have a look in /etc/apt/sources.list. The repositories will probably start with deb. Duplicate those lines but replace deb with deb-src in the copies. That will make the source packages available. Remember that Debian uses particular versions because they have been tested to be compatible with the rest of the packages/libraries.
    – joan
    Aug 23 '18 at 15:17
1

You say you downloaded proftpd source and it seems you download it from the link here. But this is the wrong source for the source. As suggested in the comments you should use the sources from the debian repository because they have been tested to compile with debian. To install a source from the repository you use

rpi ~$ apt source proftpd-basic

But before doing it there is a little bit more to do. You can look at mpv error - could not get dispmanx for an example to install mpv from source but the procedure is exactly the same.

2
  • In my last comment I use exaclty the command sudo apt source proftpd-basic (with this output ). Before to run configure command, have I run rpi ~$ sudo apt build-dep mpv and rpi ~$ debuild -b -uc -us as mentioned in your link?
    – bit
    Aug 27 '18 at 14:52
  • @bit You should do the same steps but replace the word mpv with the word proftpd-basic.
    – Ingo
    Sep 3 '18 at 21:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.