Linux support

3 replies [Last post]
ahfagg
Title: NooBot
Joined: 01/16/2013
Posts:
BotPoints: 13
User offline. Last seen 3 years 43 weeks ago.

Does anyone have kiss working under linux yet? We seem to need cmake-2.8.12 or better & qt5, neither of which are available as packages under Ubuntu 12.04. cmake compiles fine, but qt5 is a real bear....

nzaman
Title: Software Engineer @ KIPR
Joined: 02/12/2014
Posts:
BotPoints: 12
User offline. Last seen 3 years 35 weeks ago.

Why not use one of the Qt packages here? The "Qt 5.2.1 for Linux 64-bit" package works fine for me on 64-bit Ubuntu 12.04.

Nafis Zaman

Ninja3047
Title: NooBot
Joined: 02/09/2014
Posts:
BotPoints: 7
User offline. Last seen 3 years 34 weeks ago.

This is much easier than building Qt-5 from source, thanks.

drew1horn
Title: NooBot
Joined: 03/17/2014
Posts:
BotPoints: 2
User offline. Last seen 3 years 38 weeks ago.

Trying to build linux ide on Linux Mint 16 "Petra", a Ubuntu 13.10 "Saucy Salamander" deriviative.

Found usefull information on the second page of http://community.botball.org/forum/technical/programming/installing-kiss...

Probably a significant number of folks browsing for this don't make it to the second page.

Took the advice I found there and created a script, botbuntu-install.sh

#! /bin/sh -x

# need more packages installed first for Linux Mint

sudo apt-get install g++ libqscintilla2-dev cmake git codeblocks qtdeclarative5-dev

git clone git://github.com/kipr/libkar.git
git clone git://github.com/kipr/pcompiler.git
git clone git://github.com/kipr/libkovanserial.git
git clone git://github.com/kipr/kiss.git

cd libkar
mkdir build
cd build/
cmake ..
sudo make install

cd ../../pcompiler/
mkdir build
cd build/
cmake ..
sudo make install

cd ../../libkovanserial/
mkdir build
cd build/
cmake ..
sudo make install

cd ../../kiss/
mkdir build
cd build/
cmake ..
sudo make install

./deploy/KISS

When I run this, capturing stdout and stderr (with some highlighting and notes added):

Need prerequisites on Linux Mint 16 Petra

+ sudo apt-get install g++ libqscintilla2-dev cmake git codeblocks qtdeclarative5-dev
Reading package lists...
Building dependency tree...
Reading state information...
cmake is already the newest version.
g++ is already the newest version.
git is already the newest version.
libqscintilla2-dev is already the newest version.
qtdeclarative5-dev is already the newest version.
codeblocks is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Get source form git repositories

+ git clone git://github.com/kipr/libkar.git
Cloning into 'libkar'...
Checking connectivity... done
+ git clone git://github.com/kipr/pcompiler.git
Cloning into 'pcompiler'...
Checking connectivity... done
+ git clone git://github.com/kipr/libkovanserial.git
Cloning into 'libkovanserial'...
Checking connectivity... done
+ git clone git://github.com/kipr/kiss.git
Cloning into 'kiss'...
Checking connectivity... done

Build libkar appears successful

+ cd libkar
/home/drew/Misc/bot/botbuntu/libkar
+ mkdir build
+ cd build/
/home/drew/Misc/bot/botbuntu/libkar/build
+ cmake ..
-- The C compiler identification is GNU 4.8.1
-- The CXX compiler identification is GNU 4.8.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/drew/Misc/bot/botbuntu/libkar/build
+ sudo make install
Scanning dependencies of target kar
[ 50%] Building CXX object CMakeFiles/kar.dir/src/kar.cpp.o
Linking CXX shared library ../lib/libkar.so
[ 50%] Built target kar
Scanning dependencies of target kissarchive
[100%] Building CXX object tools/CMakeFiles/kissarchive.dir/kissarchive.cpp.o
Linking CXX executable kissarchive
[100%] Built target kissarchive
Install the project...
-- Install configuration: ""
-- Installing: /usr/local/include/kar/kar.hpp
-- Installing: /usr/local/include/kar/compat.hpp
-- Installing: /usr/local/lib/libkar.so
-- Installing: /usr/local/bin/kissarchive
-- Removed runtime path from "/usr/local/bin/kissarchive"

Build pcompiler has problems

+ cd ../../pcompiler/
+ mkdir build
+ cd build/
/home/drew/Misc/bot/botbuntu/pcompiler/build
+ cmake ..
-- The C compiler identification is GNU 4.8.1
-- The CXX compiler identification is GNU 4.8.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/drew/Misc/bot/botbuntu/pcompiler/build
+ sudo make install
[ 2%] Generating include/pcompiler/moc_options.cpp

/home/drew/Misc/bot/botbuntu/pcompiler/include/pcompiler/options.hpp:0: Note: No relevant classes found. No output generated.

[ 4%] Generating include/pcompiler/moc_progress.cpp

/home/drew/Misc/bot/botbuntu/pcompiler/include/pcompiler/progress.hpp:0: Note: No relevant classes found. No output generated.

[ 7%] Generating include/pcompiler/moc_compiler_options.cpp

/home/drew/Misc/bot/botbuntu/pcompiler/include/pcompiler/compiler_options.hpp:0: Note: No relevant classes found. No output generated.

[ 9%] Generating include/pcompiler/moc_pcompiler.cpp

/home/drew/Misc/bot/botbuntu/pcompiler/include/pcompiler/pcompiler.hpp:0: Note: No relevant classes found. No output generated.

[ 12%] Generating include/pcompiler/moc_input.cpp

/home/drew/Misc/bot/botbuntu/pcompiler/include/pcompiler/input.hpp:0: Note: No relevant classes found. No output generated.

[ 14%] Generating include/pcompiler/moc_root_manager.cpp

/home/drew/Misc/bot/botbuntu/pcompiler/include/pcompiler/root_manager.hpp:41: Note: No relevant classes found. No output generated.

[ 17%] Generating include/pcompiler/moc_engine.cpp

/home/drew/Misc/bot/botbuntu/pcompiler/include/pcompiler/engine.hpp:0: Note: No relevant classes found. No output generated.

[ 19%] Generating include/pcompiler/moc_output.cpp

/home/drew/Misc/bot/botbuntu/pcompiler/include/pcompiler/output.hpp:0: Note: No relevant classes found. No output generated.

[ 21%] Generating include/pcompiler/moc_compilers.cpp

/home/drew/Misc/bot/botbuntu/pcompiler/include/pcompiler/compilers.hpp:0: Note: No relevant classes found. No output generated.

[ 24%] Generating include/pcompiler/moc_base.cpp

/home/drew/Misc/bot/botbuntu/pcompiler/include/pcompiler/base.hpp:0: Note: No relevant classes found. No output generated.

[ 26%] Generating include/pcompiler/moc_compat.cpp

/home/drew/Misc/bot/botbuntu/pcompiler/include/pcompiler/compat.hpp:0: Note: No relevant classes found. No output generated.

Scanning dependencies of target pcompiler
[ 29%] Building CXX object CMakeFiles/pcompiler.dir/src/engine.cpp.o
[ 31%] Building CXX object CMakeFiles/pcompiler.dir/src/output.cpp.o
[ 34%] Building CXX object CMakeFiles/pcompiler.dir/src/root_manager.cpp.o
[ 36%] Building CXX object CMakeFiles/pcompiler.dir/src/base.cpp.o
[ 39%] Building CXX object CMakeFiles/pcompiler.dir/src/options.cpp.o
[ 41%] Building CXX object CMakeFiles/pcompiler.dir/src/compilers.cpp.o

