- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试编译 wcslib在 Windows/msys2 下。
虽然这个库在 GNU/Linux 和 MacOS 上编译没有问题,但我正面临 msys2 的一个棘手问题:
wcs.h:1965:5: error: conflicting types for 'wcsset'
1965 | int wcsset(struct wcsprm *wcs);
| ^~~~~~
In file included from wcs.c:30:
C:/msys64/mingw64/x86_64-w64-mingw32/include/string.h:179:20: note: previous declaration of 'wcsset' was here
179 | wchar_t *__cdecl wcsset(wchar_t *_Str,wchar_t _Val) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
| ^~~~~~
wcs.c:2185:5: error: conflicting types for 'wcsset'
2185 | int wcsset(struct wcsprm *wcs)
| ^~~~~~
In file included from wcs.c:30:
C:/msys64/mingw64/x86_64-w64-mingw32/include/string.h:179:20: note: previous declaration of 'wcsset' was here
179 | wchar_t *__cdecl wcsset(wchar_t *_Str,wchar_t _Val) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
| ^~~~~~
make[3]: *** [GNUmakefile:135: libwcs-7.3.1.a(wcs.o)] Error 1
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -c wcsbth.c
In file included from wcsbth.l:121:
wcs.h:1965:5: error: conflicting types for 'wcsset'
1965 | int wcsset(struct wcsprm *wcs);
| ^~~~~~
In file included from wcsbth.c:231:
C:/msys64/mingw64/x86_64-w64-mingw32/include/string.h:179:20: note: previous declaration of 'wcsset' was here
179 | wchar_t *__cdecl wcsset(wchar_t *_Str,wchar_t _Val) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
| ^~~~~~
make[3]: *** [GNUmakefile:135: libwcs-7.3.1.a(wcsbth.o)] Error 1
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -c wcserr.c
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -c wcsfix.c
In file included from wcsfix.c:38:
wcs.h:1965:5: error: conflicting types for 'wcsset'
1965 | int wcsset(struct wcsprm *wcs);
| ^~~~~~
In file included from wcsfix.c:30:
C:/msys64/mingw64/x86_64-w64-mingw32/include/string.h:179:20: note: previous declaration of 'wcsset' was here
179 | wchar_t *__cdecl wcsset(wchar_t *_Str,wchar_t _Val) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
| ^~~~~~
make[3]: *** [GNUmakefile:135: libwcs-7.3.1.a(wcsfix.o)] Error 1
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -c wcshdr.c
In file included from wcshdr.h:1276,
from wcshdr.c:36:
wcs.h:1965:5: error: conflicting types for 'wcsset'
1965 | int wcsset(struct wcsprm *wcs);
| ^~~~~~
In file included from wcshdr.c:31:
C:/msys64/mingw64/x86_64-w64-mingw32/include/string.h:179:20: note: previous declaration of 'wcsset' was here
179 | wchar_t *__cdecl wcsset(wchar_t *_Str,wchar_t _Val) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
| ^~~~~~
make[3]: *** [GNUmakefile:135: libwcs-7.3.1.a(wcshdr.o)] Error 1
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -c wcspih.c
In file included from wcspih.l:123:
wcs.h:1965:5: error: conflicting types for 'wcsset'
1965 | int wcsset(struct wcsprm *wcs);
| ^~~~~~
In file included from wcspih.c:231:
C:/msys64/mingw64/x86_64-w64-mingw32/include/string.h:179:20: note: previous declaration of 'wcsset' was here
179 | wchar_t *__cdecl wcsset(wchar_t *_Str,wchar_t _Val) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
| ^~~~~~
make[3]: *** [GNUmakefile:135: libwcs-7.3.1.a(wcspih.o)] Error 1
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -c wcsprintf.c
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -c wcstrig.c
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -c wcsulex.c
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -c wcsunits.c
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -c wcsutil.c
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -c wcsutrn.c
make[3]: Target 'libwcs-7.3.1.a' not remade because of errors.
make[2]: *** [GNUmakefile:258: lib] Error 2
make[2]: Target 'build' not remade because of errors.
make[2]: Leaving directory '/home/siril/wcslib-7.3.1/C'
Mon 2020/12/07 09:23:14 +0100, executing on
make[2]: Entering directory '/home/siril/wcslib-7.3.1/utils'
cd .. && ./config.status
config.status: creating makedefs
config.status: creating wcslib.pc
config.status: creating wcsconfig.h
config.status: creating wcsconfig_f77.h
config.status: wcsconfig_f77.h is unchanged
config.status: creating wcsconfig_tests.h
config.status: wcsconfig_tests.h is unchanged
config.status: creating wcsconfig_utils.h
gcc -DHAVE_CONFIG_H -I.. -I../C -g -O2 -c -o fitshdr.o fitshdr.c
gcc -o fitshdr fitshdr.o -lm -pthread -lcurl -lm
make[2]: Leaving directory '/home/siril/wcslib-7.3.1/utils'
make[1]: Leaving directory '/home/siril/wcslib-7.3.1'
当然,更改 lib 函数的名称不是一种选择(至少不是我的选择)。有人知道摆脱它的好选择吗?例如删除符号的方法或......其他东西。
最佳答案
我看了一下string.h
错误消息中提到的文件。看起来你可以定义一个处理器宏 NO_OLDNAMES
告诉头文件不要为 wcsset
生成原型(prototype).
您仍然需要在链接时注意问题,但这可能已经足够了。
关于尝试使用 msys2 编译库时类型冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65179621/
我想从 vanilla MSYS 环境下载一个脚本。 在 Linux 上,我会做 wget 在 Mac OS X 上,我会做 curl -O 不幸的是,在 MSYS 的默认安装中,这些替代方案似乎
当我使用 MSYS 编译某些东西时,./configure步骤可能需要比 make 更长的时间.但是,Linux 中的同一进程具有快速配置和慢速生成。这只是 MSYS 中的一些设置,它使我的系统陷入困
我一直在四处寻找,但找不到这 3 个版本的 MSYS 的完整描述。 (完全有可能我只是不知道要寻找什么。)我确实知道 MSYS 是支持使用 MinGW 进行开发的 Linux 工具的最小端口,但我不清
我需要将/DEF:c:\filepath\myLib.def"命令行选项从 bash 脚本传递到 MS 编译器/链接器。该路径是由 bash 脚本作为构建过程的一部分生成的。基本上,参数我的脚本通过的
我有一个 MSYS 安装,我正在编写一个 bash 脚本来设置一些文件。我想从 MSYS 中的 bash 脚本创建一个目录符号链接(symbolic link),但为此我需要使用 mklink/D,这
我计划将我的项目迁移到 git,我目前想知道哪个是 Windows 下最好和/或最稳定的选择。 据我所知,我基本上有 2.5 个选项: MSYSgit git 在 Cygwin 下 (又名 2.5)来
为什么我在 MSYS 中得到这个? 用户@lappy1 ~ $ mkdir 测试 sh: mkdir: 命令未找到 像 cd 和 pwd 这样的基本命令工作得很好。 mkdir 怎么了? 最佳答案 看
请告诉我一个可用于更改文件属性的 MSYS shell 命令。当我运行 ls -l 命令时,我得到以下结果: -rw-r--r-- 1 lenovo Admin .....m4sugar.m4 我想提
我通过 pacman 安装了 cmake 3.2.3。当我尝试从 msys64 shell 中使用它时出现错误: $ cmake -G "MSYS Makefiles" .. CMake Error:
这将是今天最棘手的问题。如何在 MSYS shell 中浏览我的 Windows 文件夹结构?当我启动 shell 时,我看到的只是一个“~”。我输入“ls”,文件夹是空的。我只想知道如何进入我的 C
我在 Windows 下运行 MSYS,虽然它可以工作,但我想知道是否有 MSYS 脚本文件之类的东西。 例如,要在 C 中编译 GTK 程序,我需要键入:gcc source.c -o execut
如果我只安装了“date”命令,我该如何更改 MSYS+MinGW for Windows 的时区?这里没有“tzconfig”或“tzselect”。 当我尝试 $date --set="Apr 0
MSYS 正在向终端打印一些奇怪的字符(空格、空值等)。使我的单元测试结果有点神秘。关于如何解决这个问题的任何想法?我正在研究是否可能将其通过管道传输到将清理输出的脚本。 $ bundle exec
我正在使用 msys-git 并注意到在执行 git pull 后我经常在输出中得到奇怪的字符。我认为这些是某些终端可能理解的某种控制字符,但在标准的 Windows 命令提示符下它们会导致: So
我正在尝试使用 git 来更有效地管理使用 CVS 进行源代码控制的项目,但我遇到了问题 add -ing 一个确实有很长路径的文件 - 276 个字符。 不幸的是,这个文件是由我使用的工具随附的自定
我希望我的 makefile 输出能够进行颜色编码。 但是我无法让 ANSI 颜色代码在此终端上工作。不过,这应该是可能的,ls --color 为我提供了彩色输出,并且我的 shell 提示符也是彩
我一直在尝试从 Windows 机器上的 msys 中的 bash 脚本运行一些 java 程序。具体来说,我在命令行上使用 WEKA 自动执行一些任务。我有一些问题,其中引用的字符串未正确传递给 j
我有一个构建 libcurl 静态库以在我的项目中使用的 makefile(在 Linux 上完美运行)。 我正在尝试使用 MSYS 在 Windows 7 上构建 libcurl,但我正在努力。 在
我在 Windows 中使用 MSYS。我需要访问 MSYS home 文件夹中的文件。 MSYS的/home/username文件夹在Windows C:\文件夹中映射到哪里? 最佳答案 C:\Mi
我正在使用 Mingw 构建一个 C/C++ 项目。这个项目的 makefile 超出了我的理解范围,并且依赖于自定义且相当复杂的工具链来编译它。在 Windows 上使用 GNU 工具非常方便,尤其
我是一名优秀的程序员,十分优秀!