GedStar Pro

Questions about Wine on Linux
fargodwe

GedStar Pro

Post by fargodwe »

I have been trying to get the GedStar Pro program running in WINE on Linux Mint 64-bit. This a program the extracts genealogy data from 2 Windows based genealogy programs and from a flat text file know as a GEDCOM file. It builds a database that is then loaded to an Android device running the GedStar Pro app. This app gives the ability to view the genealogy on a handheld device. A little background: in Windows 10 64-bit the program runs if I set it to Windows XP compatibility mode. I loaded in the Microsoft Visual C++ runtime in to WINE and then the program starts. If I select a GEDCOM file (e.g. - a flat text file) the program runs fine. If I try to select one of the genealogy program databases it aborts if I have WINE set as anything other than Windows XP. When it is set to Windows XP the program at least let's me select the database but I start the conversion and it dies trying to open the database. I tried loading in the MS Access runtime but didn't get any change. I don't know if there are any paths, etc., that I need to set somehow and/or add another dll or runtime, etc..

Since the program does run it Windows 10 when the program's compatibility mode is set to Windows XP I assume there are things that are delivered with Windows 10 that I just somehow need to identify and load to WINE.

Can anyone help me sort this out? I don't claim to know much about most of this so I'm just trying hard.

Thanks!!
fargodwe

Re: GedStar Pro

Post by fargodwe »

I think it may have something to do with 32-bit versus 64-bit with wine. I tried setting the environment variable to 32-bit, deleted my hidden wine folder and set up the prefix again but it still ended up being 64-bit.
fargodwe

Re: GedStar Pro

Post by fargodwe »

I installed an old copy of 32-bit Windows 32 Professional and had to set the mode to XP and it ran fine there as well. I even deleted everything wine, including my .wine directory, then set the WINEARCH to win32 and then set the WINEPREFIX to /home/dave/.wine and ran wineconfig. This created a 32-bit wine prefix and it was created by default as Windows XP. I could do everything but open a database again - without adding anything additional. I ran winetricks to install the msaccess runtime but still the same error. The database is supposed to be Access compatible and require the runtime to run. Couldn't find any of that in Windows 7 but I did find some SQL* dll's that I couldn't figure out how to install in wine so I just put them in the applications folder. Same result. Installed the visual c++ runtime packages with the same result. If there was something SOMEWHERE that explained just exactly what is used in Windows 7 when you set compatibility mode to Windows XP perhaps I might be able to figure this out.
fargodwe

Re: GedStar Pro

Post by fargodwe »

I ran the program using winedbg and it gave an error message about ole. When I look at winetricks I thought it was showing it there already. Would OLE interact somehow to a database?
fargodwe

Re: GedStar Pro

Post by fargodwe »

removed my old wine prefix and recreated it to be sure it was 32-bit (WINEARCH=win32 winecfg). I then loaded jet and mdac 2,7. Still no go. Added the ms access runtime and mdac 2,8. Still no go. With a 32-bit Windows 7 fresh install the program runs fine in XP mode. In 64-bit Windows 10 it runs fine in XP mode.

Can someone tell me what is included in a standard 32-bit Windows 7 Professional install and in a standard 64-bit Windows 10 Home installation that is NOT incorporated in Wine? There has to be something simple missing. Perhaps the actual windows.dll file (I think that's it - had to delete both the Windows 7 and Windows 10 installations)? How can I find this???????
fargodwe

Re: GedStar Pro

Post by fargodwe »

Anyone?
User avatar
dimesio
Moderator
Moderator
Posts: 13204
Joined: Tue Mar 25, 2008 10:30 pm

Re: GedStar Pro

Post by dimesio »

fargodwe

Re: GedStar Pro

Post by fargodwe »

I found 2 long threads on the internet regarding using jet databases and wine. They are both from the same person. I tried the second as it was labeled as updated and easier. That was what didn't work. The first you have to export part of the registry from an existing Windows installation, edit it, do the things necessary to load that in to wine, and then download and install some dll files. This was a little too complicated for me. To get the registry output I had to reinstall Windows 7 Professional on this PC as I didn't know if I could do it otherwise. Since I had to reinstall I decided to just stay in Windows 7 for now until I can find something that says yes you can access jet databases from wine from c++ that run in XP but must be run in compatibility mode after that, and the exact instructions for doing so. i'm not good enough at this. thank you.
fargodwe

Re: GedStar Pro

Post by fargodwe »

BTW - here's a link to the one that supposedly works but I haven't tried. I don't understand 3/4's of what it is saying. ;)

