我正在使用一个使用第三方库的共享库,该库使用对conio lib的调用,当我尝试使用cygwin / g ++构建它时,我得到错误的未定义引用
__cprintf
__stricmp
__splithpath
etc..
我链接我的lib againts,
kernel32
wsock32
gdi32
应该链接哪个lib以便找到这些引用?
PS。我正在使用的第三方lib是使用Dev-Cpp构建的
答案 0 :(得分:2)
这看起来像旧Borland图书馆的代码。
cprintf
可以直接替换为printf
。这是printf
的一个实现,在DOS和OS / 2天内直接打印到视频内存。
stricmp
是一个不区分大小写的字符串比较。请改用strcasecmp
。
我不知道在Cygwin / Linux中替换了splitpath。
您可以在findutils中找到它的实现。您还可以在Turbovision到Linux或BSD的端口中找到splitpath的实现。
话虽如此,{nix}平台上的splitpath
只不过是在斜杠(/)处拆分路径字符串并验证路径中的最后一项是否是文件/链接/目录在设置路径的文件名和扩展部分之前。