QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1046|回复: 3

新手请教cpp和c源代码的混合编译问题

[复制链接]
发表于 2004-3-18 15:57:09 | 显示全部楼层 |阅读模式
我试图将一个linux命令行方式运行的mp3播放程序与自己用qt编写的图形界面程序整合到一起
现在的情况是:mp3源文件是由c写成,qt生成的源文件是cpp
我试着将原本的mp3程序的主函数(main)改名(例如改成void play(int , char*)),然后在图形界面源程序中调用这个函数,
并将参数(播放歌曲名)传给这个函数。
但是在通过makefile编译的时候出现问题,错误信息是play这个函数未定义。我已经在图形界面源程序中include了
play 这个函数所在的c文件的同名h文件。
这种做法是否合理?需要怎样改正?或者为达到这样的目的,还有什么方法?多谢指教。
发表于 2004-3-18 18:56:45 | 显示全部楼层
这样:
你的软件fork一个子进程执行mp3播放器
这样就省得再编译那个mp3播放器了
回复

使用道具 举报

发表于 2004-3-19 08:55:07 | 显示全部楼层
在h文件里追加play的定义。

不过话说回来,即使这么做你成功了也不应该这么做,因为这样会卡住你的界面
回复

使用道具 举报

发表于 2004-3-19 11:15:50 | 显示全部楼层
你的软件fork一个子进程执行mp3播放器

偷懒啊 给点专业精神好不好

第一个问题 你需要考虑创建线程或者进程来单独的跑你的解码程序 要不然肯定掐死
另一个在c++中调用c 最重要的是编译方式 要不然符号表肯定不对 对qt的编译方式不懂 所以也说不下去了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-8 18:35 , Processed in 0.048567 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表