In file included from /usr/include/qt5/QtCore/qstringlist.h:45:0,
from /usr/include/qt5/QtCore/QStringList:1,
from /home/drew/Misc/bot/botbuntu/pcompiler/include/pcompiler/compilers.hpp:5,
from /home/drew/Misc/bot/botbuntu/pcompiler/src/compilers.cpp:1:
/usr/include/qt5/QtCore/qalgorithms.h: In instantiation of ‘void qDeleteAll(ForwardIterator, ForwardIterator) [with ForwardIterator = QList::const_iterator]’:
/usr/include/qt5/QtCore/qalgorithms.h:329:34: required from ‘void qDeleteAll(const Container&) [with Container = QList]’
/home/drew/Misc/bot/botbuntu/pcompiler/src/compilers.cpp:12:33: required from here
/usr/include/qt5/QtCore/qalgorithms.h:321:9: warning: deleting object of abstract class type ‘Compiler::Base’ which has non-virtual destructor will cause undefined behaviour [-Wdelete-non-virtual-dtor]
delete *begin;
^

[ 43%] Building CXX object CMakeFiles/pcompiler.dir/compilers/class/class.cpp.o
[ 46%] Building CXX object CMakeFiles/pcompiler.dir/compilers/passthrough/passthrough.cpp.o
[ 48%] Building CXX object CMakeFiles/pcompiler.dir/compilers/py/py.cpp.o
[ 51%] Building CXX object CMakeFiles/pcompiler.dir/compilers/java/java.cpp.o
[ 53%] Building CXX object CMakeFiles/pcompiler.dir/compilers/ops/ops.cpp.o
[ 56%] Building CXX object CMakeFiles/pcompiler.dir/compilers/library/library.cpp.o
[ 58%] Building CXX object CMakeFiles/pcompiler.dir/compilers/a/a.cpp.o
[ 60%] Building CXX object CMakeFiles/pcompiler.dir/compilers/o/o.cpp.o
[ 63%] Building CXX object CMakeFiles/pcompiler.dir/compilers/board/board.cpp.o
[ 65%] Building CXX object CMakeFiles/pcompiler.dir/compilers/c/c.cpp.o
[ 68%] Building CXX object CMakeFiles/pcompiler.dir/compilers/cpp/cpp.cpp.o
[ 70%] Building CXX object CMakeFiles/pcompiler.dir/compilers/common/platform.cpp.o
[ 73%] Building CXX object CMakeFiles/pcompiler.dir/compilers/lisp/lisp.cpp.o
[ 75%] Building CXX object CMakeFiles/pcompiler.dir/include/pcompiler/moc_progress.cpp.o
[ 78%] Building CXX object CMakeFiles/pcompiler.dir/include/pcompiler/moc_compiler_options.cpp.o
[ 80%] Building CXX object CMakeFiles/pcompiler.dir/include/pcompiler/moc_pcompiler.cpp.o
[ 82%] Building CXX object CMakeFiles/pcompiler.dir/include/pcompiler/moc_input.cpp.o
[ 85%] Building CXX object CMakeFiles/pcompiler.dir/include/pcompiler/moc_root_manager.cpp.o
[ 87%] Building CXX object CMakeFiles/pcompiler.dir/include/pcompiler/moc_engine.cpp.o
[ 90%] Building CXX object CMakeFiles/pcompiler.dir/include/pcompiler/moc_output.cpp.o
[ 92%] Building CXX object CMakeFiles/pcompiler.dir/include/pcompiler/moc_compilers.cpp.o
[ 95%] Building CXX object CMakeFiles/pcompiler.dir/include/pcompiler/moc_base.cpp.o
[ 97%] Building CXX object CMakeFiles/pcompiler.dir/include/pcompiler/moc_compat.cpp.o
[100%] Building CXX object CMakeFiles/pcompiler.dir/include/pcompiler/moc_options.cpp.o
Linking CXX shared library ../lib/libpcompiler.so
[100%] Built target pcompiler
Install the project...
-- Install configuration: ""
-- Installing: /usr/local/include/pcompiler/progress.hpp
-- Installing: /usr/local/include/pcompiler/compiler_options.hpp
-- Installing: /usr/local/include/pcompiler/pcompiler.hpp
-- Installing: /usr/local/include/pcompiler/input.hpp
-- Installing: /usr/local/include/pcompiler/root_manager.hpp
-- Installing: /usr/local/include/pcompiler/engine.hpp
-- Installing: /usr/local/include/pcompiler/output.hpp
-- Installing: /usr/local/include/pcompiler/compilers.hpp
-- Installing: /usr/local/include/pcompiler/base.hpp
-- Installing: /usr/local/include/pcompiler/compat.hpp
-- Installing: /usr/local/include/pcompiler/options.hpp
-- Installing: /usr/local/lib/libpcompiler.so

