Lists: | pgsql-hackers |
---|
From: | MUHAMMAD ASIF <anaeem(dot)it(at)hotmail(dot)com> |
---|---|
To: | <dpage(at)postgresql(dot)org> |
Cc: | <z-saito(at)guitar(dot)ocn(dot)ne(dot)jp>, <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: UUIDs generated using ossp-uuid on windows not unique |
Date: | 2010-03-30 09:23:31 |
Message-ID: | SNT127-W18C42125E5FD719BA514CEFF1F0@phx.gbl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-hackers |
>On Tue, Jun 17, 2008 at 11:17 AM, Hiroshi Saito
><z-saito(at)guitar(dot)ocn(dot)ne(dot)jp> wrote:
>> Hi.
>>
>> Please this.
>> http://winpg.jp/~saito/pg_work/OSSP_win32/msvc/
>
>Ahh, a makefile - that makes things somewhat clearer :-)
>
>Thanks - I've updated the build machine so future releases will
>include this fix.
>
>--
>Dave Page
>EnterpriseDB UK: http://www.enterprisedb.com
It seems that link http://winpg.jp/~saito/pg_work/OSSP_win32/msvc/ is no longer available. I am working on uuid-ossp contrib module, I want to share my findings with you.Thanks.
I have downloaded uuid-1.6.2.tar.gz from http://www.ossp.org/pkg/lib/uuid/ . It successfully built with MinGW gcc and made libuuid.a, I renamed it to uuid.lib to build uuid-ossp contrib module with visual studio 2005. uuid-ossp give the following linker error with VC2005 i.e.
Linking...
Creating library Release\uuid-ossp\uuid-ossp.lib and object Release\uuid-ossp\uuid-ossp.exp
uuid.lib(uuid_time.o) : error LNK2019: unresolved external symbol ___divdi3 referenced in function _uuid_time_gettimeofday
uuid.lib(uuid_time.o) : error LNK2019: unresolved external symbol ___moddi3 referenced in function _uuid_time_gettimeofday
uuid.lib(uuid_str.o) : error LNK2019: unresolved external symbol ___umoddi3 referenced in function _fmtint
uuid.lib(uuid_str.o) : error LNK2019: unresolved external symbol ___udivdi3 referenced in function _fmtint
.\Release\uuid-ossp\uuid-ossp.dll : fatal error LNK1120: 4 unresolved externals
MinGW libgcc.a contains these symbols and these routines are not implemented in c ( its assembly code to make it fast ) so I extracted _divdi3.o _moddi3.o _umoddi3.o _udivdi3.o (we can add these additional files to uuid.lib to make build easy) from libgcc.a and link it with uuid-ossp contrib. I have tested generated uuid-ossp contrib it gives the following results that seems fine i.e.
edb=# select uuid_generate_v4();
uuid_generate_v4
--------------------------------------
20ff31ce-77a8-4db6-ac7f-3b55380e46ac
(1 row)
edb=#
edb=# select uuid_generate_v4()
edb-# ;
uuid_generate_v4
--------------------------------------
e58c46d5-7161-47ec-8006-f905c6b66a1f
(1 row)
Any thoughts on this ?.
Best Regards,
Asif Naeem
EnterpriseDB Pakistan: http://www.enterprisedb.com
_________________________________________________________________
Hotmail: Free, trusted and rich email service.
https://signup.live.com/signup.aspx?id=60969
From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | MUHAMMAD ASIF <anaeem(dot)it(at)hotmail(dot)com> |
Cc: | dpage(at)postgresql(dot)org, z-saito(at)guitar(dot)ocn(dot)ne(dot)jp, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: UUIDs generated using ossp-uuid on windows not unique |
Date: | 2010-03-30 14:01:50 |
Message-ID: | 16105.1269957710@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-hackers |
MUHAMMAD ASIF <anaeem(dot)it(at)hotmail(dot)com> writes:
> I have downloaded uuid-1.6.2.tar.gz from http://www.ossp.org/pkg/lib/uuid/ . It successfully built with MinGW gcc and made libuuid.a, I renamed it to uuid.lib to build uuid-ossp contrib module with visual studio 2005. uuid-ossp give the following linker error with VC2005 i.e.
>
> Linking...
> Creating library Release\uuid-ossp\uuid-ossp.lib and object Release\uuid-ossp\uuid-ossp.exp
> uuid.lib(uuid_time.o) : error LNK2019: unresolved external symbol ___divdi3 referenced in function _uuid_time_gettimeofday
> uuid.lib(uuid_time.o) : error LNK2019: unresolved external symbol ___moddi3 referenced in function _uuid_time_gettimeofday
> uuid.lib(uuid_str.o) : error LNK2019: unresolved external symbol ___umoddi3 referenced in function _fmtint
> uuid.lib(uuid_str.o) : error LNK2019: unresolved external symbol ___udivdi3 referenced in function _fmtint
> .\Release\uuid-ossp\uuid-ossp.dll : fatal error LNK1120: 4 unresolved externals
Generally, gcc is supposed to arrange for -lgcc to be included
automatically in links if it's needed. I have seen failures like this
before on other platforms, and it generally had something to do with
using gcc followed by a non-gnu linker; which indeed seems to describe
what you did here. I would suggest adding -lgcc to your VC project;
or maybe where it actually went missing was in your build of libuuid.
> MinGW libgcc.a contains these symbols and these routines are not
> implemented in c ( its assembly code to make it fast ) so I extracted
> _divdi3.o _moddi3.o _umoddi3.o _udivdi3.o (we can add these additional
> files to uuid.lib to make build easy) from libgcc.a and link it with
> uuid-ossp contrib.
This seems entirely inappropriate; it makes unwarranted assumptions
about which parts of libgcc are needed, and we couldn't ship any such
thing anyhow for license reasons.
regards, tom lane
From: | "Hiroshi Saito" <z-saito(at)guitar(dot)ocn(dot)ne(dot)jp> |
---|---|
To: | "MUHAMMAD ASIF" <anaeem(dot)it(at)hotmail(dot)com>, <dpage(at)postgresql(dot)org> |
Cc: | <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: UUIDs generated using ossp-uuid on windows not unique |
Date: | 2010-03-30 16:52:50 |
Message-ID: | 98B20744191F464DB598A25AB00BC125@acer08f817a9b5 |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-hackers |
Hi MUHAMMAD-san.
Sorry late reaction...
unfortunately, My machine crashed and was not revitalized.:-(
However, There is a thing of now a few.
http://winpg.jp/~saito/pg_work/OSSP_win32/msvc/
I have a comment from Ralf S. Engelschall.
==
Sorry for being late with the release of OSSP uuid 2.0.0.
Yes, it will be released the next days and will contain the
Win32 support I already prepared a few months ago.
==
It seems that however, he is very busy. ...
Regards,
Hiroshi Saito
----- Original Message -----
From: "MUHAMMAD ASIF" <anaeem(dot)it(at)hotmail(dot)com>
>On Tue, Jun 17, 2008 at 11:17 AM, Hiroshi Saito
><z-saito(at)guitar(dot)ocn(dot)ne(dot)jp> wrote:
>> Hi.
>>
>> Please this.
>> http://winpg.jp/~saito/pg_work/OSSP_win32/msvc/
>
>Ahh, a makefile - that makes things somewhat clearer :-)
>
>Thanks - I've updated the build machine so future releases will
>include this fix.
>
>--
>Dave Page
>EnterpriseDB UK: http://www.enterprisedb.com
It seems that link http://winpg.jp/~saito/pg_work/OSSP_win32/msvc/ is no longer available. I
am working on uuid-ossp contrib module, I want to share my findings with you.Thanks.
I have downloaded uuid-1.6.2.tar.gz from http://www.ossp.org/pkg/lib/uuid/ . It successfully
built with MinGW gcc and made libuuid.a, I renamed it to uuid.lib to build uuid-ossp contrib
module with visual studio 2005. uuid-ossp give the following linker error with VC2005 i.e.
Linking...
Creating library Release\uuid-ossp\uuid-ossp.lib and object Release\uuid-ossp\uuid-ossp.exp
uuid.lib(uuid_time.o) : error LNK2019: unresolved external symbol ___divdi3 referenced in
function _uuid_time_gettimeofday
uuid.lib(uuid_time.o) : error LNK2019: unresolved external symbol ___moddi3 referenced in
function _uuid_time_gettimeofday
uuid.lib(uuid_str.o) : error LNK2019: unresolved external symbol ___umoddi3 referenced in
function _fmtint
uuid.lib(uuid_str.o) : error LNK2019: unresolved external symbol ___udivdi3 referenced in
function _fmtint
.\Release\uuid-ossp\uuid-ossp.dll : fatal error LNK1120: 4 unresolved externals
MinGW libgcc.a contains these symbols and these routines are not implemented in c ( its
assembly code to make it fast ) so I extracted _divdi3.o _moddi3.o _umoddi3.o _udivdi3.o (we
can add these additional files to uuid.lib to make build easy) from libgcc.a and link it
with uuid-ossp contrib. I have tested generated uuid-ossp contrib it gives the following
results that seems fine i.e.
edb=# select uuid_generate_v4();
uuid_generate_v4
--------------------------------------
20ff31ce-77a8-4db6-ac7f-3b55380e46ac
(1 row)
edb=#
edb=# select uuid_generate_v4()
edb-# ;
uuid_generate_v4
--------------------------------------
e58c46d5-7161-47ec-8006-f905c6b66a1f
(1 row)
Any thoughts on this ?.
Best Regards,
Asif Naeem
EnterpriseDB Pakistan: http://www.enterprisedb.com
_________________________________________________________________
Hotmail: Free, trusted and rich email service.
https://signup.live.com/signup.aspx?id=60969=
From: | MUHAMMAD ASIF <anaeem(dot)it(at)hotmail(dot)com> |
---|---|
To: | <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | <dpage(at)postgresql(dot)org>, <z-saito(at)guitar(dot)ocn(dot)ne(dot)jp>, <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: UUIDs generated using ossp-uuid on windows not unique |
Date: | 2010-03-31 06:40:33 |
Message-ID: | SNT127-W4040AEB6EDFCED7B7D8575FF1E0@phx.gbl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-hackers |
> To: anaeem(dot)it(at)hotmail(dot)com
> CC: dpage(at)postgresql(dot)org; z-saito(at)guitar(dot)ocn(dot)ne(dot)jp; pgsql-hackers(at)postgresql(dot)org
> Subject: Re: [HACKERS] UUIDs generated using ossp-uuid on windows not unique
> Date: Tue, 30 Mar 2010 10:01:50 -0400
> From: tgl(at)sss(dot)pgh(dot)pa(dot)us
>
> MUHAMMAD ASIF <anaeem(dot)it(at)hotmail(dot)com> writes:
> > I have downloaded uuid-1.6.2.tar.gz from http://www.ossp.org/pkg/lib/uuid/ . It successfully built with MinGW gcc and made libuuid.a, I renamed it to uuid.lib to build uuid-ossp contrib module with visual studio 2005. uuid-ossp give the following linker error with VC2005 i.e.
> >
> > Linking...
> > Creating library Release\uuid-ossp\uuid-ossp.lib and object Release\uuid-ossp\uuid-ossp.exp
> > uuid.lib(uuid_time.o) : error LNK2019: unresolved external symbol ___divdi3 referenced in function _uuid_time_gettimeofday
> > uuid.lib(uuid_time.o) : error LNK2019: unresolved external symbol ___moddi3 referenced in function _uuid_time_gettimeofday
> > uuid.lib(uuid_str.o) : error LNK2019: unresolved external symbol ___umoddi3 referenced in function _fmtint
> > uuid.lib(uuid_str.o) : error LNK2019: unresolved external symbol ___udivdi3 referenced in function _fmtint
> > .\Release\uuid-ossp\uuid-ossp.dll : fatal error LNK1120: 4 unresolved externals
>
> Generally, gcc is supposed to arrange for -lgcc to be included
> automatically in links if it's needed. I have seen failures like this
> before on other platforms, and it generally had something to do with
> using gcc followed by a non-gnu linker; which indeed seems to describe
> what you did here. I would suggest adding -lgcc to your VC project;
> or maybe where it actually went missing was in your build of libuuid.
>
you are right its not good idea to generate binary with non compatible tools that may lead to unexpected results and could make debugging worse.
> > MinGW libgcc.a contains these symbols and these routines are not
> > implemented in c ( its assembly code to make it fast ) so I extracted
> > _divdi3.o _moddi3.o _umoddi3.o _udivdi3.o (we can add these additional
> > files to uuid.lib to make build easy) from libgcc.a and link it with
> > uuid-ossp contrib.
>
> This seems entirely inappropriate; it makes unwarranted assumptions
> about which parts of libgcc are needed, and we couldn't ship any such
> thing anyhow for license reasons.
>
> regards, tom lane
I dont know much about licencing , I was assuming that if we can create application with gcc then we can use parts of gcc according to our will too. that was a wrong assumption, thank you for details :).
Best Regards,
Asif Naeem
_________________________________________________________________
Hotmail: Trusted email with Microsoft’s powerful SPAM protection.
https://signup.live.com/signup.aspx?id=60969
From: | MUHAMMAD ASIF <anaeem(dot)it(at)hotmail(dot)com> |
---|---|
To: | <z-saito(at)guitar(dot)ocn(dot)ne(dot)jp>, <dpage(at)postgresql(dot)org> |
Cc: | <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: UUIDs generated using ossp-uuid on windows not unique |
Date: | 2010-03-31 06:48:15 |
Message-ID: | SNT127-W2387468D5DB4C35105A367FF1E0@phx.gbl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-hackers |
> From: z-saito(at)guitar(dot)ocn(dot)ne(dot)jp
> To: anaeem(dot)it(at)hotmail(dot)com; dpage(at)postgresql(dot)org
> CC: pgsql-hackers(at)postgresql(dot)org
> Subject: Re: UUIDs generated using ossp-uuid on windows not unique
> Date: Wed, 31 Mar 2010 01:52:50 +0900
>
> Hi MUHAMMAD-san.
>
> Sorry late reaction...
> unfortunately, My machine crashed and was not revitalized.:-(
> However, There is a thing of now a few.
> http://winpg.jp/~saito/pg_work/OSSP_win32/msvc/
>
> I have a comment from Ralf S. Engelschall.
> ==
> Sorry for being late with the release of OSSP uuid 2.0.0.
> Yes, it will be released the next days and will contain the
> Win32 support I already prepared a few months ago.
> ==
> It seems that however, he is very busy. ...
>
> Regards,
> Hiroshi Saito
>
Thank you Sir for sharing msvc build. I dont need to use MinGW generated libraries with VisualC project anymore :). That is nice news that OSSP UUID 2.0.0 will support VisualC. thanks.
Best Regards,
Asif Naeem
_________________________________________________________________
Hotmail: Trusted email with powerful SPAM protection.
https://signup.live.com/signup.aspx?id=60969