我在尝试给一个python模块sherpa打包的时候遇到的。在按照 官方文档 说的装好编译依赖并执行 python setup.py install --root=${主目录下自定义的一个地方} --prefix=/usr 后编译安装是成功的。然后我按照Python打包的说明写PKGBUILD,然后makepkg,结果却报错
/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../lib/Scrt1.o:在函数‘_start’中:
(.text+0x20):对‘main’未定义的引用
collect2: 错误:ld 返回 1
/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../lib/Scrt1.o:在函数‘_start’中:
(.text+0x20):对‘main’未定义的引用
collect2: 错误:ld 返回 1
error: Command "/usr/bin/gfortran -Wall -g -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now build/temp.linux-x86_64-3.6/build/src.linux-x86_64-3.6/sherpa/optmethods/src/_minimmodule.o build/temp.linux-x86_64-3.6/build/src.linux-x86_64-3.6/build/src.linux-x86_64-3.6/sherpa/optmethods/src/fortranobject.o build/temp.linux-x86_64-3.6/sherpa/optmethods/src/minim.o build/temp.linux-x86_64-3.6/sherpa/optmethods/src/syminv.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../lib -L/usr/lib -lpython3.6m -lgfortran -o build/lib.linux-x86_64-3.6/sherpa/optmethods/_minim.cpython-36m-x86_64-linux-gnu.so" failed with exit status 1
我对c很不熟悉,不知道这两种编译过程有什么差别?会是什么问题导致只有makepkg的时候报错呢?
这里是是我的PKGBUILD:http://fars.ee/kRaR