Comments (7)
你这个是编译lua的时候缺少引用,可以这样改:
修改src/CMakeLists.txt
文件,找到这一行,大约在166行:
set(CMAKE_EXE_LINKER_FLAGS "-L/usr/lib -L/usr/local/lib")
增加 -lm -ldl ,改成:
set(CMAKE_EXE_LINKER_FLAGS "-L/usr/lib -L/usr/local/lib -lm -ldl")
然后重新make:
make clean;
make
from zimg.
我加了,但是Error还是一样···
[ 97%] Building C object CMakeFiles/zimg.dir/lua/lbaselib.c.o
[100%] Building C object CMakeFiles/zimg.dir/lua/ldo.c.o
Linking C executable zimg
/usr/bin/ld: CMakeFiles/zimg.dir/lua/lmathlib.c.o: undefined reference to symbol 'fmod@@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/libm.so: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[3]: *** [zimg] Error 1
make[3]: Leaving directory `/home/xinchenm/zimg/build/zimg'
make[2]: *** [CMakeFiles/zimg.dir/all] Error 2
make[2]: Leaving directory `/home/xinchenm/zimg/build/zimg'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/xinchenm/zimg/build/zimg'
cp: cannot stat ‘zimg’: No such file or directory
make: *** [all] Error 1
按理说编译应该不需要改code才能过吧···所以才怀疑是缺少package导致。问一下你是在什么系统环境下测试的?
from zimg.
恩,这个改动不是code,是cmake的文件。libm是编译lua的依赖,跟zimg没关系。
你试试用apt装一下lua5.1,如果装成功了那说明lua的依赖就全了,然后再编译:
sudo apt-get install lua5.1
from zimg.
还是一样的问题唉···
from zimg.
可能是你虚拟机环境的问题吧,我这也没法帮你调,你自己搜索一下libm.so: error adding symbols: DSO missing
(like here)这个问题吧,我看到有很多类似的问题。
zimg的编译经过了travis-ci 和drone.io 的CI验证,他们俩家的CI环境都是Ubuntu,我自己也在Ubuntu14.04虚拟机上测试过了,都没有问题。
from zimg.
终于fix了,感觉是因为系统版本等问题导致找不到那个库。我虚拟机里的应该是64位的版本。
应该是加-lm -ldl来fix,但是那个加的地方不对,改CMAKE_EXE_LINKER_FLAGS是加在了前面:
/usr/bin/cc -Wall -fno-strict-aliasing -DPROJECT_VERSION="2.2.0" -D_BSD_SOURCE -D_POSIX_C_SOURCE=200112 -DEVHTP_DISABLE_SSL -DLUA_USE_LINUX -DLUA_ANSI -DZIMG_VERSION=2.2.0 -DMAGICKCORE_HDRI_ENABLE -DMAGICKCORE_QUANTUM_DEPTH=16 -O3 -DNDEBUG -Wall -fno-strict-aliasing -L/usr/lib -L/usr/local/lib -lm -ldl CMakeFiles/zimg.dir/zmd5.c.o CMakeFiles/zimg.dir/zaccess.c.o CMakeFiles/zimg.dir/zutil.c.o CMakeFiles/zimg.dir/zlog.c.o CMakeFiles/zimg.dir/zhttpd.c.o CMakeFiles/zimg.dir/zimg.c.o CMakeFiles/zimg.dir/main.c.o CMakeFiles/zimg.dir/zcache.c.o CMakeFiles/zimg.dir/zdb.c.o CMakeFiles/zimg.dir/zspinlock.c.o CMakeFiles/zimg.dir/libevhtp/evthr.c.o CMakeFiles/zimg.dir/libevhtp/evhtp.c.o CMakeFiles/zimg.dir/libevhtp/htparse.c.o CMakeFiles/zimg.dir/hiredis/sds.c.o CMakeFiles/zimg.dir/hiredis/net.c.o CMakeFiles/zimg.dir/hiredis/hiredis.c.o CMakeFiles/zimg.dir/lua/lgc.c.o CMakeFiles/zimg.dir/lua/lparser.c.o CMakeFiles/zimg.dir/lua/lfunc.c.o CMakeFiles/zimg.dir/lua/lundump.c.o CMakeFiles/zimg.dir/lua/lcode.c.o CMakeFiles/zimg.dir/lua/lstate.c.o CMakeFiles/zimg.dir/lua/print.c.o CMakeFiles/zimg.dir/lua/ltable.c.o CMakeFiles/zimg.dir/lua/lauxlib.c.o CMakeFiles/zimg.dir/lua/ldump.c.o CMakeFiles/zimg.dir/lua/lopcodes.c.o CMakeFiles/zimg.dir/lua/llex.c.o CMakeFiles/zimg.dir/lua/ltm.c.o CMakeFiles/zimg.dir/lua/liolib.c.o CMakeFiles/zimg.dir/lua/lvm.c.o CMakeFiles/zimg.dir/lua/linit.c.o CMakeFiles/zimg.dir/lua/lmathlib.c.o CMakeFiles/zimg.dir/lua/lzio.c.o CMakeFiles/zimg.dir/lua/lapi.c.o CMakeFiles/zimg.dir/lua/lmem.c.o CMakeFiles/zimg.dir/lua/ldebug.c.o CMakeFiles/zimg.dir/lua/lobject.c.o CMakeFiles/zimg.dir/lua/lstrlib.c.o CMakeFiles/zimg.dir/lua/loadlib.c.o CMakeFiles/zimg.dir/lua/ltablib.c.o CMakeFiles/zimg.dir/lua/ldblib.c.o CMakeFiles/zimg.dir/lua/lstring.c.o CMakeFiles/zimg.dir/lua/loslib.c.o CMakeFiles/zimg.dir/lua/lbaselib.c.o CMakeFiles/zimg.dir/lua/ldo.c.o -o zimg -rdynamic -levent -levent_pthreads -lMagickWand -lmemcached -lpthread
而正确的做法是加在最后面。所以后来我加到ZIMG_EXTERNAL_LIBS里面就过了···
原来没用过cmake···
多谢~
from zimg.
赞!原来如此,我也没发现是cmake是这么搞的~
update:
已经更新到master分支里了。
from zimg.
Related Issues (20)
- 如何返回base64的图片格式?
- 图片显示不完整
- 官网文档里的很多链接都失效了,辛苦维护一下吧
- 怎么删除图片呢 HOT 1
- zimg 进程异常退出,提示内存越界 HOT 2
- how zimg restart after change config?
- PNG image uploaded successfully, but cannot be accessed HOT 1
- 官方文档wget libevent安装cloud.github.com域名无法解析问题
- 各位大佬 能不能把小视频也集成进来?支持图片和视频 HOT 1
- info 接口获取图片信息很慢,请问可以通过什么参数做优化吗 HOT 1
- 基于centos 8.0 及以上 安装 有问题
- make error HOT 2
- 出现大量 Error from accept() call: Too many open files 错误 HOT 1
- [Building error]: /usr/bin/ld: CMakeFiles/zimg.dir/zaccess.c.o:(.bss+0x0): multiple definition of `settings'; CMakeFiles/zimg.dir/main.c.o:(.bss+0x20): first defined here HOT 2
- make error HOT 1
- 请问zimg硬盘写满了会怎么办,会删除历史数据吗 HOT 2
- centos7 需要安装依赖 HOT 1
- 请求图片导致服务异常退出 HOT 1
- using MinIO or AWS S3 API standard compatible components as the optional Storage replacement? HOT 1
- How does libgsl.a compile into libzimg.a? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from zimg.