zonyitoo / sysuh3c

H3C CLI Client for SYSU, which is implemented in C/C++. With an OpenWRT version.
MIT License
116 stars 37 forks source link

macOS上SDK无法编译 #12

Closed GregoryZeng closed 7 years ago

GregoryZeng commented 7 years ago

刚刚终于把OpenWrt SDK编译出来。我已把sysu3c文件夹置入/package中,但不知为什么仍无法顺利编译。第一次试图交叉编译OpenWrt,求指教,非常感谢。

ZengShdeMacBook-Pro:OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64 zengsh$ make
#
# configuration written to .config
#
 make[1] world
 make[2] package/compile
 make[3] -C package/sysuh3c compile
make -r world: build failed. Please re-run make with -j1 V=s to see what's going on
make: *** [world] Error 1
ZengShdeMacBook-Pro:OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64 zengsh$ make -j1 V=s
#
# configuration written to .config
#
make[1]: Entering directory `/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64'
make[2]: Entering directory `/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64'
make[3]: Entering directory `/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/package/sysuh3c'
CFLAGS="-Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float -mips16 -minterlink-mips16 -iremap /Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/build_dir/target-mips_34kc_musl-1.1.15/sysuh3c:sysuh3c -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro  -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/usr/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/usr/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/include/fortify -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/include " CXXFLAGS="-Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float -mips16 -minterlink-mips16 -iremap /Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/build_dir/target-mips_34kc_musl-1.1.15/sysuh3c:sysuh3c -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro  -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/usr/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/usr/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/include/fortify -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/include " LDFLAGS="-L/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/usr/lib -L/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/lib -L/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/usr/lib -L/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/lib -znow -zrelro " /Applications/Xcode.app/Contents/Developer/usr/bin/make -j1 -C /Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/build_dir/target-mips_34kc_musl-1.1.15/sysuh3c/. AR="mips-openwrt-linux-musl-gcc-ar" AS="mips-openwrt-linux-musl-gcc -c -Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float -iremap /Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/build_dir/target-mips_34kc_musl-1.1.15/sysuh3c:sysuh3c -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro" LD=mips-openwrt-linux-musl-ld NM="mips-openwrt-linux-musl-gcc-nm" CC="mips-openwrt-linux-musl-gcc" GCC="mips-openwrt-linux-musl-gcc" CXX="mips-openwrt-linux-musl-g++" RANLIB="mips-openwrt-linux-musl-gcc-ranlib" STRIP=mips-openwrt-linux-musl-strip OBJCOPY=mips-openwrt-linux-musl-objcopy OBJDUMP=mips-openwrt-linux-musl-objdump SIZE=mips-openwrt-linux-musl-size CROSS="mips-openwrt-linux-musl-" ARCH="mips" ;
mips-openwrt-linux-musl-gcc -Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float -mips16 -minterlink-mips16 -iremap /Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/build_dir/target-mips_34kc_musl-1.1.15/sysuh3c:sysuh3c -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro  -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/usr/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/usr/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/include/fortify -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/include  -luci -lcrypto -c -o main.o main.c
main.c:32:17: fatal error: uci.h: No such file or directory
compilation terminated.
make[4]: *** [main.o] Error 1
make[3]: *** [/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/build_dir/target-mips_34kc_musl-1.1.15/sysuh3c/.built] Error 2
make[3]: Leaving directory `/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/package/sysuh3c'
make[2]: *** [package/sysuh3c/compile] Error 2
make[2]: Leaving directory `/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64'
make[1]: *** [/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/stamp/.package_compile] Error 2
make[1]: Leaving directory `/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64'
make: *** [world] Error 2
`
zonyitoo commented 7 years ago
main.c:32:17: fatal error: uci.h: No such file or directory

为何你的OpenWRT不带UCI

zonyitoo commented 7 years ago

我刚刚在这下载的 https://wiki.openwrt.org/doc/howto/obtain.firmware.sdk SDK,在路径

staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/include/uci.h

另外,个人还是建议使用Linux进行交叉编译,少很多烦恼。

GregoryZeng commented 7 years ago

奇怪,我在https://downloads.openwrt.org/snapshots/trunk/ar71xx/generic/ 下的OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Linux-x86_64.tar.bz2 也是没有你提到的staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/include/uci.h。为什么呢

zonyitoo commented 7 years ago

@benwwchen 你这边有装SDK吧,看看 @GregoryZeng 是什么问题?

benwwchen commented 7 years ago

会不会是在编译 SDK/toolchain 的时候网络不好没有下载完整?我也不太清楚,我也是按照官方 wiki 上面的方法配置的。

GregoryZeng commented 7 years ago

今晚重新build了一次SDK。在新的SDK下make没有上面的错误,然而却没见到有ipk生成……

ZengShdeMBP:OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64 zengsh$ make package/sysuh3c/install
#
# configuration written to .config
#
 make[1] package/sysuh3c/install
 make[2] -C package/sysuh3c install
benwwchen commented 7 years ago

@GregoryZeng $ make package/sysuh3c/compile

GregoryZeng commented 7 years ago

没区别,也没什么变化

ZengShdeMBP:OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64 zengsh$ make package/sysuh3c/compile
#
# configuration written to .config
#
 make[1] package/sysuh3c/compile
 make[2] -C package/sysuh3c compile
benwwchen commented 7 years ago

@GregoryZeng 加 V=s 看看输出

GregoryZeng commented 7 years ago

@benwwchen

ZengShdeMBP:OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64 zengsh$ make package/sysuh3c/compile V=s
#
# configuration written to .config
#
make[1]: Entering directory `/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64'
make[2]: Entering directory `/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/package/sysuh3c'
make[2]: Leaving directory `/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/package/sysuh3c'
make[1]: Leaving directory `/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64'
benwwchen commented 7 years ago

@GregoryZeng 在 make menuconfig 里面选了 sysuh3c 了吗?好像什么都没做,连依赖都没有编译。

GregoryZeng commented 7 years ago

@benwwchen 啊,我不知道在SDK编译包也要menuconfig……选上后sysuh3c后,结果好像还是uci.h的问题。

ZengShdeMBP:OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64 zengsh$ make package/sysuh3c/compile -j1 V=s
#
# configuration written to .config
#
make[1]: Entering directory `/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64'
make[2]: Entering directory `/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/package/sysuh3c'
CFLAGS="-Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float -mips16 -minterlink-mips16 -iremap /Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/build_dir/target-mips_34kc_musl-1.1.15/sysuh3c:sysuh3c -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro  -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/usr/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/usr/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/include/fortify -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/include " CXXFLAGS="-Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float -mips16 -minterlink-mips16 -iremap /Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/build_dir/target-mips_34kc_musl-1.1.15/sysuh3c:sysuh3c -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro  -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/usr/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/usr/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/include/fortify -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/include " LDFLAGS="-L/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/usr/lib -L/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/lib -L/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/usr/lib -L/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/lib -znow -zrelro " /Applications/Xcode.app/Contents/Developer/usr/bin/make -j1 -C /Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/build_dir/target-mips_34kc_musl-1.1.15/sysuh3c/. AR="mips-openwrt-linux-musl-gcc-ar" AS="mips-openwrt-linux-musl-gcc -c -Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float -iremap /Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/build_dir/target-mips_34kc_musl-1.1.15/sysuh3c:sysuh3c -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro" LD=mips-openwrt-linux-musl-ld NM="mips-openwrt-linux-musl-gcc-nm" CC="mips-openwrt-linux-musl-gcc" GCC="mips-openwrt-linux-musl-gcc" CXX="mips-openwrt-linux-musl-g++" RANLIB="mips-openwrt-linux-musl-gcc-ranlib" STRIP=mips-openwrt-linux-musl-strip OBJCOPY=mips-openwrt-linux-musl-objcopy OBJDUMP=mips-openwrt-linux-musl-objdump SIZE=mips-openwrt-linux-musl-size CROSS="mips-openwrt-linux-musl-" ARCH="mips" ;
mips-openwrt-linux-musl-gcc -Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float -mips16 -minterlink-mips16 -iremap /Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/build_dir/target-mips_34kc_musl-1.1.15/sysuh3c:sysuh3c -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro  -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/usr/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/target-mips_34kc_musl-1.1.15/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/usr/include -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/include/fortify -I/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15/include  -luci -lcrypto -c -o main.o main.c
main.c:32:17: fatal error: uci.h: No such file or directory
compilation terminated.
make[3]: *** [main.o] Error 1
make[2]: *** [/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/build_dir/target-mips_34kc_musl-1.1.15/sysuh3c/.built] Error 2
make[2]: Leaving directory `/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64/package/sysuh3c'
make[1]: *** [package/sysuh3c/compile] Error 2
make[1]: Leaving directory `/Volumes/OpenWrt/OpenWrt-SDK-ar71xx-generic_gcc-5.3.0_musl-1.1.15.Darwin-x86_64'
make: *** [package/sysuh3c/compile] Error 2
benwwchen commented 7 years ago

@GregoryZeng 我发现 https://downloads.openwrt.org/chaos_calmer/15.05.1/ar71xx/generic/ 的 SDK 里面是有 uci.h 的,或许你可以试试用这个?

zonyitoo commented 7 years ago

Close because of inactively.