Compile OpenWRT package for RUT956

I’ve downloaded an OpeWrt package (ffmpeg) and wanted to compile to get a .ipk file I could then install, but when I follow the “ipk example” readme file instructions I get a “no rules for” message with <make package/ffmpeg/{clean/compile}>

I have FFMPEG in a directory in /package/multimedia and being somewhat ignorant to the entire build process, I have included complete path and just a /package reference and I get the same error. If I just from the ffmpeg directory I also get a no rules error, along with a “package.mk” doesn’t exist. That clearly is because the include directory isn’t properly referenced.

In the menuconfig I marked to include ffmpeg in the full build, and when I do that I get;

“make[3] -C package/multimedia/ffmpeg compile
ERROR: package/multimedia/ffmpeg failed to build (build variant: full).
make -r world: build failed. Please re-run make with -j1 V=s or V=sc for a higher verbosity level to see what’s going on
make: *** [/home/unsername/Teltonika_Firmware/rutos-ramips-rut9m-sdk/include/toplevel.mk:249: world] Error 1”

This is the same error that when I run it with verbosity I get the no rules message.

I am sorry for the long winded explanation, but I was hoping to answer as many questions as I could in advance.

Any help is greatly appreciated.

You should ask this question on OpenWRT forums, not here.

Hello,

Since you seem to be trying to install a custom package on the RUT956, there are a few things I’d like to mention:

  1. The RUT956 has 16MB of flash memory available; there could be a high chance that the package simply won’t fit in the memory of the device.
  2. To install custom packages (or at least attempt to install them), please follow these steps:
  • Access the device via SSH → Command Line Interfaces - Teltonika Networks Wiki
  • Edit the Custom Feeds file to contain the repository of the package by entering vi /etc/opkg/customfeeds.conf → Press “i” to start editing → Once done editing, press ESC and write :wq
  • Lastly, use opkg update and opkg install <packagename> to install the updated package

When it comes to custom packages, we cannot promise that they will function properly within our devices.

Regards,
M.

I understand, and thank you. The package from OpenWrt repository finds an error in the dependencies with the kernel version. This is why I was hoping to compile from source. As far as available memory goes, I agree, this will be tight, but options seem limited. Anything I would try to script in Python wants OpenCV which is massive, comparatively speaking. What I need to do is capture a frame of a RTSP (video camera) stream. My other option is to use a camera that does that internally, but options are limited, and everything must be C1D2 Hazloc or it’s a bust.

Hello,

As we don’t usually provide support with queries related to Custom SDK building or custom scripts/packages, I’d still like to provide some suggestions.

As mentioned already right above, you can try looking into compiling a custom SDK: Software Development Kit - Teltonika Networks Wiki

And working around the errors that way? This depends on your knowledge, of course, but I feel like this could work. Perhaps editing the ffmpeg config a little so the end result produces a smaller binary would also help out here. Just thinking a little more about it, perhaps uploading files directly to an HTTP server would also work?

Final suggestion would be to look into getting a device that either:

  1. Has more flash memory
  2. Has USB support, allowing you to expand the flash memory where you can then store files.

Regards,
M.