Build libkovanserial has a bunch of remove me warnings

+ cd ../../libkovanserial/
+ mkdir build
+ cd build/
/home/drew/Misc/bot/botbuntu/libkovanserial/build
+ cmake ..
-- The C compiler identification is GNU 4.8.1
-- The CXX compiler identification is GNU 4.8.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/drew/Misc/bot/botbuntu/libkovanserial/build
+ sudo make install
Scanning dependencies of target kovanserial
[ 6%] Building C object CMakeFiles/kovanserial.dir/src/crc.c.o
[ 13%] Building CXX object CMakeFiles/kovanserial.dir/src/md5.cpp.o
[ 20%] Building CXX object CMakeFiles/kovanserial.dir/src/xor.cpp.o
[ 26%] Building CXX object CMakeFiles/kovanserial.dir/src/transmitter.cpp.o

In file included from /home/drew/Misc/bot/botbuntu/libkovanserial/src/transmitter.cpp:1:0:
/home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/transmitter.hpp:11:2: warning: #warning "Remove me" [-Wcpp]
#warning "Remove me"
^

[ 33%] Building CXX object CMakeFiles/kovanserial.dir/src/tcp_server.cpp.o

In file included from /home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/tcp.hpp:4:0,
from /home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/tcp_server.hpp:4,
from /home/drew/Misc/bot/botbuntu/libkovanserial/src/tcp_server.cpp:1:
/home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/transmitter.hpp:11:2: warning: #warning "Remove me" [-Wcpp]
#warning "Remove me"
^

[ 40%] Building CXX object CMakeFiles/kovanserial.dir/src/tcp_serial.cpp.o

In file included from /home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/tcp.hpp:4:0,
from /home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/tcp_serial.hpp:4,
from /home/drew/Misc/bot/botbuntu/libkovanserial/src/tcp_serial.cpp:1:
/home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/transmitter.hpp:11:2: warning: #warning "Remove me" [-Wcpp]
#warning "Remove me"
^

[ 46%] Building CXX object CMakeFiles/kovanserial.dir/src/tcp.cpp.o

In file included from /home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/tcp.hpp:4:0,
from /home/drew/Misc/bot/botbuntu/libkovanserial/src/tcp.cpp:1:
/home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/transmitter.hpp:11:2: warning: #warning "Remove me" [-Wcpp]
#warning "Remove me"
^

[ 53%] Building CXX object CMakeFiles/kovanserial.dir/src/randomize.cpp.o
[ 60%] Building CXX object CMakeFiles/kovanserial.dir/src/transport_layer.cpp.o

In file included from /home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/transport_layer.hpp:7:0,
from /home/drew/Misc/bot/botbuntu/libkovanserial/src/transport_layer.cpp:1:
/home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/transmitter.hpp:11:2: warning: #warning "Remove me" [-Wcpp]
#warning "Remove me"
^

[ 66%] Building CXX object CMakeFiles/kovanserial.dir/src/udp_advertiser.cpp.o
[ 73%] Building CXX object CMakeFiles/kovanserial.dir/src/usb_serial_unix.cpp.o

In file included from /home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/usb_serial_unix.hpp:4:0,
from /home/drew/Misc/bot/botbuntu/libkovanserial/src/usb_serial_unix.cpp:1:
/home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/transmitter.hpp:11:2: warning: #warning "Remove me" [-Wcpp]
#warning "Remove me"
^

