如何用Dev-CPP或VC++编译http://sourceforge.net/projects/cchess

masterz 2005-09-18 10:45:10
对于Dev-CPP不熟,编译http://sourceforge.net/projects/cchess源代码出错不会修改,请指教
http://sourceforge.net/tracker/index.php?func=detail&aid=705285&group_id=75263&atid=543406
I also have difficulty in compiling the source code via
Dev-CPP 4.9.9.2 on windows.
I have downloaded SDL library and put SDL.lib,SDL_mixer.lib,
SDLmain.lib on the same directory as SDL_demo.dev
the absolute path of SDL_mixer.lib is also updated in
SDL_demo.dev
Now I have the following error:
Compiler: Default compiler
Building Makefile: "D:\Onega\test\cchess\Makefile.win"
Executing make...
make.exe -f "D:\Onega\test\cchess\Makefile.win" all
gcc.exe main.o token.o button.o chess.o combox.o edit.o
font.o game.o map.o obj_list.o pvsp.o rules.o selimg.o
block.o window.o trace.o audio.o -o "cchess.exe"
-L"d:/apps/Dev-Cpp/lib" -mwindows -lwsock32 -lmingw32
-lSDLmain -lSDL -mwindows
"D:/Onega/test/cchess/SDL_mixer.lib" -lobjc

d:\apps\Dev-Cpp\Bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\
bin\ld.exe:
cannot find -lSDLmain
collect2: ld returned 1 exit status

make.exe: *** [cchess.exe] Error 1

Execution terminated
如果能提供vc++工程就更好了:-)
...全文
318 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
phoenix96_2000 2005-09-19
  • 打赏
  • 举报
回复
http://www2.tw.freebsd.org/cygwin/release/gcc-mingw/gcc-mingw-objc/


是gcc的规定吧,这样才能用-l参数, lib目录下面的都是libxxx.a 对应着 VC的lib的xxx.lib文件,
linux下也是这样的.


另外,
解决undefined references to '_alloca_probe' 的问题还要加上winmm的引用 -lwinmm
teli_eurydice 2005-09-19
  • 打赏
  • 举报
回复
呵呵,比较困难了,希望有人知道,up
masterz 2005-09-19
  • 打赏
  • 举报
回复
C++版也提了一个问题,
http://community.csdn.net/Expert/TopicView3.asp?id=4278171
但我相信VC版也能解决这个问题。
什么地方有libobjc.a下载?我下载gcc-4.0.1.tar.bz2 31001 KB 2005-7-8 1:32:00,它里面包含了libobjc的源代码,没有lib文件。

-lobjc 为什么对应的是libojbc.a而不是objc.a?
masterz 2005-09-19
  • 打赏
  • 举报
回复
我下载了http://www2.tw.freebsd.org/cygwin/release/gcc-mingw/gcc-mingw-objc/gcc-mingw-objc-20050522-1.tar.bz2,把libobjc.a放在以下目录
D:\Apps\Dev-Cpp\lib\libobjc.a
去掉-lSDLmain -lSDL这两个参数,在Dev-CPP中project options ->parameters: linker下面加上 "SDL.a" "SDLMain.a"

D:\Onega\test\cchess\SDL.a
D:\Onega\test\cchess\SDLmain.a

把D:\Onega\test\cchess\main.c文件中main() 改为winmain()
int APIENTRY WinMain( HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow
)
/*INT main(INT argc,CHAR * argv[])*/
{
GlobalInit();
Game_UIMain();
Game_Exec();
}
编译成功。没有遇到undefined references to '_alloca_probe' 的问题
非常感谢phoenix96_2000(eXMe)的指导!
phoenix96_2000 2005-09-19
  • 打赏
  • 举报
回复
从0点到1:40,忙乎了2个小时,终于搞定了,呵呵~~
刚才放弃了修正multiple definition of "main"的错误
先去改另外一个错误 什么undefined references to '_alloca_probe'错误,搜索到libSDL.org的maillist里面, 有个mail回复里面提到了参数设置-mwindows的含义,
-mwindows 对应 WinMain
-mconsole 对应 main
于是试了试把main.c里面的main改为WinMain的定义,bingo~! 运行也没问题~

