101

Odp: Kompilacja modułów openwrt - świerzak

Ubuntu ten plik to:

Try: /home/local/build/OpenWrt-SDK-ar71xx-for-linux-i486-gcc-4.6-linaro_uClibc-0.9.33.2/staging_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2//bin/mips-openwrt-linux-uclibc-gcc
Line: /home/local/build/OpenWrt-SDK-ar71xx-for-linux-i486-gcc-4.6-linaro_uClibc-0.9.33.2/staging_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2//bin/mips-openwrt-linux-uclibc-gcc  cmake_bootstrap_23393_test.c -o cmake_bootstrap_23393_test
----------  file   -----------------------

#ifdef __cplusplus
# error "The CMAKE_C_COMPILER is set to a C++ compiler"
#endif

#include<stdio.h>

#if defined(__CLASSIC_C__)
int main(argc, argv)
  int argc;
  char* argv[];
#else
int main(int argc, char* argv[])
#endif
{
  printf("%d%c", (argv != 0), (char)0x0a);
  return argc-1;
}

------------------------------------------
cc1: note: someone does not honour COPTS correctly, passed 0 times
./cmake_bootstrap_23393_test: 1: ./cmake_bootstrap_23393_test: Syntax error: "(" unexpected
Test produced non-zero return code

102

Odp: Kompilacja modułów openwrt - świerzak

Ściągnąłeś sdk które jest 64bitowe a uruchamiasz to na 32bitowym systemie?

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

103

Odp: Kompilacja modułów openwrt - świerzak

opss... hmm

104

Odp: Kompilacja modułów openwrt - świerzak

Po prostu ściągnij źródła openwrt i sobie skompiluj całość.

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

105

Odp: Kompilacja modułów openwrt - świerzak

Kompiluje nowsza wersję tvheadend dla BB i wywala mi taki błąd:

aker/staging_dir/host/var --sbindir=/opt/barrier_breaker/staging_dir/host/bin ; fi )
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for perl... /usr/bin/perl
checking for perl >= 5.8.1... 5.14.2
checking for XML::Parser... configure: error: XML::Parser perl module is required for intltool
make[2]: *** [/opt/barrier_breaker/build_dir/host/intltool-0.40.6/.configured] Error 1
make[2]: Leaving directory `/opt/barrier_breaker/feeds/packages/libs/intltool'
make[1]: *** [package/feeds/packages/intltool/host/compile] Error 2
make[1]: Leaving directory `/opt/barrier_breaker'
make: *** [package/tvheadend/compile] Error 2

Gdzie ten perl się znajduje?

106

Odp: Kompilacja modułów openwrt - świerzak

Zainstaluj sobie na komputerze libxml-perl czy jak tam się paczka nazywa u ciebie w dystrybucji.

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

107

Odp: Kompilacja modułów openwrt - świerzak

Zadziałało, ale wiesz może czemu przy kompilacji tvheadenda kompilator ciągle mi kompiluje wersję 3.4patch1? Gdzie to usunąć, żeby kompilowało tą moją?

108

Odp: Kompilacja modułów openwrt - świerzak

A co masz w makefile ustawione?

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

109

Odp: Kompilacja modułów openwrt - świerzak

Ustawione mam PKG_VERSION:=3.6. W menuconfig mam x2 tvheadend i nie mogę tylko 1 zaznaczyć. I zamiast kompilować to moje to kompiluje jakąś wersję, która jest gdzieś ukryta, tylko nie wiem gdzie ona jest i jak ją usunąć.

110

Odp: Kompilacja modułów openwrt - świerzak

Jeszcze wyżej. Tam gdzie jest url skąd się ściągają źrodła.

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

111

Odp: Kompilacja modułów openwrt - świerzak

Cały makefile

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

include $(TOPDIR)/rules.mk

PPKG_NAME:=tvheadend
PKG_DATE:="20140914"
PKG_VERSION:=3.6
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=git://github.com/tvheadend/tvheadend.git
PKG_SOURCE_VERSION:=819627ecc7db69537134ff01e946992a9ff631ca7

PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz

PKG_VERSION:=$(PKG_DATE)-$(PKG_SOURCE_VERSION)
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_SOURCE_VERSION)

PKG_USE_MIPS16:=0

include $(INCLUDE_DIR)/package.mk

define Package/tvheadend
  SECTION:=multimedia
  CATEGORY:=Multimedia
  TITLE:=Tvheadend is a TV streaming server for Linux
  DEPENDS:=+libcurl +libopenssl +librt +zlib +TVHEADEND_AVAHI_SUPPORT:libavahi-client
  URL:=https://tvheadend.org/
endef

define Package/tvheadend/description
  Tvheadend is a TV streaming server for Linux supporting DVB, ATSC, IPTV,
  and Analog video (V4L) as input sources.
  Can be used as a backend to Showtime, XBMC and various other clients.
