**Aktualisiert** Ethminer - kein solcher Datei- oder Verzeichnisfehler nach dem Erstellen von cpp-ethereum auf Ubuntu 14.04

Ich bin neu in all dem, obwohl ich etwas mit Windows und dem Web programmiere.

Ich habe eine kleine Anlage, die ich zum Schürfen von Ethereum verwenden möchte. Es ist ein Dell Inspiron 560.

Es hat eine neue Nvidia GE-Force 610 Grafikkarte mit Treiber. (2 GB Speicher)

Ich habe Ubunutu 14.04 LTS neu installiert und bin dann hierher zu https://github.com/Genoil/cpp-ethereum gegangen , um den Anweisungen für einen Cuda-Miner zu folgen.

Ich habe die Anweisungen vollständig befolgt und während des Builds Fehler erhalten.

Kann mir bitte jemand helfen, einen sauberen Build zu bekommen? Ich brauche eine andere Version von CMake oder C++?

Kann mir bitte jemand helfen, die Probleme einzugrenzen?

Hier ist der Bericht vom Build/Make-Prozess: (Ich weiß, es ist eine lange Lektüre. Danke fürs Lesen).

markm@Goose1:~/cpp-ethereum$ mkdir build
markm@Goose1:~/cpp-ethereum$ cd build
markm@Goose1:~/cpp-ethereum/build$ cmake -DBUNDLE=cudaminer ..
-- The C compiler identification is GNU 4.8.4
-- The CXX compiler identification is GNU 4.8.4
-- 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
-- Detecting C compile features
-- Detecting C compile features - 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
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- ctest path: /usr/bin/ctest
-- Found CryptoPP: /usr/include (found suitable version "5.6.2", minimum required is "5.6.2")
 - CryptoPP header: /usr/include
 - CryptoPP lib   : /usr/lib/libcryptopp.so
-- Found leveldb: /usr/include
 - LevelDB header: /usr/include
 - LevelDB lib: /usr/lib/x86_64-linux-gnu/libleveldb.so
-- Found jsoncpp: /usr/include/jsoncpp
 - Jsoncpp header: /usr/include/jsoncpp
 - Jsoncpp lib   : /usr/lib/x86_64-linux-gnu/libjsoncpp.so
-- Found json_rpc_cpp: /usr/include (found suitable version "0.4.2", minimum required is "0.4")
 - json-rpc-cpp header: /usr/include
 - json-rpc-cpp lib   : /usr/lib/libjsonrpccpp-common.so;/usr/lib/libjsonrpccpp-server.so;/usr/lib/libjsonrpccpp-client.so
-- Found mhd: /usr/include
 - microhttpd header: /usr/include
 - microhttpd lib   : /usr/lib/x86_64-linux-gnu/libmicrohttpd.so
 - microhttpd dll   :
-- Found readline: /usr/include
 - readline header: /usr/include
 - readline lib   : /usr/lib/x86_64-linux-gnu/libreadline.so
-- Could NOT find miniupnpc (missing:  MINIUPNPC_INCLUDE_DIR MINIUPNPC_LIBRARY)
-- Found gmp: /usr/include/x86_64-linux-gnu
 - gmp header: /usr/include/x86_64-linux-gnu
 - gmp lib   : /usr/lib/x86_64-linux-gnu/libgmp.so
-- Found CURL: /usr/include
 - curl header: /usr/include
 - curl lib   : /usr/lib/x86_64-linux-gnu/libcurl.so
-- Could NOT find cpuid (missing:  CPUID_INCLUDE_DIR CPUID_LIBRARY)
-- Looking for CL_VERSION_2_0
-- Looking for CL_VERSION_2_0 - not found
-- Looking for CL_VERSION_1_2
-- Looking for CL_VERSION_1_2 - found
-- Found OpenCL: /usr/lib/x86_64-linux-gnu/libOpenCL.so (found version "1.2")
 - opencl header: /usr/include
 - opencl lib   : /usr/lib/x86_64-linux-gnu/libOpenCL.so
-- Found CUDA: /usr/local/cuda (found version "8.0")
 - CUDA header: /usr/local/cuda/include
 - CUDA lib   : /usr/local/cuda/lib64/libcudart.so
 - jsonrpcstub location    : /usr/bin/jsonrpcstub
