iamantony / qtcsv

Library for reading and writing csv-files in Qt.
MIT License
265 stars 141 forks source link

Wrong version in library name under Linux #25

Closed schulmar closed 7 years ago

schulmar commented 7 years ago

I compiled from the tag v1.3 via following commands in the toplevel folder:

[schulmar@Nitro qtcsv]$ ls
appveyor.yml  include  LICENSE  qtcsv.pro  README.md  sources  tests
[schulmar@Nitro qtcsv]$ LANG=en git status
HEAD detached at v1.3                                                                                                                                                                                                                                                          
nothing to commit, working tree clean 
[schulmar@Nitro qtcsv]$ qmake
Info: creating stash file /home/schulmar/job/qtcsv/.qmake.stash
[schulmar@Nitro qtcsv]$ ls
appveyor.yml  include  LICENSE  Makefile  qtcsv.pro  README.md  sources  tests
[schulmar@Nitro qtcsv]$ make -j8
g++ -c -pipe -O2 -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -Wall -W -Werror -Wformat=2 -Wuninitialized -Winit-self -Wmissing-include-dirs -Wswitch-enum -Wundef -Wpointer-arith -Wdisabled-optimization -Wcast-align -Wcast-qual -D_REENTRANT -fPIC -DQTCSV_LIBRARY -DQT_NO_DEBUG -DQT_CORE_LIB -I. -Iinclude -isystem /usr/include/qt -isystem /usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o writer.o sources/writer.cpp
g++ -c -pipe -O2 -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -Wall -W -Werror -Wformat=2 -Wuninitialized -Winit-self -Wmissing-include-dirs -Wswitch-enum -Wundef -Wpointer-arith -Wdisabled-optimization -Wcast-align -Wcast-qual -D_REENTRANT -fPIC -DQTCSV_LIBRARY -DQT_NO_DEBUG -DQT_CORE_LIB -I. -Iinclude -isystem /usr/include/qt -isystem /usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o variantdata.o sources/variantdata.cpp                                                                                     
g++ -c -pipe -O2 -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -Wall -W -Werror -Wformat=2 -Wuninitialized -Winit-self -Wmissing-include-dirs -Wswitch-enum -Wundef -Wpointer-arith -Wdisabled-optimization -Wcast-align -Wcast-qual -D_REENTRANT -fPIC -DQTCSV_LIBRARY -DQT_NO_DEBUG -DQT_CORE_LIB -I. -Iinclude -isystem /usr/include/qt -isystem /usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o stringdata.o sources/stringdata.cpp                                                                                       
g++ -c -pipe -O2 -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -Wall -W -Werror -Wformat=2 -Wuninitialized -Winit-self -Wmissing-include-dirs -Wswitch-enum -Wundef -Wpointer-arith -Wdisabled-optimization -Wcast-align -Wcast-qual -D_REENTRANT -fPIC -DQTCSV_LIBRARY -DQT_NO_DEBUG -DQT_CORE_LIB -I. -Iinclude -isystem /usr/include/qt -isystem /usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o reader.o sources/reader.cpp                                                                                               
g++ -c -pipe -O2 -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -Wall -W -Werror -Wformat=2 -Wuninitialized -Winit-self -Wmissing-include-dirs -Wswitch-enum -Wundef -Wpointer-arith -Wdisabled-optimization -Wcast-align -Wcast-qual -D_REENTRANT -fPIC -DQTCSV_LIBRARY -DQT_NO_DEBUG -DQT_CORE_LIB -I. -Iinclude -isystem /usr/include/qt -isystem /usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o contentiterator.o sources/contentiterator.cpp                                                                             
rm -f libqtcsv.so.1.0.0 libqtcsv.so libqtcsv.so.1 libqtcsv.so.1.0                                                                                                                                                                                                              
g++ -Wl,-O1 -Wl,-O1,--sort-common,--as-needed,-z,relro -shared -Wl,-soname,libqtcsv.so.1 -o libqtcsv.so.1.0.0 writer.o variantdata.o stringdata.o reader.o contentiterator.o  -lQt5Core -lpthread                                                                              
ln -s libqtcsv.so.1.0.0 libqtcsv.so                                                                                                                                                                                                                                            
ln -s libqtcsv.so.1.0.0 libqtcsv.so.1                                                                                                                                                                                                                                          
ln -s libqtcsv.so.1.0.0 libqtcsv.so.1.0                                                                                                                                                                                                                                        
[schulmar@Nitro qtcsv]$ ls                                                                                                                                                                                                                                                     
appveyor.yml  contentiterator.o  include  libqtcsv.so  libqtcsv.so.1  libqtcsv.so.1.0  libqtcsv.so.1.0.0  LICENSE  Makefile  qtcsv.pro  reader.o  README.md  sources  stringdata.o  tests  variantdata.o  writer.o

As you can see, the versioned .so files have version 1.0.0 which is in contrast to the tag v1.3.

iamantony commented 7 years ago

Yes, currently I do not set version of library properly. Only via tag. It seems to me that in qtcsv.pro there should be some variable like "VERSION" or so

schulmar commented 7 years ago

A simple VERSION=1.3.0 statement in qtcsv.pro should suffice but it would have to be bumped accordingly with each release.

iamantony commented 7 years ago

Done: 136f21207f59750f1521c3d7ed709cc56d123fea