endef

define Package/tvheadend/config
  menu "Configuration"
  depends on PACKAGE_tvheadend
  source "$(SOURCE)/Config.in"
  endmenu
endef

ifeq ($(CONFIG_TVHEADEND_CWC_SUPPORT),)
  CONFIGURE_ARGS += --disable-cwc
endif

ifeq ($(CONFIG_TVHEADEND_V4L_SUPPORT),)
  CONFIGURE_ARGS += --disable-v4l
endif

ifeq ($(CONFIG_TVHEADEND_LINUXDVB_SUPPORT),)
  CONFIGURE_ARGS += --disable-linuxdvb
endif

ifeq ($(CONFIG_TVHEADEND_DVBSCAN_SUPPORT),)
  CONFIGURE_ARGS += --disable-dvbscan
endif

ifeq ($(CONFIG_TVHEADEND_AVAHI_SUPPORT),)
  CONFIGURE_ARGS += --disable-avahi
else
  CONFIGURE_ARGS += --enable-avahi
endif

CONFIGURE_ARGS += \
    --release \
    --enable-bundle

define Package/tvheadend/install
    $(INSTALL_DIR) $(1)/etc/tvheadend
    $(INSTALL_DIR) $(1)/etc/init.d
    $(INSTALL_BIN) ./files/tvheadend.init $(1)/etc/init.d/tvheadend
    $(INSTALL_DIR) $(1)/lib/upgrade/keep.d
    $(INSTALL_DATA) ./files/tvheadend.upgrade $(1)/lib/upgrade/keep.d/tvheadend
    $(INSTALL_DIR) $(1)/usr/bin
    $(INSTALL_BIN) $(PKG_BUILD_DIR)/build.linux/tvheadend $(1)/usr/bin/
endef

$(eval $(call BuildPackage,tvheadend))

112

Odp: Kompilacja modułów openwrt - świerzak

Ściąga ci z repo tvheadend wersję 819627ecc7db69537134ff01e946992a9ff631ca7. Która to jest to sobie zobacz po changelogu. 3.6 to tylko oznaczenie pod którym lokalnie będzie to zapisane.

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

113

Odp: Kompilacja modułów openwrt - świerzak

To jest właśnie wersja 3.6, z ostatnimi poprawkami. Problemem nie jest mój makefile, tylko to, że gdzieś w plikach jest wersja 3.4patch1, której nie umiem usunąć. Dlatego w menuconfig mam 2x tvheadend do zaznaczenia.

114

Odp: Kompilacja modułów openwrt - świerzak

A, o to chodzi. No proste, w trunku masz tvheadend 3.4, a ty zamiast zmodyfikować tylko ten makefile to dołożyłeś swoje i masz podwójnie.

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

115

Odp: Kompilacja modułów openwrt - świerzak

Zmodyfikowałbym, tylko że nie wiem gdzie znajdują się pliki od tej wersji 3.4. Trochę jest inaczej niż w AA.

116

Odp: Kompilacja modułów openwrt - świerzak

W oldpackages/multimedia/tvheadend. Zwykłe wyszukiwanie plików by ci to powiedziało.

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

117

Odp: Kompilacja modułów openwrt - świerzak

A ten oldpackages jest w którym katalogu? Jedynie znalazłem go w bin, ale tam jest już skompilowany tvheadend3.4.

118

Odp: Kompilacja modułów openwrt - świerzak

W katralogu  feeds. Naprawdę używaj wyszukiwarki plików...

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

119

Odp: Kompilacja modułów openwrt - świerzak

Ok, zmieniłem tam wersje tvheadend'a i teraz:

Applying ./patches/001-fix_Makefile_VFP_CFLAGS.patch using plaintext: 
can't find file to patch at input line 3
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|--- a/Makefile
|+++ b/Makefile
--------------------------
No file to patch.  Skipping patch.
patch unexpectedly ends in middle of line
1 out of 1 hunk ignored
Patch failed!  Please fix ./patches/001-fix_Makefile_VFP_CFLAGS.patch!
make[2]: *** [/opt/barrier_breaker/build_dir/target-mips_34kc_uClibc-0.9.33.2/tvheadend-3.6/.prepared_d47273e0d84c9767a4fcc5a9f2bea844] Error 1
make[2]: Leaving directory `/opt/barrier_breaker/feeds/oldpackages/multimedia/tvheadend'
make[1]: *** [package/feeds/oldpackages/tvheadend/compile] Error 2
make[1]: Leaving directory `/opt/barrier_breaker'
make: *** [package/tvheadend/compile] Error 2

Jak mogę naprawić ten patch?

120

Odp: Kompilacja modułów openwrt - świerzak