-- Boost version: 1.54.0
-- Found the following Boost libraries:
--   thread
--   date_time
--   system
--   regex
--   chrono
--   filesystem
--   unit_test_framework
--   program_options
--   random
 - boost header: /usr/include
 - boost lib   : /usr/lib/x86_64-linux-gnu/libboost_thread.so;/usr/lib/x86_64-linux-gnu/libboost_date_time.so;/usr/lib/x86_64-linux-gnu/libboost_system.so;/usr/lib/x86_64-linux-gnu/libboost_regex.so;/usr/lib/x86_64-linux-gnu/libboost_chrono.so;/usr/lib/x86_64-linux-gnu/libboost_filesystem.so;/usr/lib/x86_64-linux-gnu/libboost_unit_test_framework.so;/usr/lib/x86_64-linux-gnu/libboost_program_options.so;/usr/lib/x86_64-linux-gnu/libboost_random.so;/usr/lib/x86_64-linux-gnu/libpthread.so
------------------------------------------------------------------------
--                  CMake Version                            3.2.2
-- CMAKE_BUILD_TYPE Build type                               Release
-- TARGET_PLATFORM  Target platform                          Linux
-- BUNDLE           Build bundle                             cudaminer
--------------------------------------------------------------- features
--                  Chromium support                         1
--                  Hardware identification support          FALSE
--                  HTTP Request support                     TRUE
-- VMTRACE          VM execution tracing                     OFF
-- PROFILING        Profiling support                        OFF
-- FATDB            Full database exploring
-- JSONRPC          JSON-RPC support                         ON
-- OLYMPIC          Default to the Olympic network           OFF
------------------------------------------------------------- components
-- MINER            Build miner                              ON
-- GUI              Build GUI components                     OFF
-- ETHASHCL         Build OpenCL components                  ON
-- ETHASHCUDA       Build CUDA components                    ON
-- ETHSTRATUM       Build Stratum components                 ON
------------------------------------------------------------------------
    -- CXXFLAGS: -std=c++11 -Wall -Wno-unknown-pragmas -Wextra -Wno-error=parentheses -pedantic -DSHAREDLIB -fPIC  -fuse-ld=gold creating build info... createBuildInfo()
-- Looking for include file pthread.h
-- Looking for include file pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Configuring done CMake Warning at libethcore/CMakeLists.txt:21 (add_library):   Cannot generate a safe runtime search path for target
ethcore because files   in some directories may conflict with
libraries in implicit directories:
        runtime library [libOpenCL.so.1] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
      /usr/local/cuda/lib64
            Some of these libraries may not be found correctly.

CMake Warning at ethminer/CMakeLists.txt:22 (add_executable):   Cannot
generate a safe runtime search path for target ethminer because
files in some directories may conflict with libraries in implicit
directories:
        runtime library [libOpenCL.so.1] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
      /usr/local/cuda/lib64
            Some of these libraries may not be found correctly.

-- Generating done
-- Build files have been written to: /home/markm/cpp-ethereum/build markm@Goose1:~/cpp-ethereum/build$ make -j2 Scanning dependencies of
target BuildInfo.h Scanning dependencie
s of target devcore Files
"/home/markm/cpp-ethereum/build/BuildInfo.h.tmp" to
"/home/markm/cpp-ethereum/build/BuildInfo.h" are different. [  2%] [
2%] Built target BuildInfo.h Building CXX object
libdevcore/CMakeFiles/devcore.dir/CommonData.cpp.o Scanning
dependencies of target ethash [  4%] Building C object
libethash/CMakeFiles/ethash.dir/io.c.o [  7%] Building C object
libethash/CMakeFiles/ethash.dir/internal.c.o            [  9%]
Building C object libethash/CMakeFiles/ethash.dir/io_posix.c.o
[ 11%] Building CXX object
libethash/CMakeFiles/ethash.dir/sha3_cryptopp.cpp.o   Linking CXX
shared library libethash.so [ 11%] Built target ethash Scanning
dependencies of target ethstratum [ 14%] Building CXX object
libstratum/CMakeFiles/ethstratum.dir/EthStratumClientV2.cpp.o
/home/markm/cpp-ethereum/libstratum/EthStratumClientV2.cpp: In member
function ‘void EthStratumClientV2::processReponse(Json::Value&)’:
/home/markm/cpp-ethereum/libstratum/EthStratumClientV2.cpp:350:12:
warning: variable ‘headerHash’ set but not used
[-Wunused-but-set-variable]
       h256 headerHash = h256(sHeaderHash);
            ^ [ 16%] Building CXX object libdevcore/CMakeFiles/devcore.dir/FixedHash.cpp.o [ 19%] Building CXX
