Temat: ympd

Witam,
czy jest szansa na dodanie pakietu ympd do lede? Próbowałem sam to zrobić jednakże nie mam pojęcia jak zrobić plik

krypton@debian:~/lede1$ make package/ymdp/compile -j1 V=s
make[1]: Entering directory '/home/krypton/lede1'
make[1]: *** No rule to make target 'package/ymdp/compile'.  Stop.
make[1]: Leaving directory '/home/krypton/lede1'
/home/krypton/lede1/include/toplevel.mk:198: polecenia dla obiektu 'package/ymdp/compile' nie powiodły się
make: *** [package/ymdp/compile] Błąd 2
krypton@debian:~/lede1$

2

Odp: ympd

A zrobiłeś makefile dla tego pakietu (i to nie jest makefile który przychodzi z pakietem)?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: ympd

uuu. Nie wiedziałem, jak to zrobić??

4

Odp: ympd

Przykłady jak to wygląda znajdziesz w  źródłach openwrt. Każdy pakiet ma swój makefile z którego kompiluje się właściwa paczka. Czytaj też: https://wiki.openwrt.org/doc/devel/packages

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5

Odp: ympd

Witam, mam coś takiego

#
# Copyright (C) 2011 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#

include $(TOPDIR)/rules.mk

PKG_NAME:=ympd
PKG_VERSION:=
PKG_RELEASE:=1

include $(INCLUDE_DIR)/package.mk

define Package/ympd
    TITLE:=ympd
    SECTION:=utils
    CATEGORY:=Utilities
    URL:=http://ympd.org
    DEPENDS:=+libmpdclient +libpthread
endef

define Package/ympd/description
    MPD Web GUI - written in C, utilizing Websockets and Bootstrap/JS
endef

PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)


TARGET_CFLAGS += "-std=gnu99"
TARGET_LDFLAGS += -lpthread -lmpdclient