A teraz masz po prostu łatki które nie chcą się nakładać na tą wersję co masz i musisz sobie takie łatki poprawić. Albo je wywalić jak nie są już potrzebne.

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

121

Odp: Kompilacja modułów openwrt - świerzak

Usunąłem je i teraz znowu jakieś cyrki:

make[3]: *** No targets specified and no makefile found.  Stop.
make[3]: Leaving directory `/opt/barrier_breaker/build_dir/target-mips_34kc_uClibc-0.9.33.2/tvheadend-3.6'
make[2]: *** [/opt/barrier_breaker/build_dir/target-mips_34kc_uClibc-0.9.33.2/tvheadend-3.6/.built] Error 2
make[2]: Leaving directory `/opt/barrier_breaker/feeds/oldpackages/multimedia/tvheadend'
make[1]: *** [package/feeds/oldpackages/tvheadend/compile] Error 2
make[1]: Leaving directory `/opt/barrier_breaker'
make: *** [package/tvheadend/compile] Error 2

122

Odp: Kompilacja modułów openwrt - świerzak

Na pierwszy rzut oka - to co się pobrało i rozpakowało wcale nie masz w /opt/barrier_breaker/build_dir/target-mips_34kc_uClibc-0.9.33.2/tvheadend-3.6

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

123

Odp: Kompilacja modułów openwrt - świerzak

No tak. Utworzyło mi tam 2 katalogi. Pierwszy to: tvheadend-3.6, w którym nic nie ma oraz drugi tvheadend-0ac8cdcf832953451f924a1ad03e502618562e69, w którym jak mniemam są źródła tvheadend.

124

Odp: Kompilacja modułów openwrt - świerzak

PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_SOURCE_VERSION) zmień tak żeby dobrze wskazywał lub go wywal.

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

125

Odp: Kompilacja modułów openwrt - świerzak

Nie mam tego. Obecny makefile

#
# Copyright (C) 2012 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:=tvheadend
PKG_VERSION:=0ac8cdcf832953451f924a1ad03e502618562e69
PKG_RELEASE:=0.1
PKG_SOURCE_VERSION:=0ac8cdcf832953451f924a1ad03e502618562e69
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
PKG_SOURCE_URL:=git://github.com/tvheadend/tvheadend.git


PKG_USE_MIPS16:=0

include $(INCLUDE_DIR)/package.mk

define Package/tvheadend
  SECTION:=multimedia
  CATEGORY:=Multimedia
  TITLE:=Tvheadend is a TV streaming server for Linux
  DEPENDS:=+libcurl +libopenssl +librt +zlib +TVHEADEND_AVAHI_SUPPORT:libavahi-client
  URL:=https://tvheadend.org/
endef

define Package/tvheadend/description
  Tvheadend is a TV streaming server for Linux supporting DVB, ATSC, IPTV,
  and Analog video (V4L) as input sources.
  Can be used as a backend to Showtime, XBMC and various other clients.
endef

define Package/tvheadend/config
  menu "Configuration"
  depends on PACKAGE_tvheadend
  source "$(SOURCE)/Config.in"
  endmenu
endef

ifeq ($(CONFIG_TVHEADEND_CWC_SUPPORT),)
  CONFIGURE_ARGS += --disable-cwc
endif

ifeq ($(CONFIG_TVHEADEND_V4L_SUPPORT),)
  CONFIGURE_ARGS += --disable-v4l
endif

ifeq ($(CONFIG_TVHEADEND_LINUXDVB_SUPPORT),)
  CONFIGURE_ARGS += --disable-linuxdvb
endif

ifeq ($(CONFIG_TVHEADEND_DVBSCAN_SUPPORT),)
  CONFIGURE_ARGS += --disable-dvbscan
endif

ifeq ($(CONFIG_TVHEADEND_AVAHI_SUPPORT),)
  CONFIGURE_ARGS += --disable-avahi
else
  CONFIGURE_ARGS += --enable-avahi
endif

CONFIGURE_ARGS += \
    --release \
    --enable-bundle

define Package/tvheadend/install
    $(INSTALL_DIR) $(1)/etc/tvheadend
    $(INSTALL_DIR) $(1)/etc/init.d
    $(INSTALL_BIN) ./files/tvheadend.init $(1)/etc/init.d/tvheadend
    $(INSTALL_DIR) $(1)/lib/upgrade/keep.d
    $(INSTALL_DATA) ./files/tvheadend.upgrade $(1)/lib/upgrade/keep.d/tvheadend
    $(INSTALL_DIR) $(1)/usr/bin
    $(INSTALL_BIN) $(PKG_BUILD_DIR)/build.linux/tvheadend $(1)/usr/bin/
endef

$(eval $(call BuildPackage,tvheadend))

Mam poprawić linię PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION)?