object libdevcore/CMakeFiles/devcore.dir/CommonIO.cpp.o      [ 21%]
Building CXX object
libstratum/CMakeFiles/ethstratum.dir/EthStratumClient.cpp.o
[ 23%] Building CXX object
libdevcore/CMakeFiles/devcore.dir/SHA3.cpp.o
/home/markm/cpp-ethereum/libstratum/EthStratumClient.cpp: In member
function ‘void EthStratumClient::processReponse(Json::Value&)’:
/home/markm/cpp-ethereum/libstratum/EthStratumClient.cpp:398:12:
warning: variable ‘headerHash’ set but not used
[-Wunused-but-set-variable]
       h256 headerHash = h256(sHeaderHash);
            ^ [ 26%] Building CXX object libdevcore/CMakeFiles/devcore.dir/TrieCommon.cpp.o Linking CXX shared
library libethstratum.so [ 26%] Built target ethstratum [ 28%]
Generating OpenCL Kernel Byte Array [ 30%] Building CXX object
libdevcore/CMakeFiles/devcore.dir/Struc
turedLogger.cpp.o
Scanning dependencies of target ethash-cl [ 33%] Building CXX object
libethash-cl/CMakeFiles/ethash-cl.dir/ethash_cl_miner.cpp.o
Linking CXX shared library libethash-cl.so [ 33%] Built target
ethash-cl [ 35%] Building CXX object
libdevcore/CMakeFiles/devcore.dir/Hash.cpp.o [ 38%] Building CXX
object libdevcore/CMakeFiles/devcore.dir/RangeMask.cpp.o     [ 40%]
Building CXX object libdevcore/CMakeFiles/devcore.dir/MemoryDB.cpp.o
[ 42%] Building CXX object
libdevcore/CMakeFiles/devcore.dir/Base64.cpp.o        [ 45%] Building
NVCC (Device) object
libethash-cuda/CMakeFiles/ethash-cuda.dir/ethash-cuda_generated_ethash_cuda_miner_kernel.cu.o
nvcc warning : The 'compute_20', 'sm_20', and 'sm_21' architectures
are deprecated, and may be removed in a future release (Use
-Wno-deprecated-gpu-targets to suppress warning). nvcc warning : The 'compute_20', 'sm_20', and 'sm_21' architectures are deprecated, and
may be removed in a future release (Use -Wno-deprecated-gpu-targets to
suppress warning).
/usr/lib/gcc/x86_64-linux-gnu/4.8/include/stddef.h(432): error:
identifier "nullptr" is undefined
    /usr/lib/gcc/x86_64-linux-gnu/4.8/include/stddef.h(432): error:
expected a ";"
    /usr/include/x86_64-linux-gnu/c++/4.8/bits/c++config.h(190): error:
expected a ";"
    /usr/include/c++/4.8/exception(63): error: expected a ";"
    /usr/include/c++/4.8/exception(68): error: expected a ";"
    /usr/include/c++/4.8/exception(76): error: expected a ";"
    /usr/include/c++/4.8/exception(83): error: expected a ";"
    /usr/include/c++/4.8/exception(93): error: expected a "{"
    /usr/include/c++/4.8/bits/exception_ptr.h(64): error: function
"std::current_exception" returns incomplete type
"std::__exception_ptr::exception_ptr"
    /usr/include/c++/4.8/bits/exception_ptr.h(64): error: expected a "{"
    /usr/include/c++/4.8/bits/exception_ptr.h(79): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(81): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(82): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(84): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(86): error: declaration is
incompatible with previous "std::current_exception" (64): here
    /usr/include/c++/4.8/bits/exception_ptr.h(86): error: use of a local
type to declare a function
    /usr/include/c++/4.8/bits/exception_ptr.h(86): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(87): error: use of a local