偶也从来没用过dev-c++,帮助文档什么都没有啊,出现个编译错误不知道为什么,只能到google搜索~,晕死了~
睡觉,明天上班~~




phoenix96_2000 2005-09-19
  • 打赏
  • 举报
回复
我也编译了一把,
比你编译结果远一点,但是还是没成功
你那个编译错误,两个方法解决
1. -lSDLMain 和 -lSDL就是指定sdlmain和sdl两个lib库,把SDL.lib 和SDLmain.lib重新命名为 libsdl.a 和libsdlmain.a
2. 去掉这两个参数,换成 "SDL.lib" "SDLMain.lib"

另外还去下载了libobjc.a放到lib目录下面

但是编译出现 multiple definition of "main" 错误,搜索了google,好像这种问题是main定义没有和SDL_main一致,但是cchess中的的确一致,就不知道怎么搞了..
菜牛 2005-09-18
  • 打赏
  • 举报
回复
五星上将的提问第一次看到,一定要看看。
pomelowu 2005-09-18
  • 打赏
  • 举报
回复
不如转到C/C++版去问问
JSONObject必包的Jar包及json生成的简单案例 所有commons包的网址: http://commons.apache.org/index.html 组装和解析JSONObject的Json字符串,共需要下面六个包: 1、json-lib 2、commons-beanutils 3、commons-collections 4、commons-lang 5、commons-logging 6、ezmorph 第零个包: json-lib-2.4-jdk15.jar http://sourceforge.net/projects/json-lib/files/json-lib/json-lib-2.4/ 下载地址:http://nchc.dl.sourceforge.net/project/json-lib/json-lib/json-lib-2.4/json-lib-2.4-jdk15.jar 第一个包: commons-beanutils-1.9.2.jar http://commons.apache.org/proper/commons-beanutils/download_beanutils.cgi 下载地址:http://mirrors.cnnic.cn/apache//commons/beanutils/binaries/commons-beanutils-1.9.2-bin.zip 第二个包: (注:此包不可用,改用旧包) commons-collections4-4.0.jar http://commons.apache.org/proper/commons-collections/download_collections.cgi 下载地址:http://apache.dataguru.cn//commons/collections/binaries/commons-collections4-4.0-bin.zip (注:此包可用,低版本的包稳定性更高) commons-collections-3.2.1.jar http://commons.apache.org/proper/commons-collections/download_collections.cgi 下载地址:http://mirrors.hust.edu.cn/apache//commons/collections/binaries/commons-collections-3.2.1-bin.zip 第三个包: (注:此包不可用,会造成程序出错,改用旧包) commons-lang3-3.3.2.jar http://commons.apache.org/proper/commons-lang/download_lang.cgi 下载地址:http://apache.dataguru.cn//commons/lang/binaries/commons-lang3-3.3.2-bin.zip (注:此包可用,低版本的包稳定性更高) commons-lang-2.6-bin http://commons.apache.org/proper/commons-lang/download_lang.cgi?Preferred=http%3A%2F%2Fapache.dataguru.cn%2F 下载地址:http://apache.dataguru.cn//commons/lang/binaries/commons-lang-2.6-bin.zip 第四个包: commons-logging-1.1.3.jar http://commons.apache.org/proper/commons-logging/download_logging.cgi 下载地址:http://apache.dataguru.cn//commons/logging/binaries/commons-logging-1.1.3-bin.zip 第五个包: ezmorph-1.0.2.jar http://ezmorph.sourceforge.net/ http://sourceforge.net/projects/ezmorph/files/ezmorph/ 下载地址:http://nchc.dl.sourceforge.net/project/ezmorph/ezmorph/ezmorph-1.0.6/ezmorph-1.0.6.jar

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