http://wine.1045685.n8.nabble.com/ODBC- ... 34760.html
fargodwe

Re: GedStar Pro

Post by fargodwe »

If I install Vitrualbox in Windows and run Linux Mint in it will it be a valid test of the program in wine? I assume it will keep everything separate from the actual real Windows installation. If I run regedit can I select the 2 groups they mention and export each? How do I load these to wine? If I can find and copy the dll files it mentions do I just copy them to the windows\system32 folder on the wine c drive or do I have to go through some sort of installation process?
fargodwe

Re: GedStar Pro

Post by fargodwe »

Tried this in wine loading in the registry entries and copying the dll's. Still didn't work. Going to try adding some c++ and c runtimes later tonight and see if it helps.
fargodwe

Re: GedStar Pro

Post by fargodwe »

Deleted and recreated the wine prefix as 32-bit. Installed the application. Following the link I posted previously i copied/loaded the registry entries. I copied all the dll's in that post and pasted them in to c:\windows\system32. I then ran winetricks and installed mdam. Tried running and wouldn't start. Copied the dll's to the applications folder, then used winecfg to override odbc32.dll and odbcad32.dll to say native. Program still wouldn't start. Removed the 2 overrides for the dll's for the application in winecfg. Still wouldn't run. Ran in terminal and got this:

Code: Select all

dave@dave-VirtualBox ~/.wine/drive_c/Program Files/GedStar Pro $ wine 'GedStar Pro.exe'
fixme:heap:HeapSetInformation 0x66f000 0 0x32fa24 4
err:module:attach_process_dlls "ODBC32.dll" failed to initialize, aborting
err:module:LdrInitializeThunk Main exe initialization for L"C:\\Program Files\\GedStar Pro\\GedStar Pro.exe" failed, status c0000142
dave@dave-VirtualBox ~/.wine/drive_c/Program Files/GedStar Pro $ 
I am now officially not able to go any further. I tried to follow the link with nothing changed. I don't know what else to try.
fargodwe

Re: GedStar Pro

Post by fargodwe »

dimesio wrote:Post terminal output. https://wiki.winehq.org/FAQ#How_can_I_g ... tput.29.3F
I did the best I could with this in my last post. The last few posts explain where I found instructions to supposedly allow database access. According to the developer of the product he is too embarrassed to release the source code and said that file I am trying to process (a file from legacy family tree with an extension of .wfb) is access compatible and requires that stuff needs to be available. Considering it ran in just a standard install of Windows 7 and Windows 10 as long as I set compatibility mode to "xp" on the shortcut I've been trying to find out what the heck is included in just a standard install that would allow that access. The best I could come up with is ODBC and Jet. They are both in Winetricks but I read something online that said you had to actually install the Windows ODBC, register it in wine and put override in winecfg for the program so use ODBC native. That didn't seem to work, nor did installing Jet via Winetricks. The program itself gives an error from a specific function saying it can't open the database. That is what I asked the developer about and was told the info about access compatible. I have to set compatibility mode on the windows launchers to XP and also the wineprefix to XP in order for the "Select Database" option of the program to work. Is there any way to run a program against a windows executable program and find what it's dll dependencies are so I could get an idea of something that might be going on?
User avatar
dimesio
Moderator
Moderator
Posts: 13204
Joined: Tue Mar 25, 2008 10:30 pm