type to declare a function
    /usr/include/c++/4.8/bits/exception_ptr.h(90): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(92): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(95): error: incomplete type
is not allowed
    /usr/include/c++/4.8/bits/exception_ptr.h(95): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(116): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(126): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(143): error: use of a local
type to declare a function
    /usr/include/c++/4.8/bits/exception_ptr.h(144): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(147): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(152): error: use of a local
type to declare a function
    /usr/include/c++/4.8/bits/exception_ptr.h(153): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(156): error: use of a local
type to declare a function
    /usr/include/c++/4.8/bits/exception_ptr.h(157): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(160): error: use of a local
type to declare a function
    /usr/include/c++/4.8/bits/exception_ptr.h(161): error: expected a ";"
    /usr/include/c++/4.8/bits/exception_ptr.h(169): error: expected a ";"
    /usr/include/c++/4.8/bits/nested_exception.h(57): error: incomplete
type is not allowed
    /usr/include/c++/4.8/bits/nested_exception.h(60): error: expected a
";"
    /usr/include/c++/4.8/bits/nested_exception.h(66): error: expected a
";"
    /usr/include/c++/4.8/bits/nested_exception.h(70): error: identifier
"rethrow_exception" is undefined
    /usr/include/c++/4.8/bits/nested_exception.h(73): error: function
"std::nested_exception::nested_ptr" returns incomplete type
"std::__exception_ptr::exception_ptr"
    /usr/include/c++/4.8/new(95): error: expected a "{"
    /usr/include/c++/4.8/new(110): error: identifier "__p" is undefined
    /usr/include/c++/4.8/new(111): error: expected a "{"
    /usr/include/c++/4.8/new(115): error: expected a "{"
    /usr/include/c++/4.8/new(116): error: expected a "{"
    /usr/include/c++/4.8/bits/cpp_type_traits.h(184): error: identifier
"char16_t" is undefined
    /usr/include/c++/4.8/bits/cpp_type_traits.h(191): error: identifier
"char32_t" is undefined
    /usr/include/c++/4.8/bits/cpp_type_traits.h(191): error: class
"std::__is_integer<<error-type>>" has already been defined
    /usr/include/c++/4.8/bits/cpp_type_traits.h(314): error: namespace
"std::__gnu_cxx" has no member "__normal_iterator"
    /usr/include/c++/4.8/bits/cpp_type_traits.h(314): error: expected a
">"
    /usr/include/c++/4.8/cmath(80): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(80): error: expected a ";"
    /usr/include/c++/4.8/cmath(105): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(105): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(105): error: expected a ";"
    /usr/include/c++/4.8/cmath(124): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(124): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(124): error: expected a ";"
    /usr/include/c++/4.8/cmath(143): error: inline specifier allowed on
function declarations only

/usr/include/c++/4.8/cmath(143): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(143): error: expected a ";"
    /usr/include/c++/4.8/cmath(162): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(162): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(162): error: expected a ";"
    /usr/include/c++/4.8/cmath(183): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(183): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(183): error: expected a ";"
    /usr/include/c++/4.8/cmath(202): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(202): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(202): error: expected a ";"
    /usr/include/c++/4.8/cmath(221): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(221): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(221): error: expected a ";"
    /usr/include/c++/4.8/cmath(240): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(240): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(240): error: expected a ";"
    /usr/include/c++/4.8/cmath(259): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(259): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(259): error: expected a ";"
    /usr/include/c++/4.8/cmath(278): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(278): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(278): error: expected a ";"
    /usr/include/c++/4.8/cmath(297): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(297): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(297): error: expected a ";"
    /usr/include/c++/4.8/cmath(328): error: "constexpr" is not a function
or static data member
    /usr/include/c++/4.8/cmath(337): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(337): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(337): error: expected a ";"
    /usr/include/c++/4.8/cmath(356): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(356): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(356): error: expected a ";"
    /usr/include/c++/4.8/cmath(375): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(375): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(375): error: expected a ";"
    /usr/include/c++/4.8/cmath(406): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(406): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(406): error: expected a ";"
    /usr/include/c++/4.8/cmath(443): error: inline specifier allowed on