[ 80%] Building CXX object CMakeFiles/kovanserial.dir/src/general.cpp.o
[ 86%] Building CXX object CMakeFiles/kovanserial.dir/src/sha1.cpp.o
[ 93%] Building CXX object CMakeFiles/kovanserial.dir/src/kovan_serial.cpp.o

In file included from /home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/transport_layer.hpp:7:0,
from /home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/kovan_serial.hpp:8,
from /home/drew/Misc/bot/botbuntu/libkovanserial/src/kovan_serial.cpp:1:
/home/drew/Misc/bot/botbuntu/libkovanserial/include/kovanserial/transmitter.hpp:11:2: warning: #warning "Remove me" [-Wcpp]
#warning "Remove me"
^

[100%] Building CXX object CMakeFiles/kovanserial.dir/src/socket_utils.cpp.o
Linking CXX shared library ../lib/libkovanserial.so
[100%] Built target kovanserial
Install the project...
-- Install configuration: ""
-- Installing: /usr/local/include/kovanserial/usb_serial_unix.hpp
-- Installing: /usr/local/include/kovanserial/xor.hpp
-- Installing: /usr/local/include/kovanserial/tcp_server.hpp
-- Installing: /usr/local/include/kovanserial/udp_advertiser.hpp
-- Installing: /usr/local/include/kovanserial/usb_serial.hpp
-- Installing: /usr/local/include/kovanserial/general.hpp
-- Installing: /usr/local/include/kovanserial/socket_utils.hpp
-- Installing: /usr/local/include/kovanserial/tcp.hpp
-- Installing: /usr/local/include/kovanserial/transport_layer.hpp
-- Installing: /usr/local/include/kovanserial/tcp_serial.hpp
-- Installing: /usr/local/include/kovanserial/sha1.hpp
-- Installing: /usr/local/include/kovanserial/usb_serial_win.hpp
-- Installing: /usr/local/include/kovanserial/kovan_serial.hpp
-- Installing: /usr/local/include/kovanserial/transmitter.hpp
-- Installing: /usr/local/include/kovanserial/compat.hpp
-- Installing: /usr/local/include/kovanserial/randomize.hpp
-- Installing: /usr/local/include/kovanserial/command_types.hpp
-- Installing: /usr/local/include/kovanserial/md5.hpp
-- Installing: /usr/local/include/kovanserial/platform_defines.hpp
-- Installing: /usr/local/include/kovanserial/crc.h
-- Installing: /usr/local/lib/libkovanserial.so

Build kiss
Expected the prequisites at the top would have solved the following problem

+ cd ../../kiss/
+ mkdir build
+ cd build/
/home/drew/Misc/bot/botbuntu/kiss/build
+ cmake ..
-- The C compiler identification is GNU 4.8.1
-- The CXX compiler identification is GNU 4.8.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done

CMake Error at CMakeLists.txt:10 (find_package):
By not providing "FindQt5Declarative.cmake" in CMAKE_MODULE_PATH this
project has asked CMake to find a package configuration file provided by
"Qt5Declarative", but CMake did not find one.

Could not find a package configuration file provided by "Qt5Declarative"
with any of the following names:

Qt5DeclarativeConfig.cmake
qt5declarative-config.cmake

Add the installation prefix of "Qt5Declarative" to CMAKE_PREFIX_PATH or set
"Qt5Declarative_DIR" to a directory containing one of the above files. If
"Qt5Declarative" provides a separate development package or SDK, be sure it
has been installed.

-- Configuring incomplete, errors occurred!
See also "/home/drew/Misc/bot/botbuntu/kiss/build/CMakeFiles/CMakeOutput.log".
+ sudo make install
make: *** No rule to make target `install'. Stop.

+ ./deploy/KISS

./botbuntu-install.sh: 36: ./botbuntu-install.sh: ./deploy/KISS: not found