Re: GedStar Pro

Post by dimesio »

fargodwe wrote: I read something online that said you had to actually install the Windows ODBC, register it in wine and put override in winecfg for the program so use ODBC native.
That's exactly what winetricks mdac27 and mdac28 do. You shouldn't try to install it manually.
Deleted and recreated the wine prefix as 32-bit. Installed the application. Following the link I posted previously i copied/loaded the registry entries. I copied all the dll's in that post and pasted them in to c:\windows\system32. I then ran winetricks and installed mdam. Tried running and wouldn't start. Copied the dll's to the applications folder, then used winecfg to override odbc32.dll and odbcad32.dll to say native. Program still wouldn't start. Removed the 2 overrides for the dll's for the application in winecfg. Still wouldn't run. Ran in terminal and got this:
I don't see any mention of installing Gedstar Pro in Wine. If you're trying to run it from a Windows partition, or copying a Windows install, that's not supported.
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: GedStar Pro

Post by Bob Wya »

@fargodwe,

You really need to be doing more research and less writing essays to yourself on these forums...
Setting up Unix ODBC on Wine is a bit involved.
Since you've got to setup the connection between the Wine odbc32.dll wrapper and the native Linux Database.

The guide you linked to is decades old... Really??!! :roll:

By the power of Google...
See: Arch Linux Wiki: Open Database Connectivity ...
See: WineHQ User's Guide: 4.3.6 ODBC Databases ...

Bob
fargodwe

Re: GedStar Pro

Post by fargodwe »

That's the only information I could find. Just using those that get installed via winetricks does not solve the problem. I followed that link since it indicated that those installed by winetricks are tied to mysql not through odbc. I'm sorry I'm apparently not smart enough for you guys. I came here genuinely asking for help. Yes I knew enough to install GedStar in wine - I wouldn't have sought help in the forum if that wasn't the case. Yes I've posted a lot. Why? Nobody was forthcoming so I thought if I kept posting what I was trying with the hope someone might see it and say ah-ha - there's your problem. I never claimed to know what I was doing. I was seeking help. The attitude of these last 2 replies seems to indicate know what you need to do to get it to work, get it to work and then ask for help. I was asking for help because I don't have clue. Given that and these last 2 shotty replies to me I'll just go back to using a vm which I thought wine was supposed to help me avoid. So thanks for turning away a guy just looking for help because he needs it not because he already I knows what to do. Goodbye wine. Goodbye to your jerk replies.
fargodwe

Re: GedStar Pro

Post by fargodwe »

Let's try this again. PLEASE realize I am a novice at this and am looking for GUIDANCE. I may need step-by-step instructions with an explanation of what each step does.

Problem

I use a genealogy program called Legacy Family Tree and it runs fine in Wine. It is an old version - 7.5.

There is a program that runs in Android that is quite nice at presenting the genealogy data on my tablet, phone, etc. This program is called GedStar Pro.

There is a Windows component to GedStar Pro also called GedStar Pro. This program extracts the data from the Legacy Family Tree database and creates the MySQL statements to load the data for processing on the Android version. On the web page that lists programs that work/partially work/don't work in Wine it shows as doesn't work. It should be noted that this program runs fine in vanilla Windows 7 and in vanilla Windows 10. In Wine I have to leave the prefix at Windows XP because Windows 7, etc., as the prefix screws up the database selection dialog as it doesn't show hidden files like it does in actual Windows 7 or Windows 10. [This is a difference in Wine I don't understand. Would some runtime package for Windows C and C++ change this to the way it shoud work?]

I have been trying to get this program to work.

The program starts and let's me select the database to extract. When I click on the programs option to process the selected database it errors out immediately. If I use just a GEDCOM file it works fine, So the problem is in accessing the database.

ADDITIONAL INFORMATION ON THE DATABASE

