主题 : backend/vobject.cpp:419: 错误:从类型‘const char*’到类型‘char*’的转换无效(请教qtopia问题) 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 12215
精华: 0
发帖: 4
金钱: 20 两
威望: 4 点
综合积分: 8 分
注册时间: 2009-12-31
最后登录: 2010-01-09
楼主  发表于: 2010-01-03 11:05

 backend/vobject.cpp:419: 错误:从类型‘const char*’到类型‘char*’的转换无效(请教qtopia问题)

我安照mini2440手册上安装qtopia。。。  build命令后出现如下问题?
***********************************
********* Build Qtopia ************
***********************************
QPE_CFG="'-edition' 'pda' '-displaysize' '240x320' '-fontfamilies' 'helvetica fixed micro smallsmooth smoothtimes' -no-qtopiadesktop -release -platform 'linux-g++' -xplatform 'linux-generic-g++'"

make[1]: Entering directory `/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia'
make[2]: Entering directory `/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/src'
make[3]: Entering directory `/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/src'
cd qt && make -f Makefile
make[4]: Entering directory `/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/src/qt'
make[5]: Entering directory `/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/src/qt'
make[5]: Leaving directory `/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/src/qt'
make[4]: Leaving directory `/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/src/qt'
cd libraries/qtopia && make -f Makefile
make[4]: Entering directory `/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/src/libraries/qtopia'
make[5]: Entering directory `/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/src/libraries/qtopia'
g++ -c -pipe -DQWS -fno-exceptions -fno-rtti -Wall -W -Os -fPIC  -DQTOPIA_DATA_LINKING -DQCONFIG=\"qconfig-qpe.h\" -DQTOPIA_TARGET=\"qpe\" -DQTOPIA_TRTARGET=\"libqpe\" -DQT_NO_DEBUG -I/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/mkspecs/qws/linux-generic-g++ -I. -I../../../include/qtopia/private -I../../../pics/qpe -I../../../include -I/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qt2/include -I../../../include/qtopia/private/ -I.moc/release-shared/ -o .obj/release-shared/vobject.o backend/vobject.cpp
backend/vobject.cpp: In function ‘VObject* addGroup(VObject*, const char*)’:
backend/vobject.cpp:419: 错误:从类型‘const char*’到类型‘char*’的转换无效
backend/vobject.cpp: In function ‘void writeEncString(OFile*, const char*, bool)’:
backend/vobject.cpp:1111: 警告:建议在‘||’的操作数中出现的‘&&’前后加上括号
backend/vobject.cpp: In function ‘bool includesUnprintable(VObject*, bool)’:
backend/vobject.cpp:1168: 警告:建议在‘||’的操作数中出现的‘&&’前后加上括号
backend/vobject.cpp:1169: 警告:建议在‘||’的操作数中出现的‘&&’前后加上括号
make[5]: *** [.obj/release-shared/vobject.o] 错误 1
make[5]: Leaving directory `/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/src/libraries/qtopia'
make[4]: *** [all] 错误 2
make[4]: Leaving directory `/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/src/libraries/qtopia'
make[3]: *** [sub-libraries-qtopia] 错误 2
make[3]: Leaving directory `/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/src'
make[2]: *** [install] 错误 2
make[2]: Leaving directory `/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia/src'
make[1]: *** [install] 错误 2
make[1]: Leaving directory `/opt/FriendlyARM/mini2440/x86-qtopia/qtopia-2.2.0-FriendlyARM/qtopia'
/bin/rm: 无法删除"qtopia-2.2.0-FriendlyARM/qtopia/image/opt/Qtopia/lib/fonts/helvetica_*": 没有那个文件或目录
tar: qtopia-2.2.0-FriendlyARM/qtopia/image:无法 chdir: 没有那个文件或目录
tar: 错误不可恢复:现在退出


backend/vobject.cpp:419: 错误:从类型‘const char*’到类型‘char*’的转换无效
------这个cpp文件》。我在网上下了个源文件 419行 内容是一样的》。

/bin/rm: 无法删除"qtopia-2.2.0-FriendlyARM/qtopia/image/opt/Qtopia/lib/fonts/helvetica_*": 没有那个文件或目录
tar: qtopia-2.2.0-FriendlyARM/qtopia/image:无法 chdir: 没有那个文件或目录
------确实没有这几个文件和目录,但我在其他目录下都找到了相应的文件和目录..

我用的环境是fedora 12 ,没有在虚拟机上。在虚拟机fedora9下可以成功..我试过..

弄了几天了真不知道怎么解决了,请大伙帮帮忙..
[ 此帖被kasim在2012-12-09 21:08重新编辑 ]
永不止步!!!
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
1楼  发表于: 2010-01-03 15:22
backend/vobject.cpp:419: 错误:从类型‘const char*’到类型‘char*’的转换无效

编译器检查的太严格了,把原来的
char *dot = strrchr(g,'.');
改成
char *dot = (char *)strrchr(g,'.');试试
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 12215
精华: 0
发帖: 4
金钱: 20 两
威望: 4 点
综合积分: 8 分
注册时间: 2009-12-31
最后登录: 2010-01-09
2楼  发表于: 2010-01-03 19:03
改了之后确实可以了,真的非常感谢。。
想起昨天我还特意从网上下了个元文件,对照了下。是一样的,对于我这个初学者来说就不敢改,太相信权威了。认定产生错误的原因是无法找到相应目录或文件的原因。。
看来人新手也要放开啊。。呵呵。。。
永不止步!!!
级别: 新手上路
UID: 67461
精华: 0
发帖: 5
金钱: 25 两
威望: 5 点
综合积分: 10 分
注册时间: 2012-04-11
最后登录: 2012-06-09
3楼  发表于: 2012-04-12 07:36
UBUNTU20.04编译也遇到了同样的问题,现在修改了,看看效果如何
级别: 新手上路
UID: 79019
精华: 0
发帖: 6
金钱: 35 两
威望: 7 点
综合积分: 12 分
注册时间: 2012-09-28
最后登录: 2014-03-19
4楼  发表于: 2013-09-24 19:55

 回 1楼(kasim) 的帖子

非常感谢!