Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
wine + unixODBC на x86_64 не работает :(
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Russian
View previous topic :: View next topic  
Author Message
asm64
n00b
n00b


Joined: 25 Apr 2008
Posts: 27
Location: г.Кемерово

PostPosted: Fri Apr 25, 2008 10:53 am    Post subject: wine + unixODBC на x86_64 не работает :( Reply with quote

Здравствуйте. Помогите пожалуйста с такой бедой.

x86_64. Установлены wine, unixODBC, mysql и myodbc. wine настроен на встроенную библиотеку odbc32 и под ним крутится биржевой торговый терминал quik. Их задача - экспорт котировок по ODBC в программу анализа под Linux. Связка unixODBC-->myodbc-->mysql настроена и база заведена, с правами всё ок. Но 32 битный wine не хочет дружить с x86_64 библиотекой /usr/lib/libodbc.so, в дебаге пишет:

err:odbc:SQLDataSources Error: empty dm handle (gProxyHandle.dmHandle == NULL)

В пакете emul-linux-x86-baselibs unixODBC отсутствует :( Смотрел здесь:
http://www.winehq.org/site/docs/wineusr-guide/misc-things-to-configure
http://wiki.winehq.org/WineOn64bit#head-7f9ba30a115acb6bc6feef3ee48cd06e91d44519

Что делать? Не собирать же gentoo с нуля в 32 бита. Мож как-то unixODBC в 32 битном варианте собрать можно? Очень надеюсь на Вашу помощь.
Back to top
View user's profile Send private message
Laitr Keiows
Moderator
Moderator


Joined: 04 Jul 2005
Posts: 891
Location: Kobe, Japan

PostPosted: Sat Apr 26, 2008 2:23 am    Post subject: Reply with quote

Может попробовать из другой системы перетащить?..
Back to top
View user's profile Send private message
asm64
n00b
n00b


Joined: 25 Apr 2008
Posts: 27
Location: г.Кемерово

PostPosted: Sat Apr 26, 2008 3:06 am    Post subject: Reply with quote

Laitr Keiows wrote:
Может попробовать из другой системы перетащить?..

А как же пути, версии и зависимости?
Как делают emul-linux-x86? Может как-то можно собрать отдельно пакет unixODBC в 32 бита?
Back to top
View user's profile Send private message
Laitr Keiows
Moderator
Moderator


Joined: 04 Jul 2005
Posts: 891
Location: Kobe, Japan

PostPosted: Mon Apr 28, 2008 2:48 am    Post subject: Reply with quote

asm64 wrote:
А как же пути, версии и зависимости?

Попробуй, может получится. А не получится так приобретёшь ценный опыт.

Кроме того:

asm64 wrote:
В пакете emul-linux-x86-baselibs unixODBC отсутствует :(


Посмотри еще:
Code:
emerge -s emul-linux-x86


И тут:
http://www.gentoo.org/proj/en/base/amd64/emul/content.xml
http://www.gentoo.org/proj/en/base/amd64/emul/
Back to top
View user's profile Send private message
asm64
n00b
n00b


Joined: 25 Apr 2008
Posts: 27
Location: г.Кемерово

PostPosted: Wed Apr 30, 2008 12:20 pm    Post subject: Reply with quote

Спасибо. Попробую от gentoo x86 взять, посмотрим что получится, потом отпишусь...

А вобще как и кто делает emul-linux-x86? Кросс-компиляцией или тупо берут библы от x86 сборки, не в курсе случаем. Погуглил ничего не нашёл - кто собирает, как собирает - непонятно... :roll:
Back to top
View user's profile Send private message
asm64
n00b
n00b


Joined: 25 Apr 2008
Posts: 27
Location: г.Кемерово

PostPosted: Wed Apr 30, 2008 4:33 pm    Post subject: Reply with quote

Кому интересно. Нашёл таки не тривиальный способ решения поставленной задачи.

How to set up a 32bit chroot - http://www.gentoo.org/proj/en/base/amd64/howtos/chroot.xml

Всё, теперь можно писать торгового робота-скальпера!
Back to top
View user's profile Send private message
Laitr Keiows
Moderator
Moderator


Joined: 04 Jul 2005
Posts: 891
Location: Kobe, Japan

PostPosted: Thu May 01, 2008 12:01 am    Post subject: Reply with quote

asm64 wrote:
А вобще как и кто делает emul-linux-x86? Погуглил ничего не нашёл - кто собирает, как собирает - непонятно... :roll:

Я уже давал эту ссылку:
http://www.gentoo.org/proj/en/base/amd64/emul/

Нашел в гугле :)
Back to top
View user's profile Send private message
asm64
n00b
n00b


Joined: 25 Apr 2008
Posts: 27
Location: г.Кемерово

PostPosted: Thu May 01, 2008 5:45 am    Post subject: Reply with quote

Laitr Keiows wrote:
http://www.gentoo.org/proj/en/base/amd64/emul/

Нашел в гугле :)


Упс. Проморгал 8O . Спасибо большое! Думаю вопрос решён.
Back to top
View user's profile Send private message
asm64
n00b
n00b


Joined: 25 Apr 2008
Posts: 27
Location: г.Кемерово

PostPosted: Sun May 04, 2008 3:15 pm    Post subject: Вопрос не решён :( libmyodbc3.so Reply with quote

:!: Что сделал.
1. Собрал CHROOT по методе http://www.gentoo.org/proj/en/base/amd64/emul/
2. FEATURES="buildpkg" emerge unixODBC dev-db/mysql myodbc
Получились пакеты tbz2:

DBD-mysql-4.00.5.tbz2
DBI-1.601.tbz2
ed-0.8.tbz2
myodbc-3.51.12.tbz2
mysql-5.0.54.tbz2
mysql-5.0.tbz2
mysql-init-scripts-1.2.tbz2
Net-Daemon-0.43.tbz2
perl-Storable-2.16.tbz2
perl-Sys-Syslog-0.18.tbz2
PlRPC-0.2020-r1.tbz2
Storable-2.16.tbz2
Sys-Syslog-0.18.tbz2
unixODBC-2.2.12.tbz2

3. Распаковал все в отдельной директории и скопировал только папку ./usr/lib32 в /usr/lib32
4. Указал в ODBCConfig-e 32bit драйвер /usr/lib32/libmyodbc3.so и конфиг /usr/lib32/libodbcmyS.so
5. Создал скрипт для запуска Квика (info.exe):

#!/bin/bash
export LIB_ODBC_DRIVER_MANAGER=/usr/lib32/libodbc.so
WINEDEBUG="+odbc32" wine info.exe

6. Запускаю скрипт. Дважды просит пароль: Пароль для <user> на localhost? Ввожу - всё ок.
7. В Квике жму экспорт по ODBC и о чудо! отображена моя база данных, которую я завел в MySQL. Ввожу пользователя <user>@localhost и пароль. Жму подключиться.
8. Вайн вылетает. В консоли пишет:

info.exe: symbol lookup error: /usr/lib32/libmyodbc3.so: undefined symbol: min

9. Погуглил: http://forums.mysql.com/read.php?37,197326,197730#msg-197730

Quote:
This is a known bug when compiling with GCC 4.2 (iirc), which we will likely patch in the ODBC driver. Thanks for alerting us to it.


:?: Теперь вопросы.

Всё-ли правильно я сделал, взяв только ./usr/lib32? Кто-нибудь сталкивался с подобной проблемой libmyodbc3?

Спасибо.
Back to top
View user's profile Send private message
asm64
n00b
n00b


Joined: 25 Apr 2008
Posts: 27
Location: г.Кемерово

PostPosted: Mon May 05, 2008 2:25 pm    Post subject: Reply with quote

Ура! :D Усё заработало. Докладываю, если кому интересен этот вопрос. 8) Дело было в mysql-5.0.54, а 5.0.56 был замаскирован (собака). Сделал так:

1. из chroot 32 (myodbc пересобрать обязательно!)
# ACCEPT_KEQWORDS="~amd64" FEATURES="buildpkg" emerge dev-db/mysql myodbc
2. Скопировал только /usr/lib32/* из получившихся пакетов как в предыдущем посте и вуаля :D

Параметры из Квика полетели в базу mysql. Ура товарищи!

P.S.: Спасибо Laitr Keiows за наводки на необходимый материал.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Russian All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum