Hi,
Did a git clone of libosmocore. ./configure gives a few faults when checking the log, but seems to finish OK. From config.log: . . . configure:12134: $? = 0 configure:12134: gcc -c -std=gnu11 conftest.c >&5 conftest.c: In function 'main': conftest.c:71:21: error: expected expression before ')' token if (sizeof ((size_t))) ^ configure:12134: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "libosmocore" | #define PACKAGE_TARNAME "libosmocore" | #define PACKAGE_VERSION "1.6.0.77-381dc" . . . configure:12379: result: -ldl configure:12388: checking for library containing dlsym configure:12419: gcc -o conftest -std=gnu11 conftest.c >&5 /tmp/ccp0wxaN.o: In function `main': conftest.c:(.text+0xa): undefined reference to `dlsym' collect2: error: ld returned 1 exit status configure:12419: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "libosmocore" | #define PACKAGE_TARNAME "libosmocore" | . . . There are more "conftest.c" errors, but not sure if these are very serious.
Anyway, ./configure finishes off without errors when done executing. So next thing is "make".
And here I encounter a problem that stops the process:
[root@tmaeurcellmngr libosmocore]# make make all-recursive make[1]: Entering directory `/root/hnbgw/osmo-hnbgw/libosmocore' Making all in include make[2]: Entering directory `/root/hnbgw/osmo-hnbgw/libosmocore/include' make all-am make[3]: Entering directory `/root/hnbgw/osmo-hnbgw/libosmocore/include' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/root/hnbgw/osmo-hnbgw/libosmocore/include' make[2]: Leaving directory `/root/hnbgw/osmo-hnbgw/libosmocore/include' Making all in src make[2]: Entering directory `/root/hnbgw/osmo-hnbgw/libosmocore/src' make all-am make[3]: Entering directory `/root/hnbgw/osmo-hnbgw/libosmocore/src' CC context.lo gcc: error: /usr/local/lib:/lib:/usr/lib64: No such file or directory make[3]: *** [context.lo] Error 1 make[3]: Leaving directory `/root/hnbgw/osmo-hnbgw/libosmocore/src' make[2]: *** [all] Error 2 make[2]: Leaving directory `/root/hnbgw/osmo-hnbgw/libosmocore/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/root/hnbgw/osmo-hnbgw/libosmocore' make: *** [all] Error 2 [root@tmaeurcellmngr libosmocore]#
So this my "real" problem.
I did find a compiled version of libosmocore and thought this would help me to compile osmoHNBGW. But , as OsmoHNBGW need a MGW client I ran into another problem. During "make" of osm-mgw: . . CC mgcp_protocol.o In file included from mgcp_protocol.c:39:0: ../../include/osmocom/mgcp/osmux.h:5:33: fatal error: osmocom/netif/osmux.h: No such file or directory #include <osmocom/netif/osmux.h> . .
And I saw that "netif" was not there at all. Did a git clone of netif. Then I did a "netif" ./configure. But then I see a new problem, probably caused by the use of the already-compiled libmocore:
. . checking netinet/sctp.h usability... yes checking netinet/sctp.h presence... yes checking for netinet/sctp.h... yes checking for osmo_sock_init2_multiaddr in -losmocore... no configure: error: libosmocore built without libsctp support [root@tmaeurcellmngr libosmo-netif]#
So , I've hit the wall here.
Best Regards, Sjur
Internal
Hi,
no sure how you ended up with a libosmocore directory inside osmo-hnbgw one...
My advise would be to first decide whether you want to run self-compiled stuff or prebuilt packages. Unless you need to modify code or develop new stuff there, I'd suggest avoiding building stuff on your own.
In case you want to build stuff, use "make V=1" to get more output verbosity on what the make/compiler process is doing.
Make sure you properly tell configure & make to install and read files from proper place, to avoid instead compiling against pre-built installed libs:
export prefix="/usr/local" export PATH="$PATH:$prefix/bin" export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$prefix/lib" export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$prefix/lib/pkgconfig" opt_prefix="--prefix=$prefix --with-systemdsystemunitdir=$prefix/lib/systemd/system" configure $opt_prefix make V=1