Udało się w końcu. Flaga:
TARGET_CXXFLAGS += -std=c++11
w Makefile załatwia sprawę.
Musiałem tylko dodać
do jednego pliku źródłowego z powodu błędu. Widocznie ten kompilator nie ładuje domyślnie tej biblioteki. Pewnie jakaś flaga w Makefile by to załatwiła :-)
Na routerze docelowym WL500gp Chaos Calmer 15.05.1
root@OpenWrt:~# opkg install /tmp/ebusd_3.3.3-1_brcm47xx.ipk
Installing ebusd (3.3.3-1) to root...
Collected errors:
* satisfy_dependencies_for: Cannot satisfy the following dependencies for ebusd:
* argp-standalone *
* opkg_install_cmd: Cannot install package ebusd.
Wywaliłem z Makefile ̶+̶a̶r̶g̶p̶-̶s̶t̶a̶n̶d̶a̶l̶o̶n̶e̶
DEPENDS:=+libpthread +librt +libstdcpp ̶+̶a̶r̶g̶p̶-̶s̶t̶a̶n̶d̶a̶l̶o̶n̶e̶
,skompilowałem paczkę i działa. Chyba też CC ma libargp wkompilowane, skoro niedostępne w paczkach.
root@OpenWrt:~# opkg install /tmp/ebusd_3.3.3-1_brcm47xx.ipk
Installing ebusd (3.3.3-1) to root...
Installing libstdcpp (4.8-linaro-1) to root...
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm47xx/legacy/packages/base/libstdcpp_4.8-linaro-1_brcm47xx.ipk.
Configuring libstdcpp.
Configuring ebusd.
root@OpenWrt:~# ebusd -f --scanconfig -d /dev/ttyUSB0
2019-10-01 08:28:49.400 [main notice] ebusd 3.3.22375a2 started with auto scan
2019-10-01 08:28:49.840 [bus notice] bus started with own address 31/36
2019-10-01 08:28:49.862 [bus notice] signal acquired
Jeszcze dla porządku, wklejam strukturę i pliki dla kompilacji paczki pod CC
chaos_calmer/package/ebusd/
├── Makefile
└── patches
└── 100-missing-include-stdlib.patch
Makefile
include $(TOPDIR)/rules.mk
PKG_NAME:=ebusd
PKG_RELEASE:=1
PKG_VERSION:=3.3
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/john30/ebusd.git
PKG_SOURCE_DATE:=2019-08-15
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_VERSION:=3926e9cbf81457cd8cbb3b5985aae6445560d8e2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_FIXUP:=autoreconf
include $(INCLUDE_DIR)/package.mk
define Package/ebusd
SECTION:=net
CATEGORY:=Network
TITLE:=eBUS daemon
URL:=https://github.com/john30/ebusd
DEPENDS:=+libpthread +librt +libstdcpp
endef
TARGET_CXXFLAGS += -std=c++11
define Package/ebusd/install
<------>$(INSTALL_DIR) $(1)/usr/bin
<------>$(INSTALL_BIN) $(PKG_BUILD_DIR)/src/ebusd/ebusd $(1)/usr/bin
<------>$(INSTALL_BIN) $(PKG_BUILD_DIR)/src/tools/{ebusctl,ebusfeed} $(1)/usr/bin
endef
$(eval $(call BuildPackage,ebusd)).
100-missing-include-stdlib.patch
diff --git a/src/lib/utils/httpclient.h b/src/lib/utils/httpclient.h
index 3648299..0ab1ae9 100755
--- a/src/lib/utils/httpclient.h
+++ b/src/lib/utils/httpclient.h
@@ -22,6 +22,7 @@
#include <unistd.h>
#include <cstdint>
#include <string>
+#include <stdlib.h>
#include "lib/utils/tcpsocket.h"
A tu paczka, może komuś sie przyda. Jednak zachęcam do własnego kompilowana. Mega przygoda i wiedza. Hehe.
https://megawrzuta.pl/download/455151f1 … c68da.html
Dziękuję za cierpliwość i pomoc. Dla ciekawych projektem eBus - Domoticz postaram sie zamieszczać tu moje zmagania z tematem.