The database has an extension of .fdb but the schema can be seen using the mdbviewer portion of mdbtools. My best understanding is that it is a JET database.

I tried in the past using winetricks to add the mda "stuff" with no difference.

I tried bringing over the jet2 jet3.5 and jet4 dll's and linked files to Wine via extracting from the registry and file copies and then loading the registry files and the files I copied in Wine. Still no difference.



I believe it is at a more outer layer of things in that vanilla Windows 7 and vanilla Windows 10 run this program fine. I no longer have access to Windows as I installed Linux Mint permanenty as I wanted to and decided there had to be a way to make this GedStar Pro Windows program work. There is SOMETHING in vanilla Windows that is missing in Wine. I don't know how to tell what or any ideas on how to fix it.

I have recreated the wine prefix as Windows XP and it is "clean" waiting on ideas.

Please keep in mind I am a novice. I don't know what to do to try to find the problem or to fix it. If I ramble it's because I thought the information might be helpful to someone. In my career in operating system support on large scale computers I learned it was far better to provide what one might consider too much data than to provide too little and then having people making incorrect assumptions.
fargodwe

Re: GedStar Pro

Post by fargodwe »

I forgot to mention that in both Windows 7 and Windows 10 I have to set the launcher to Windows XP compatibility mode

Is there something specific to that that could in some way help here?
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: GedStar Pro

Post by Bob Wya »

fargodwe wrote:... In Wine I have to leave the prefix at Windows XP because Windows 7, etc., as the prefix screws up the database selection dialog as it doesn't show hidden files like it does in actual Windows 7 or Windows 10. ...
  • What hidden files... Unix files / directories beginning with a dot . - is that what you mean?
  • What file system?

Do you have a small test database (that does not contain personal data) that you could attach to forum post?
If so I'll see if I can the application to convert it. Setting up an ODBC connection - if that's necessary.
The fixme:

Code: Select all

err:winediag:SQLDrivers No ODBC drivers could be found. Check the settings for your libodbc provider.
does indicate this may be a necessary step...

Bob
fargodwe

Re: GedStar Pro

Post by fargodwe »

... In Wine I have to leave the prefix at Windows XP because Windows 7, etc., as the prefix screws up the database selection dialog as it doesn't show hidden files like it does in actual Windows 7 or Windows 10. ...
  • What hidden files... Unix files / directories beginning with a dot . - is that what you mean?
  • What file system?
Yes - the database for Legacy is in a folder on the wine drive_c, so it would begin with .wine. I've tried the database when still on a NTFS file system on a removable drive. I have also copied that file down to the drive_c folder within wine when installed the actually genealogy program in wine. That is on an ext4 partition.

They do include a sample database with the program I tried to attach it here but it is too large for an attachment. I don't know if it helps but I can see the schema and the data using the view tool from mdbtools. What i don't have right now is a copy of the file created by the GedStar Pro extraction program so I don't know how the data schema and data looks in it. I'll have to find some way to get that if there is a way to extract the data from the original database. I'll see if I can set up a virtual machine and run the program in it to get the output file contents.
The fixme:

Code: Select all

err:winediag:SQLDrivers No ODBC drivers could be found. Check the settings for your libodbc provider.
does indicate this may be a necessary step...
Note that with just a plain vanilla install of Wine and the program it does try to run and errors out in the same place where it says error trying to open the database.

Thanks!!
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: GedStar Pro

Post by Bob Wya »

@fargodwe

winecfg has a checkbox Show dot files in the Drives tab.
Enabling this might help with your hidden files/directories issue.

Also, on tangential note, Wine mangles Unix paths to Windows paths...
winepath can help you do the mangling automatically.
See: Winepath ...

I'll have to try and setup an ODBC to MySQL connection on my Ubuntu 17.10 install this week...
Perhaps you will be able to replicate this and get the GedStar Pro application to work?
I hate databases, in any form, but I'm to going to need to get familiar with SQL unfortunately anyway soon(ish)... :cry:

Bob
fargodwe

Re: GedStar Pro

Post by fargodwe »

winecfg has a checkbox Show dot files in the Drives tab.
Enabling this might help with your hidden files/directories issue.[.quote]
I tried this after reading your reply but it didn't make a difference in this case. I think it has something to do with what common controls - in this case something dealing with selecting files - is acting different when the prefix is windows 7 versus windows xp. But thanks!
]/quote]Also, on tangential note, Wine mangles Unix paths to Windows paths...
winepath can help you do the mangling automatically.
See: Winepath
I checked out that page after reading your reply. Interesting. I'm going to have to think on it a little while to see if I can use that to make the file selection work.
I'll have to try and setup an ODBC to MySQL connection on my Ubuntu 17.10 install this week...
Perhaps you will be able to replicate this and get the GedStar Pro application to work?
I hate databases, in any form, but I'm to going to need to get familiar with SQL unfortunately anyway soon(ish)... :cry:
That could be a big help as I *think* that might be this missing piece in being open the database file. I can try starting from scratch on that to see if I can get it working in wine. I know there are ODBC and OLE objects in the option to add dlls in winetricks. I *really* don't understand it at all.

Don't feel bad on the SQL "stuff" - I had months long training on using SQL and Oracle back in the late 1980's and had to put it to use for a couple of years, but don't remember a darn thing now.

I did get a oopy of the output file of sql statements generated for input to the Android app. It is using SQLite 3 from what little I can tell. If I try to execute that file via .read in the sqlite client it doesn't seem to create anything. Some of it appears to be binary data so I can't make heads or tails of some of it. I was hoping it would load so i could look at the schema for it. I almost get the feeling that somehow the Android application actually might create the database in memory if that's possible.

Thanks again! You've given me hope to try yet again! I just wish I knew what a vanilla install of Windows does to process a jet database. Seems like there just has to be something missing that isn't included in the mda dll's in wine.
fargodwe

Re: GedStar Pro

Post by fargodwe »

Does anyone out there know what dll's, etc., are used by a Microsoft Visual C++ program that accesses a jet database? I still feel like there is something that is included in Windows that just isn't in the mda "packages" in Wine with a 32-bit prefix.
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: GedStar Pro

Post by Bob Wya »

fargodwe wrote:Does anyone out there know what dll's, etc., are used by a Microsoft Visual C++ program that accesses a jet database? I still feel like there is something that is included in Windows that just isn't in the mda "packages" in Wine with a 32-bit prefix.
@fargodwe

Sorry about the delay... Set aside some time today to bash away on the problem.
Native ODBC is a dead end for your use case.

I downloaded the Legacy Family tree version (7.5) you are using.
I can get GedStar Pro to access and convert the sample database by using first:

Code: Select all

winetricks jet40
Although I found this winetricks verb to be a bit buggy - when I tested it on an Ubuntu 16.04.3 with wine 3.0-rc2.

Code: Select all

winetricks --version
20171018-next - sha256sum: a385b8b6588f453c391160c7cce414c845031c21deeeb12601e7e1dd26fdc9fa
If you also run into any winetricks "issues" these are easily worked around - just let me know.

Bob
fargodwe

Re: GedStar Pro

Post by fargodwe »

Wow!! Thanks!! I'm in the process right now of trying to recover my laptop so it will be a day or 2 before I give that a try. I was updating the Windows side of dual boot and got the boot info on the disk all messed up. None of the Linux tools or things like bootrec or bootsect in Windows would work. So, dumb ol' me got Windows reinstalled and am waiting on a long set of updates to complete so I can install Mint for dual boot. Tried Mint in VirtualBox in Windows but the display window went nuts after it started booting.

At any rate - I'm glad that worked for you and I can't wait to try it out! Perhaps I should never have installed the mdac things via winetricks.
Locked