define Build/Prepare
    mkdir -p $(PKG_BUILD_DIR)
    $(CP) ./src/* $(PKG_BUILD_DIR)/
endef


define Package/ympd/install
    $(INSTALL_DIR) $(1)/bin
    $(INSTALL_BIN) $(PKG_BUILD_DIR)/ympd $(1)/bin/
endef

$(eval $(call BuildPackage,ympd))

6

Odp: ympd

Ten makefile oczekuje że źródła masz w podkatalogu src.

Masz katalogi package/ympd oraz package/ympd/src a w nim źródła?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

7

Odp: ympd

tak

8

Odp: ympd

Masz skompilowane całe sdk?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9

Odp: ympd

tak, jak w Twoim poradniku

10

Odp: ympd

Pokaż:

ls -al  package/ympd/*

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

11

Odp: ympd

krypton@debian:~/lede1$ ls -al  package/ympd/*
-rwxrwxrwx 1 krypton krypton  2539 mar 29 20:37 package/ympd/CMakeLists.txt
-rwxrwxrwx 1 krypton krypton   310 mar 29 20:37 package/ympd/Dockerfile
-rwxrwxrwx 1 krypton krypton 18011 mar 29 20:37 package/ympd/LICENSE
-rwxrwxrwx 1 krypton krypton   866 cze 28 16:30 package/ympd/Makefile
-rwxrwxrwx 1 krypton krypton  1687 mar 29 20:37 package/ympd/README.md
-rwxrwxrwx 1 krypton krypton  1250 mar 29 20:37 package/ympd/ympd.1

package/ympd/cmake:
razem 12
drwxrwxrwx 2 krypton krypton 4096 cze 28 17:01 .
drwxrwxrwx 7 krypton krypton 4096 cze 28 17:01 ..
-rwxrwxrwx 1 krypton krypton 1058 mar 29 20:37 FindLibMPDClient.cmake

package/ympd/contrib:
razem 28
drwxrwxrwx 2 krypton krypton 4096 cze 28 17:01 .
drwxrwxrwx 7 krypton krypton 4096 cze 28 17:01 ..
-rwxrwxrwx 1 krypton krypton 2728 mar 29 20:37 init.debian
-rwxrwxrwx 1 krypton krypton  122 mar 29 20:37 ympd.default
-rwxrwxrwx 1 krypton krypton  489 mar 29 20:37 ympd.freebsd
-rwxrwxrwx 1 krypton krypton  521 mar 29 20:37 ympd.service
-rwxrwxrwx 1 krypton krypton 2094 mar 29 20:37 ympd.spec

package/ympd/htdocs:
razem 40
drwxrwxrwx 6 krypton krypton  4096 cze 28 17:01 .
drwxrwxrwx 7 krypton krypton  4096 cze 28 17:01 ..
drwxrwxrwx 2 krypton krypton  4096 cze 28 17:01 assets
drwxrwxrwx 2 krypton krypton  4096 cze 28 17:01 css
drwxrwxrwx 2 krypton krypton  4096 cze 28 17:01 fonts
-rwxrwxrwx 1 krypton krypton 15690 mar 29 20:37 index.html
drwxrwxrwx 2 krypton krypton  4096 cze 28 17:01 js

package/ympd/src:
razem 248
drwxrwxrwx 2 krypton krypton   4096 cze 28 17:08 .
drwxrwxrwx 7 krypton krypton   4096 cze 28 17:01 ..
-rwxrwxrwx 1 krypton krypton   1100 mar 29 20:37 config.h.in
-rwxrwxrwx 1 krypton krypton   1314 mar 29 20:37 http_server.c
-rwxrwxrwx 1 krypton krypton   1084 mar 29 20:37 http_server.h
-rwxrwxrwx 1 krypton krypton   1951 mar 29 20:37 json_encode.c
-rwxrwxrwx 1 krypton krypton   1087 mar 29 20:37 json_encode.h
-rwxrwxrwx 1 krypton krypton   1004 cze 28 17:08 Makefile
-rwxrwxrwx 1 krypton krypton 169885 mar 29 20:37 mongoose.c
-rwxrwxrwx 1 krypton krypton   6653 mar 29 20:37 mongoose.h
-rwxrwxrwx 1 krypton krypton  26281 mar 29 20:37 mpd_client.c
-rwxrwxrwx 1 krypton krypton   3313 mar 29 20:37 mpd_client.h
-rwxrwxrwx 1 krypton krypton   5650 mar 29 20:37 ympd.c

package/ympd/tools:
razem 16
drwxrwxrwx 2 krypton krypton 4096 cze 28 17:01 .
drwxrwxrwx 7 krypton krypton 4096 cze 28 17:01 ..
-rwxrwxrwx 1 krypton krypton 2455 mar 29 20:37 mkdata.c
-rwxrwxrwx 1 krypton krypton 1542 mar 29 20:37 mkdata.pl

12

Odp: ympd

Co robią tam te wszystkie katalogi? Powinieneś mieć tam tylko plik Makefile i katalog src, a w nim wszystkie źródła.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

13

Odp: ympd

pliki posprzątane lecz nadal nie chce się kompilować

krypton@debian:~/lede1$ ls -al  package/ympd/*
-rwxrwxrwx 1 krypton krypton  866 cze 28 16:30 package/ympd/Makefile

package/ympd/src:
razem 244
drwxrwxrwx 2 krypton krypton   4096 cze 28 18:45 .
drwxrwxrwx 3 krypton krypton   4096 cze 28 18:51 ..
-rwxrwxrwx 1 krypton krypton   1100 mar 29 20:37 config.h.in
-rwxrwxrwx 1 krypton krypton   1314 mar 29 20:37 http_server.c
-rwxrwxrwx 1 krypton krypton   1084 mar 29 20:37 http_server.h
-rwxrwxrwx 1 krypton krypton   1951 mar 29 20:37 json_encode.c
-rwxrwxrwx 1 krypton krypton   1087 mar 29 20:37 json_encode.h
-rwxrwxrwx 1 krypton krypton 169885 mar 29 20:37 mongoose.c
-rwxrwxrwx 1 krypton krypton   6653 mar 29 20:37 mongoose.h
-rwxrwxrwx 1 krypton krypton  26281 mar 29 20:37 mpd_client.c
-rwxrwxrwx 1 krypton krypton   3313 mar 29 20:37 mpd_client.h
-rwxrwxrwx 1 krypton krypton   5650 mar 29 20:37 ympd.c

a błąd

krypton@debian:~/lede1$ make package/ymdp/compile -j1 V=s
make[1]: Entering directory '/home/krypton/lede1'
make[1]: *** No rule to make target 'package/ymdp/compile'.  Stop.
make[1]: Leaving directory '/home/krypton/lede1'
/home/krypton/lede1/include/toplevel.mk:198: polecenia dla obiektu 'package/ymdp/compile' nie powiodły się
make: *** [package/ymdp/compile] Błąd 2

14

Odp: ympd

Ale teraz w src nie masz makefile tego od pakietu...

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

15

Odp: ympd

przywróciłem makefile i nadal nic.


spróbuję jeszcze wieczorrem

16

Odp: ympd

Niestety, nadal nie wiem dlaczego nie chce się dobrze skompilować. Porzucam temat. Jeśli ktoś posiada wersję na ar7xx pod lede będę wdzięczny za udostępnienie.

17

Odp: ympd

Spakuj cały katalog ympd który zrobiłeś i wystaw gdzieś to.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

18

Odp: ympd

witam załączam pliki:

https://drive.google.com/open?id=1TGMss … VFXhVLBWSb

pliki z katalogu htdocs już są wrzucone do build/assets.c

19

Odp: ympd

Ale żeś pomieszał wszystko. Zauważyłeś że źródła ympd wymagają cmake do kompilacji a nie zwykłego make?
Tu masz mejka napisanego przeze mnie od początku z którego kompiluje się pakietu na lede 17.01: https://dl.eko.one.pl/test/ympd/ Kompiluje się, sprawdzałem. Porównaj mój z tym co zrobiłeś.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

20 (edytowany przez krypton_pl 2018-06-29 13:28:45)

Odp: ympd

Witam, dziękuje widzę, że to dużo prostsze niż myślałem.

Szablon Makefile też się przyda