JANSSON 2.10编译:(for 2.11, skip step 1 & 2)
- //apt-get install libtool
- //autoreconf -i
- ./configure --host=arm-none-linux CC=arm-none-linux-gnueabi-gcc CXX=arm-none-linux-gnueabi-g++
- make
- make install
- 编译生成libjansson动态库在/usr/local/lib下 一共5个,把相应库文件拷贝到3rdparty下的lib下,3rdparty下的include下新建jansson文件夹存放jansson的头文件
Orcania库编译:
- cd ulfius/lib/orcania/src
- 修改Makefile文件:
CC=arm-none-linux-gnueabi-gcc
LIBJANSSON_INCLUDE=../../../../include/jansson
LIBJANSSON_LOCATION=../../../../
LIBS=-L$(LIBJANSSON_LOCATION)lib -lc $(LJANSSON)
CFLAGS+=-c -fPIC -Wall -Werror -Wextra -D_REENTRANT -I ../../../../include/jansson $(ADDITIONALFLAGS) $(JANSSONFLAG)
- Make
- 复制相应的库到3rdparty/lib下,3rdparty下的include下新建orcania文件夹存放orcania的头文件
Yder库编译:
- cd ulfius/lib/yder/src
2. 修改makefile:
CC=arm-none-linux-gnueabi-gcc
CFLAGS+=-c -fPIC -Wall -D_REENTRANT -I../../../../include/orcania -I../../../../include/jansson $(ADDITIONALFLAGS)
LIBS=-L../../../../lib -lc -lorcania $(ADDITIONALLIBS)
- make Y_DISABLE_JOURNALD=1
- 复制相应的库到3rdparty/lib下,3rdparty下的include下新建yder文件夹存放yder
Ulfius库编译:
- cd /ulfius/src
- 修改makefile:
LIBMHD_INCLUDE=../../include/mhd
LIBJANSSON_INCLUDE=../../include/jansson
DESTDIR=../../
CC=arm-none-linux-gnueabi-gcc
CFLAGS+=-c -pedantic -std=gnu99 -fPIC -Wall -D_REENTRANT -I$(LIBMHD_INCLUDE) -I$(ULFIUS_INCLUDE) -I$(LIBJANSSON_INCLUDE) -I$(LIBORCANIA_LOCATION) -I$(LIBYDER_LOCATION) $(ADDITIONALFLAGS) $(JANSSONFLAG) $(CURLFLAG) $(WEBSOCKETFLAG) $(CPPFLAGS)
LIBS=-L$(DESTDIR)/lib -L$(LIBORCANIA_LOCATION) -L$(LIBYDER_LOCATION) -lc -lmicrohttpd -lyder -lorcania -lpthread -ljansson $(LDFLAGS)
3 编译 make Y_DISABLE_JOURNALD=1 CURLFLAG=-DU_DISABLE_CURL WEBSOCKETFLAG=-DU_DISABLE_WEBSOCKET
4 复制相应的库到3rdparty/lib下,3rdparty下的include下新建ulfius文件夹存放ulfius
Sheep_counter例子编译:
修改makefile:CC=arm-none-linux-gnueabi-gcc
ADDITIONALFLAGS =-I../../../include/orcania -I ../../../include/mhd \
-I ../../../include/yder -I../../../include/jansson -I../../../include/ulfius
CFLAGS=-c -Wall -D_REENTRANT $(ADDITIONALFLAGS)
ULFIUS_LOCATION=../../../../lib
#LIBS=-lc -lulfius -lyder -lorcania -ljansson -L$(ULFIUS_LOCATION)
LIBS=-L../../../lib -lc -lulfius -lyder -lorcania -lmicrohttpd -ljansson
make command:
make CC=arm-none-linux-gnueabi-gcc Y_DISABLE_JOURNALD=1 CURLFLAG=-DU_DISABLE_CURL WEBSOCKETFLAG=-DU_DISABLE_WEBSOCKET
在windows上可借用gitbash中的curl命令向服务器端发送各种请求,常用请求命令如下:
curl -v http://hostname/v1/sn -X GET
curl -v http://hostname/url -H 'Content-Type:application/json' -X PUT -d '{"XX":"XXXX"}' curl -v http://hostname/url -H 'Content-Type:application/json' -X PATCH -d '{"XX":"XX","XXX":"XXX","XXXX","XXXX"} curl -v http://hostname/url -H 'Content-Type:application/json' -X PUT -d '{"XX":"XXXX"}' curl -F "data=@C:\Desktop\Parameter.txt" http://hostname/url -X POST