function declarations only
    /usr/include/c++/4.8/cmath(443): error: variable "std::constexpr" has
already been defined
    /usr/include/c++/4.8/cmath(443): error: expected a ";"
    Error limit reached. 100 errors detected in the compilation of
"/tmp/tmpxft_00007c86_00000000-17_ethash_cuda_miner_kernel.compute_61.cpp1.ii".
Compilation terminated. CMake Error at
ethash-cuda_generated_ethash_cuda_miner_kernel.cu.o.cmake:264
(message):   Error generating file
/home/markm/cpp-ethereum/build/libethash-cuda/CMakeFiles/ethash-cuda.dir//./ethash-cuda_generated_ethash_cuda_miner_kernel.cu.o

make[2]: ***
[libethash-cuda/CMakeFiles/ethash-cuda.dir/ethash-cuda_generated_ethash_cuda_miner_kernel.cu.o]
Error 1 make[1]: *** [libethash-cuda/CMakeFiles/ethash-cuda.dir/all]
Error 2 make[1]: *** Waiting for unfinished jobs.... [ 47%] Building
CXX object libdevcore/CMakeFiles/devcore.dir/TrieDB.cpp.o [ 50%]
Building CXX object libdevcore/CMakeFiles/devcore.dir/RLP.cpp.o [ 52%]
Building CXX object libdevcore/CMakeFiles/devcore.dir/Guards.cpp.o [
54%] Building CXX object
libdevcore/CMakeFiles/devcore.dir/TransientDirectory.cpp.o [ 57%]
Building CXX object libdevcore/CMakeFiles/devcore.dir/FileSystem.cpp.o
[ 59%] Building CXX object libdevcore/CMakeFiles/devcore.dir/Log.cpp.o
[ 61%] Building CXX object
libdevcore/CMakeFiles/devcore.dir/Common.cpp.o [ 64%] Building CXX
object libdevcore/CMakeFiles/devcore.dir/CommonJS.cpp.o [ 66%]
Building CXX object libdevcore/CMakeFiles/devcore.dir/Worker.cpp.o [
69%] Building CXX object
libdevcore/CMakeFiles/devcore.dir/TrieHash.cpp.o Linking CXX shared
library libdevcore.so [ 69%] Built target devcore make: *** [all]
Error 2 markm@Goose1:~/cpp-ethereum/build$ cd ethminer
markm@Goose1:~/cpp-ethereum/build/ethminer$ ethminer -U -M ethminer:
command not found

Jede Hilfe, um dies richtig zu machen, wäre sehr dankbar.

Ich denke, um cuda zu verwenden, muss man eine Variante von Ethminer verwenden
Okay danke. Im Moment ist es nur für den Miner gebaut, aber obwohl ich das eigentliche Programm im Ordner sehen kann, wird es nicht ausgeführt. Könnte es ein Pfadproblem sein? Muss es zu einem Pfad hinzugefügt werden?
Wenn ich es nicht bekomme, baue ich die Box neu und versuche es erneut.
den gleichen Fehler bekommen. Etwas Glück?
Nein. Ich habe tatsächlich nach etwa 2 Wochen des Versuchs aufgegeben.
Ich habe genau das gleiche Problem wie oben beschrieben. Da ich feststelle, dass dieser Beitrag 7 Monate alt ist, muss ich fragen ... wurde schon eine Lösung gefunden? Danke
Nicht dass ich wüsste. Wenn Sie einen finden, lassen Sie es mich bitte wissen.
In Ermangelung anderer präziser Antworten werde ich das Kopfgeld auf eine Antwort vergeben, die Ansätze zum Überprüfen von Abhängigkeiten und zum Durcharbeiten des Debuggens nur allgemein erklärt - oder einfach erklärt, wie CUDA funktioniert. Ich glaube nicht, dass die vorliegende Antwort etwas beiträgt.

Antworten (1)

Der Ethminer von Genoil funktioniert mit CUDA, wenn Ihre nVidia-Karte OpenCL nicht unterstützt oder wenn Sie maximale Leistung daraus ziehen möchten.

https://github.com/Genoil/cpp-ethereum

Hast du die Frage gelesen? Das ist der Miner, den er zu kompilieren versucht. Er hat sogar den gleichen Link in seiner Frage angegeben.