Posts Qt 应用程序读写 xls 文件
Post
Cancel

Qt 应用程序读写 xls 文件

下载:xlslib-package-2.5.0.zip

Linux X11版

平台: Ubuntu 14.04 64bits

g++, version 4.6-4.8无法编译xlslib

1
sudo apt-get install g++-4.4

编译安装

1
2
3
4
export CC=gcc-4.4 CXX=g++-4.4 
./configure 
make
sudo make install

安装完成后,将/usr/local/lib文件夹下的xls库文件拷贝到Qt的lib目录下

1
sudo cp /usr/local/lib/libxls* /usr/local/Trolltech/Qt-4.8.6/lib/

使用

在*.pro文件中添加:

1
2
INCLUDEPATH += /usr/local/include/xlslib
LIBS += -lxls

Embedded-i386版

将安装Linux X11版时生成的库文件复制到QtEmbedded-4.8.6-i386/lib目录下即可

1
sudo cp /usr/local/lib/libxls* /usr/local/Trolltech/QtEmbedded-4.8.6-i386/lib

使用

在*.pro文件中添加:

1
2
INCLUDEPATH += /usr/local/include/xlslib
LIBS += -lxls

Arm版

交叉编译该版本时遇到困难:即使指定CC、CXX为交叉编译工具,host为arm-linux,运行configure时仍然会出错,所以暂时是在树莓派上进行本地编译,编译完成后,将生成的库复制到电脑上的QtEmbedded-arm版的lib目录下,以便于在电脑上为树莓派交叉编译qt应用。

平台:raspberry pi B+

编译安装

1
2
3
./configure 
make
sudo make install

安装完成后,将/usr/local/lib文件夹下的xls库文件拷贝到Qt的lib目录下。

1
sudo cp /usr/local/lib/libxls* /usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib/

同时,将上面的库文件复制到电脑上的QtEmbedded-4.8.6-arm/lib目录下,以便于在电脑上为树莓派交叉编译qt应用。

使用

在*.pro文件中添加:

1
2
INCLUDEPATH += /usr/local/include/xlslib
LIBS += -lxls

总结

分别将各版本的库文件复制到相应版本Qt的lib目录下后,各版本应用程序可以统一使用一个*.pro文件。 否则,构建应用程序时得明确指出所连接的库的目录.由于各版本库同名,不可避免要将库文件放在不同的目录下,构建时分别连接。如:

如果存放X11版的目录为:/usr/local/lib,存放Arm版的目录为:/usr/local/lib/xlslib-arm,构建时,*.pro文件中的LIBS分别为:

1
2
LIBS += -L/usr/local/lib -lxls
LIBS += -L/usr/local/lib/xlslib-arm -lxls

如此一来,方便起见,树莓派上的库文件也应该放在/usr/local/lib/xlslib-arm目录下,当然,也可以每次运行时指定LD_LIBRARY_PATH环境变量,总之,很麻烦。

与库不同,头文件可以共用。

This post is licensed under CC BY 4.0 by the author.