我试图在64位构建一个"libgnustep-base.a“文件,这样我就可以使用gcc在cygwin86_64中编译目标-c代码,在" GNUstep - Base -1.26.0”文件夹中有一个make文件,其中只包含了这个字符串"@echo,您需要使用gnustep编译gnustep基本库“,首先,我发现这个文件夹非常奇怪,还有一个名为"gnustep- make -2.7.0”的文件夹,手册说这是第一个需要完成的构建,我已经浏览过“./configure
发布于 2021-02-07 20:32:43
对于我所看到的,您首先需要下载、配置并在/usr/local中安装gnustep-make包。
当然,您需要安装gcc-objc、make和其他一些软件包。
$ wget https://github.com/gnustep/tools-make/releases/download/make-2_8_0/gnustep-make-2.8.0.tar.gz
$ tar -xf gnustep-make-2.8.0.tar.gz
$ cd gnustep-make-2.8.0
$ ./configure LDFLAGS="-Wl,--allow-multiple-definition"
$ make install
$ cd ..比你能对基地做同样的事
$ wget https://github.com/gnustep/libs-base/releases/download/base-1_27_0/gnustep-base-1.27.0.tar.gz
$ tar -xf gnustep-base-1.27.0.tar.gz
$ cd gnustep-base-1.27.0
$ ./configure LDFLAGS="-Wl,--allow-multiple-definition"添加到Source/common.h中
#define TRUE 1
#define FALSE 1然后
$ make不幸的是,构建将在以后的链接阶段失败。
relocation truncated to fit: R_X86_64_PC32 against undefined symbol `object_getRetainCount_np'乍一看,这部分似乎是libobjc2 https://github.com/gnustep/libobjc2/releases/tag/v2.1的一部分。
这不喜欢用gcc构建,并要求使用clang。因为我所看到的Cygwin没有objC部分,但我可能是错的。
https://unix.stackexchange.com/questions/633173
复制相似问题