lxde lxterminal cross-compile failure - openwrt

I am using xorg/lxde on a custom openwrt (x86_64) distribution. Lxterminal (0.3.0, 0.3.2) used to compile on a previous (r50108) version, but not on openwrt trunk.
It hangs in a repetive loop creating /po files. Ie;
make[5]: Entering directory `/home/rossb/OpenWrt/x86_64/r8210/trunk/build_dir/target-x86_64_glibc/lxterminal-0.3.2/po'
cd .. \
&& CONFIG_FILES=po/Makefile.in CONFIG_HEADERS= CONFIG_LINKS= \
/bin/sh ./config.status
config.status: creating po/Makefile.in
config.status: executing depfiles commands
config.status: executing default-1 commands
make[5]: Leaving directory `/home/rossb/OpenWrt/x86_64/r8210/trunk/build_dir/target-x86_64_glibc/lxterminal-0.3.2/po'
make[5]: Entering directory `/home/rossb/OpenWrt/x86_64/r8210/trunk/build_dir/target-x86_64_glibc/lxterminal-0.3.2/po'
cd .. \
&& CONFIG_FILES=po/Makefile.in CONFIG_HEADERS= CONFIG_LINKS= \
/bin/sh ./config.status
config.status: creating po/Makefile.in
config.status: executing depfiles commands
config.status: executing default-1 commands
make[5]: Leaving directory `/home/rossb/OpenWrt/x86_64/r8210/trunk/build_dir/target-x86_64_glibc/lxterminal-0.3.2/po'
make[5]: Entering directory `/home/rossb/OpenWrt/x86_64/r8210/trunk/build_dir/target-x86_64_glibc/lxterminal-0.3.2/po'
cd .. \
&& CONFIG_FILES=po/Makefile.in CONFIG_HEADERS= CONFIG_LINKS= \
/bin/sh ./config.status
config.status: creating po/Makefile.in
config.status: executing depfiles commands
config.status: executing default-1 commands
make[5]: Leaving directory `/home/rossb/OpenWrt/x86_64/r8210/trunk/build_dir/target-x86_64_glibc/lxterminal-0.3.2/po'
make[5]: Entering directory `/home/rossb/OpenWrt/x86_64/r8210/trunk/build_dir/target-x86_64_glibc/lxterminal-0.3.2/po'
..endlessly, as if some done stamp is missing.
I have no clue how to debug this.
Here is config.log: https://www.rossco.org/Downloads/OpenWrt/config.log
Anybody have any insight?
Thanks;
Bill

If you see the config.log, it says
conftest.c:26:37: fatal error: CoreFoundation/CFLocale.h: No such file or directory
compilation terminated.
Which means your package has dependency on the package hosting "CFLocale.h" header file.

Related

How to build open3d from source on l4t-base:r32.5.0 IMG?

I've been trying to build open3d from source on the l4t-base:r32.5.0 IMG from NVIDIA for quite some time now and have basically searched the whole internet for a script/guide, but I can't seem to find anything or get it to work myself.
Following the exact steps stated on http://www.open3d.org/docs/release/arm.html I get the following output while running the following Dockerfile
Dockerfile
FROM dustynv/ros:foxy-ros-base-l4t-r32.5.0
WORKDIR /workspace
##########################
### CMAKE INSTALLATION ###
##########################
RUN wget https://github.com/Kitware/CMake/releases/download/v3.20.6/cmake-3.20.6-linux-aarch64.tar.gz
RUN tar -v -xzf cmake-3.20.6-linux-aarch64.tar.gz
RUN mv cmake-3.20.6-linux-aarch64 cmake
RUN echo "alias cmake='/workspace/cmake/bin/cmake'" >> /root/.bashrc
RUN source /root/.bashrc && cmake --version
#################################
### OPEN3D 0.13.0 INSTALLTION ###
#################################
RUN wget https://github.com/isl-org/Open3D/archive/refs/tags/v0.13.0.tar.gz
RUN tar -v -xzf v0.13.0.tar.gz
RUN mv Open3D-0.13.0 open3d
RUN apt-get update && apt-get install xorg-dev libglu1-mesa-dev -y
RUN cd open3d && mkdir build && cd build && \
/workspace/cmake/bin/cmake \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_SHARED_LIBS=ON \
-DBUILD_CUDA_MODULE=OFF \
-DBUILD_GUI=OFF \
-DBUILD_TENSORFLOW_OPS=OFF \
-DBUILD_PYTORCH_OPS=OFF \
-DBUILD_UNIT_TESTS=ON \
-DCMAKE_INSTALL_PREFIX=~/open3d_install \
-DPYTHON_EXECUTABLE=/usr/bin/python3 \
..
ErrorLog
Performing C SOURCE FILE Test CMAKE_HAVE_LIBC_PTHREAD failed with the following output:
Change Dir: /workspace/open3d/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_d15b1/fast && /usr/bin/make -f CMakeFiles/cmTC_d15b1.dir/build.make CMakeFiles/cmTC_d15b1.dir/build
make[1]: Entering directory '/workspace/open3d/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_d15b1.dir/src.c.o
/usr/bin/cc -DCMAKE_HAVE_LIBC_PTHREAD -fPIE -o CMakeFiles/cmTC_d15b1.dir/src.c.o -c /workspace/open3d/build/CMakeFiles/CMakeTmp/src.c
Linking C executable cmTC_d15b1
/workspace/cmake/bin/cmake -E cmake_link_script CMakeFiles/cmTC_d15b1.dir/link.txt --verbose=1
/usr/bin/cc CMakeFiles/cmTC_d15b1.dir/src.c.o -o cmTC_d15b1
CMakeFiles/cmTC_d15b1.dir/src.c.o: In function `main':
src.c:(.text+0x48): undefined reference to `pthread_create'
src.c:(.text+0x50): undefined reference to `pthread_detach'
src.c:(.text+0x58): undefined reference to `pthread_cancel'
src.c:(.text+0x64): undefined reference to `pthread_join'
src.c:(.text+0x74): undefined reference to `pthread_atfork'
collect2: error: ld returned 1 exit status
CMakeFiles/cmTC_d15b1.dir/build.make:98: recipe for target 'cmTC_d15b1' failed
make[1]: *** [cmTC_d15b1] Error 1
make[1]: Leaving directory '/workspace/open3d/build/CMakeFiles/CMakeTmp'
Makefile:127: recipe for target 'cmTC_d15b1/fast' failed
make: *** [cmTC_d15b1/fast] Error 2
Source file was:
#include <pthread.h>
static void* test_func(void* data)
{
return data;
}
int main(void)
{
pthread_t thread;
pthread_create(&thread, NULL, test_func, NULL);
pthread_detach(thread);
pthread_cancel(thread);
pthread_join(thread, NULL);
pthread_atfork(NULL, NULL, NULL);
pthread_exit(NULL);
return 0;
}
Looking for a ASM_NASM compiler failed with the following output:
-- The ASM_NASM compiler identification is unknown
-- Didn't find assembler
CMake Error at CMakeLists.txt:2 (project):
No CMAKE_ASM_NASM_COMPILER could be found.
Tell CMake where to find the compiler by setting either the environment
variable "ASM_NASM" or the CMake cache entry CMAKE_ASM_NASM_COMPILER to the
full path to the compiler, or to the compiler name if it is in the PATH.
-- Configuring incomplete, errors occurred!
See also "/workspace/open3d/build/CMakeFiles/CheckASM_NASM/CMakeFiles/CMakeOutput.log".
See also "/workspace/open3d/build/CMakeFiles/CheckASM_NASM/CMakeFiles/CMakeError.log".
Determining if the function sgemm_ exists failed with the following output:
Change Dir: /workspace/open3d/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_855e0/fast && /usr/bin/make -f CMakeFiles/cmTC_855e0.dir/build.make CMakeFiles/cmTC_855e0.dir/build
make[1]: Entering directory '/workspace/open3d/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_855e0.dir/CheckFunctionExists.c.o
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=sgemm_ -fPIE -o CMakeFiles/cmTC_855e0.dir/CheckFunctionExists.c.o -c /workspace/cmake/share/cmake-3.20/Modules/CheckFunctionExists.c
Linking C executable cmTC_855e0
/workspace/cmake/bin/cmake -E cmake_link_script CMakeFiles/cmTC_855e0.dir/link.txt --verbose=1
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=sgemm_ CMakeFiles/cmTC_855e0.dir/CheckFunctionExists.c.o -o cmTC_855e0
CMakeFiles/cmTC_855e0.dir/CheckFunctionExists.c.o: In function `main':
CheckFunctionExists.c:(.text+0x10): undefined reference to `sgemm_'
collect2: error: ld returned 1 exit status
CMakeFiles/cmTC_855e0.dir/build.make:98: recipe for target 'cmTC_855e0' failed
make[1]: *** [cmTC_855e0] Error 1
make[1]: Leaving directory '/workspace/open3d/build/CMakeFiles/CMakeTmp'
Makefile:127: recipe for target 'cmTC_855e0/fast' failed
make: *** [cmTC_855e0/fast] Error 2
Determining if the function cheev_ exists failed with the following output:
Change Dir: /workspace/open3d/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_3a46a/fast && /usr/bin/make -f CMakeFiles/cmTC_3a46a.dir/build.make CMakeFiles/cmTC_3a46a.dir/build
make[1]: Entering directory '/workspace/open3d/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_3a46a.dir/CheckFunctionExists.c.o
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=cheev_ -fPIE -o CMakeFiles/cmTC_3a46a.dir/CheckFunctionExists.c.o -c /workspace/cmake/share/cmake-3.20/Modules/CheckFunctionExists.c
Linking C executable cmTC_3a46a
/workspace/cmake/bin/cmake -E cmake_link_script CMakeFiles/cmTC_3a46a.dir/link.txt --verbose=1
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=cheev_ CMakeFiles/cmTC_3a46a.dir/CheckFunctionExists.c.o -o cmTC_3a46a /usr/lib/aarch64-linux-gnu/libblas.so -pthread -lm -ldl
CMakeFiles/cmTC_3a46a.dir/CheckFunctionExists.c.o: In function `main':
CheckFunctionExists.c:(.text+0x10): undefined reference to `cheev_'
collect2: error: ld returned 1 exit status
CMakeFiles/cmTC_3a46a.dir/build.make:99: recipe for target 'cmTC_3a46a' failed
make[1]: *** [cmTC_3a46a] Error 1
make[1]: Leaving directory '/workspace/open3d/build/CMakeFiles/CMakeTmp'
Makefile:127: recipe for target 'cmTC_3a46a/fast' failed
make: *** [cmTC_3a46a/fast] Error 2
Determining if the function LAPACKE_dgeqrf exists failed with the following output:
Change Dir: /workspace/open3d/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_9905d/fast && /usr/bin/make -f CMakeFiles/cmTC_9905d.dir/build.make CMakeFiles/cmTC_9905d.dir/build
make[1]: Entering directory '/workspace/open3d/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_9905d.dir/CheckFunctionExists.c.o
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=LAPACKE_dgeqrf -fPIE -o CMakeFiles/cmTC_9905d.dir/CheckFunctionExists.c.o -c /workspace/cmake/share/cmake-3.20/Modules/CheckFunctionExists.c
Linking C executable cmTC_9905d
/workspace/cmake/bin/cmake -E cmake_link_script CMakeFiles/cmTC_9905d.dir/link.txt --verbose=1
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=LAPACKE_dgeqrf CMakeFiles/cmTC_9905d.dir/CheckFunctionExists.c.o -o cmTC_9905d /usr/lib/aarch64-linux-gnu/liblapack.so /usr/lib/aarch64-linux-gnu/libblas.so
CMakeFiles/cmTC_9905d.dir/CheckFunctionExists.c.o: In function `main':
CheckFunctionExists.c:(.text+0x10): undefined reference to `LAPACKE_dgeqrf'
collect2: error: ld returned 1 exit status
CMakeFiles/cmTC_9905d.dir/build.make:100: recipe for target 'cmTC_9905d' failed
make[1]: *** [cmTC_9905d] Error 1
make[1]: Leaving directory '/workspace/open3d/build/CMakeFiles/CMakeTmp'
Makefile:127: recipe for target 'cmTC_9905d/fast' failed
make: *** [cmTC_9905d/fast] Error 2
Problem:
I want to build open3d from source on an arm docker img with a Dockerfile. More specifically, the l4t-base:r32.5.0 img provided by NVIDIA. This image will be used on a Jetson XavierNX with docker installed.
Above you can see what I have tried so far in terms of Dockerfile and the output this gives me.
What I am asking is, if anyone has a Dockerfile for building open3d from source on an arm based image or knows how to do it successfully, because I cannot seem to be able to do it.

Can't activate Lua-support in freeswitch

If activating Lua-Support in modules.conf, ./configure, make , install yields the following error:
*
making install mod_lua
make[4]: Entering directory '/home/jklou/jkl/fs/freeswitch-1.8.2/src/mod/languages/mod_lua'
CXX mod_lua_la-mod_lua.lo
mod_lua.cpp:37:17: fatal error: lua.h: 没有那个文件或目录
compilation terminated.
Makefile:687: recipe for target 'mod_lua_la-mod_lua.lo' failed
make[4]: *** [mod_lua_la-mod_lua.lo] Error 1
make[4]: Leaving directory '/home/jklou/jkl/fs/freeswitch-1.8.2/src/mod/languages/mod_lua'
Makefile:679: recipe for target 'mod_lua-install' failed
make[3]: *** [mod_lua-install] Error 1
make[3]: Leaving directory '/home/jklou/jkl/fs/freeswitch-1.8.2/src/mod'
Makefile:587: recipe for target 'install-recursive' failed
make[2]: *** [install-recursive] Error 1
make[2]: Leaving directory '/home/jklou/jkl/fs/freeswitch-1.8.2/src'
Makefile:3257: recipe for target 'install-recursive' failed
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory '/home/jklou/jkl/fs/freeswitch-1.8.2'
Makefile:3729: recipe for target 'install' failed
make: *** [install] Error 2
*
so Lua cannot be used.
Google: Several Forums advise to refresh the GIT-repository, but this cannot be used because I need an older Version of freeswitch
I've found a solution:
apt-get install libreadline-dev apt-get install lua5.2 lua5.2-doc liblua5.2-dev
then copy LUA-sh-files to LUA-mod-directory of Freeswitch:
cp /usr/include/lua5.2/*.h [Installationsverzeichnis Freeswitch]]/src/mod/languages/mod_lua/
then link it:
sudo ln -s /usr/lib/x86_64-linux-gnu/liblua5.2.so /usr/lib/x86_64-linux-gnu/liblua.so
then repeat make install (don't repeat ./configure and make)
sudo make install
this worked perfectly for me (Freeswitch 1.8.2. and Ubuntu 18.04 LTS running in Virtual Box)

My package in OpenWRT does not compile

I have downloaded OpenWRT source from git and build it. I created a simple helloworld package with the required Makefile in package/helloworld directory and build it. But it does not seem to be doing anything. Following is the log:
sonal#sonal-ThinkPad:~/openwrt$ make V=99 package/helloworld/compile
WARNING: your configuration is out of sync. Please run make menuconfig, oldconfig or defconfig!
make[1]: Entering directory '/home/sonal/openwrt'
make[2]: Entering directory '/home/sonal/openwrt/package/libs/toolchain'
if [ -f /home/sonal/openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean ]; then rm -f /home/sonal/openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install /home/sonal/openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean; fi; echo "libc" >> /home/sonal/openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install
if [ -f /home/sonal/openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean ]; then rm -f /home/sonal/openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install /home/sonal/openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install.clean; fi; echo "libgcc" >> /home/sonal/openwrt/staging_dir/target-mips_34kc_uClibc-0.9.33.2/pkginfo/toolchain.default.install
make[2]: Leaving directory '/home/sonal/openwrt/package/libs/toolchain'
make[2]: Entering directory '/home/sonal/openwrt/package/helloworld'
make[2]: Leaving directory '/home/sonal/openwrt/package/helloworld'
make[1]: Leaving directory '/home/sonal/openwrt'`enter code here`
Thanks
Sonal
http://wiki.prplfoundation.org/wiki/Creating_an_OpenWrt_package_for_a_web_page
This above link will guide you how to build own package. I had also made own luci pages with above link. It will guide you from scratch.
If you want to create only hello world page then no need to create package, you just make new directory name as files in '/home/sonal/openwrt/'
and then go to files directory and make new directory as www in '/home/sonal/openwrt/files/'. No custom packages requires for it.

Mqtt: How to install mosquitto old version

I have installed mosquitto using the command apt-get install mosquitto. It is installed successfully on my system, but I got version "1.4.5". I want to downgrade to version 1.4.4, so I was trying using the source tar file. Under folder, I am running the command make and it is throwing an error:
set -e; for d in lib client src; do make -C ${d}; done
make[1]: Entering directory `/home/ubuntu/org.eclipse.mosquitto-1.4.4/lib'
cc -Wall -ggdb -O2 -I. -I.. -I../lib -fPIC -DWITH_TLS -DWITH_TLS_PSK -DWITH_THREADING -DWITH_SOCKS -DWITH_SRV -c mosquitto.c -o mosquitto.o
In file included from mosquitto.c:33:0:
./mosquitto_internal.h:27:27: fatal error: openssl/ssl.h: No such file or directory
# include <openssl/ssl.h>
^
compilation terminated.
make[1]: *** [mosquitto.o] Error 1
make[1]: Leaving directory `/home/ubuntu/org.eclipse.mosquitto-1.4.4/lib'
make: *** [mosquitto] Error 2
What is going wrong here?. Is there any another way to install 1.4.4 version of mosquitto?
Thanks
You're missing dependencies needed for compilation.
Try:
apt-get install libc-ares-dev libssl-dev libwrap0-dev uthash-dev uuid-dev
If you want libwebsockets support you can either install libwebsockets-dev, or better install it manually from source - that will get you version 1.5 instead of the old 1.2 that is in Debian/Ubuntu.
If you install the manually compiled version with
make prefix=/usr install
then it will overwrite the existing binary and you can use it with the existing system services.

Build Error OpenWRT hotplug2

i have a problem while building openWRT for the carambola module. The package hotplug2 is the problem.
make[2]: Entering directory /carambola/package/hotplug2
mkdir -p /carambola/dl
echo "Checking out files from the svn repository..."; mkdir -p /carambola/tmp/dl && cd /carambola/tmp/dl && rm -rf hotplug2-201 && [ \! -d hotplug2-201 ] && ( svn help export | grep -q trust-server-cert && svn export --non-interactive --trust-server-cert -r201 http://svn.nomi.cz/svn/isteve/hotplug2 hotplug2-201 || svn export --non-interactive -r201 http://svn.nomi.cz/svn/isteve/hotplug2 hotplug2-201 ) && echo "Packing checkout..." && /bin/tar cfz //carambola/tmp/dl/hotplug2-201.tar.gz hotplug2-201 && mv /home/hosst/Dokumente/Projekte/OSC_GIT/02_WSS/linux-system/carambola/tmp/dl/hotplug2-201.tar.gz /carambola/dl/ && rm -rf hotplug2-201;
Checking out files from the svn repository...
svn: E670002: Unable to connect to a repository at URL 'http://svn.nomi.cz/svn/isteve/hotplug2'
svn: E670002: Name or service not known
svn: E670002: Unable to connect to a repository at URL 'http://svn.nomi.cz/svn/isteve/hotplug2'
svn: E670002: Name or service not known
make[2]: *** [/carambola/dl/hotplug2-201.tar.gz] Error 1
make[2]: Leaving directory /carambola/package/hotplug2
make[1]: *** [package/hotplug2/compile] Error 2
make[1]: Leaving directory carambola
make: *** [package/hotplug2/compile] Fehler 2
Obviously the svn repo http://svn.nomi.cz/svn/isteve/hotplug2 is not reachable. But this is the original makefile from OpenWRT Repo (hotplug2 package).
Does anybody know the problem? Could not find any hints on the net but i am sure many other people can compile OpenWRT without problems.
The problem is the url of svn repo has changed. Make these changes in
package/hotplug2/Makefile
#PKG_REV:=201
PKG_REV:=4
#PKG_SOURCE_URL:=http://svn.nomi.cz/svn/isteve/hotplug2
PKG_SOURCE_URL:=http://hotplug2.googlecode.com/svn/trunk
With those changes, you should be able to compile the code.

Resources