Taking this out of order a little. On Thu, Oct 11, 2012 at 2:27 AM, Staffan Tylen <staffan.ty...@gmail.com> wrote:
> for it. You also mentioned in the same thread (?) that by using C++ Visual > Express I can build ooSQLite on my own using the included make file. As > mentioned before I have no C/C++ background but have tried to do exactly > that but can't figure out how to do it. VC++ prompts me to either create a > new project or open an existing one, and in either case I can't get to a > position where I can perform a build using the downloaded source tree. I > would highly appreciate some hints on how to get started with this. You have to build from the command line. Don't open up the GUI part of VC++ Express at all. I'm not sure about this, but I expect that VC++ Express has a .bat file to set up the environment properly. Historically this has always been vcvarsall.bat and I suspect it is the same in the Express edition What you do is open up a command prompt window and run that command: Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. All rights reserved. C:\work.ooRexx>C:\Tools\VisualStudio.10.0\VC\vcvarsall.bat /? Error in script usage. The correct usage is: C:\Tools\VisualStudio.10.0\VC\vcvarsall.bat [option] where [option] is: x86 | ia64 | amd64 | x86_amd64 | x86_ia64 For example: C:\Tools\VisualStudio.10.0\VC\vcvarsall.bat x86_ia64 C:\work.ooRexx> In the above you just need to locate the correct path to vcvarsall.bat. Then you cd to where you have the ooSQLite source code: C:\work.ooRexx>C:\Tools\VisualStudio.10.0\VC\vcvarsall.bat amd64 Setting environment for using Microsoft Visual Studio 2010 x64 tools. C:\work.ooRexx>cd wc\ooSQLite C:\work.ooRexx\wc\ooSQLite>dir Makefile.* Volume in drive C is Win7 Volume Serial Number is D25E-50D5 Directory of C:\work.ooRexx\wc\ooSQLite 06/12/2012 08:28 PM 8,881 Makefile.lin 06/16/2012 11:44 AM 9,043 Makefile.mac 06/01/2012 09:53 PM 12,833 Makefile.win 3 File(s) 30,757 bytes 0 Dir(s) 2,266,365,952 bytes free Run nMake using the /F option to name the Makefile to use. In this case the Windows MakeFile. This command does a clean: C:\work.ooRexx\wc\ooSQLite>nmake /F Makefile.win clean_all Microsoft (R) Program Maintenance Utility Version 10.00.40219.01 Copyright (C) Microsoft Corporation. All rights reserved. C:\work.ooRexx\wc\ooSQLite\src SVN_REV 8472 del /Q bin\windows\*.dll bin\windows\*exe bin\windows\*.cls 1>nul 2>&1 del /Q bin\linux\*.dll bin\linux\*exe bin\linux\*.cls 1>nul 2>&1 del /Q build\release\* 1>nul 2>&1 del /Q build\debug\* 1>nul 2>&1 This command does a non-debug build: C:\work.ooRexx\wc\ooSQLite>nmake /F Makefile.win RELEASE=1 Microsoft (R) Program Maintenance Utility Version 10.00.40219.01 Copyright (C) Microsoft Corporation. All rights reserved. C:\work.ooRexx\wc\ooSQLite\src SVN_REV 8472 cl /nologo /EHsc /O2 /Gr /Gs /Gy /FAs /Fabuild\release\ /MT /W3 /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTD C_NO_DEPRECATE /DOOSQLITE_VER_MAJOR=1 /DOOSQLITE_VER_MINOR=0 /DOOSQLITE_VER_LEVEL=0 /DOOSQLITE_VER_BUILD=8472 /D ... To build a debug version, just leave off the RELEASE=1 part. To package everything up in a zip file C:\work.ooRexx\wc\ooSQLite>nmake /F Makefile.win dist > On the > other hand, even if I did manage to perform the build using VC++ I'm not > 100% sure that this would put me in a better position to integrate it with > for example SQLCipher, would it? It would put you in a better position, but not a good one. When I originally responded, I had not looked into encryption for SQLite and vaguely thought it was a standard extension like FTS. It is not, it is a completely separate library that is based on SQLite. To add FTS to a build of ooSQLite, all you need to do is add a couple of flags to the Makefile. To build SQLCipher you would need to replace the SQLite source code library with the SQLCipher library, probably change the Makefile a lot to get it to build, probably make other source code changes in ooSQLite source to get it too build. If you knew a little C, building ooSQLite on you own would get you a lot closer to building a SQLCipher native extension, using the ooSQLite source code as a base to get started. Probably 99% of the work is done, in that case. But, without some experience in C or C++, it will probably not get you closer. > Mark, in a previous post you responded: > > "If there was a standard extension to SQLite that did encryption, I > could be tempted into doing a standard ooSQLite build that included > that extension. The critical part of that sentence is: "If" and "standard extension" A FTS build can be done by setting a flag in the current ooSQLite Makefile and making one other small change in the Makefile. I've already done that to help one of the first persons to try ooSQLite. When I first responded, I was thinking that encryption would be similar. But, when I looked into it, encryption is not similar. The SQLite developers do not support encryption. You need to get a different product supported by different people and most likely a product with a different license. As I recall the license for SQLCipher is not one that would work for ooRexx. > For example, one of the extensions to SQLite is full text search. If > people wanted that, I would think about including in the standard > distribution a build that has that extension compiled in, along with > the regular build. > > Haven't given thought ... > As response to the above regarding FTS, I'm asking myself why have different > builds of ooSQLite to include optional extensions such as full text search? The key part to that response is "Haven't given thought" > Why not create a single ooSQLite version with all the bells and whistles > included? If people wanted FTS, I probably would not create a separate build ... But again, I haven[t given this a lot of thought at this point. In the back of my mind, I'm thinking FTS might be useful. At the point I decide I'm definitely interested, then I will give some thought to it. An encrypted database solution, even one based on SQLite would need to be a different project than ooSQLite. I'm more likely to do a ooMySQL next, based on what I recall the license for SQLCiper is. -- Mark Miesfeld ------------------------------------------------------------------------------ Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev _______________________________________________ Oorexx-users mailing list Oorexx-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-users