heya. so I'm trying to use grpc in a c++ app on windows, so it look it need to be compiled from scratch. I fetched the release from repo, init the submodule, enter grpc\vsprojects and try to compile but I'm getting this : "error C1083: Cannot open include file: 'openssl/bytestring.h': No such file or directory"
no openssl seem to be include as a nuget package, so I'm wondering, is there someone familiar with building this under windows ?, as the current project doesn't seem to be buildable out the box
trying with msys64 give "include/grpc/impl/codegen/port_platform.h:346:2: error: #error "Could not auto-detect platform"", so I'll start tweak stuff around =/
pedge_ joined the channel
vinay joined the channel
vinay is now known as Guest44419
Guest44419 has quit
vinay joined the channel
vinay is now known as Guest87958
Guest87958 has quit
dLobatog joined the channel
dLobatog
hi there , perhaps a dummy question but: when I do 'netstat -tulpn' to see the server I've created, it's always 'tcp6'. even if I specify an ipv4 address (127.0.0.1). any clues?
Guest12482
dLobatog, I suppose it's your os that did the corresponding ipv6 map
did you try to disable ipv6 on your network card see if that work ?
beside this does someone build the grpc lib on msys recently ?, after multiple small edit to make it work I stubble open this :
$(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,--output-def=$(LIBDIR)/$(CONFIG)/grpc++$(SHARED_VERSION).def -Wl,--out-implib=$(LIBDIR)/$(CONFIG)/libgrpc++$(SHARED_VERSION)-dll.a -o $(LIBDIR)/$(CONFIG)/grpc++$(SHARED_VERSION).$(SHARED_EXT) $(LIBGRPC++_OBJS) $(LDLIBS) $(ZLIB_MERGE_LIBS) $(LDLIBSXX) $(LDLIBS_PROTOBUF) -lgrpc-imp -lgpr-imp, (now what I'm founding werid is there is no rule for grpc-imp and grp-imp, so where was I suppose to have tho
dLobatog
Guest12482: even disabling the current NIC (or NetworkManager) it's IPV6
ejona
dLobatog: is the problem that it is not listening on tcp4, or that you don't want it to listen on tcp6
Listening on tcp6 doesn't mean it isn't also listening for ipv4
Guest12482
I suppose he didn't want ipv6
could you show us your netstat line ? we might see something more
about my linking issue, I wonder if it's -lgrpr and -lgrpc that was intented instead -lgpr-imp -l-lgrpc-imp, does anyone know ?
just thinking this cause the darwing and linux version is like so, so it's quite strange..
dLobatog
ejona: I *think* it's not listening on ipv4, that's my issue, I don't mind if it's listening on ipv6 too
ejona
Okay. Did you get an error? It is pretty common to listen on IPv6 to listen to both IPv6 and IPv4 (there is a separate IPV6_ONLY option)
Guest12482
dLobatog, the netstat should tell you if it's listening on ipv4 also, or you could try
dLobatog
I get error 14 on calls from the client - but that might just be me
netstat only lists tcp6
ejona: strace does show IPV6_ONLY indeed, but I didn't specify that anywhere
actually I can share the server it's just a small piece of code
Guest12482
I recall there was an option to show ipv4, -p tcp ?
so it does tell me and vv, but I'll retest with grpc after finish building with that stupid msys
dLobatog
lighta: interesting, you ran my program with port 5938 ?
Guest12482
that was another server, but it was just to confirm that it would tell you if it listening on v4
vinay joined the channel
wich on my case it does, so judging from this I suppose if you don't see it it doesn't
vinay is now known as Guest86272
dLobatog
yeah, also these 2 lines from strace are kinda worrying
socket(AF_INET6, SOCK_STREAM, IPPROTO_IP) = 6
setsockopt(6, SOL_IPV6, IPV6_V6ONLY, [0], 4) = 0
ejona
The AF_INET6 seems normal.
So that is setting V6ONLY off
The [0] is to disable the option.
dLobatog
dLobatog--
ejona++
ejona
dLobatog: if you only see tcp6 from netstat, that doesn't mean it is only listening to ipv6.
dLobatog
thanks, I guess I didn't understand that as other programs do show a separate tcp listen connection
ejona
dLobatog: it depends on how they choose to work. I see it commonly both ways. Also, I believe that the IPv6+IPv4 on a single socket took a while to work, so some programs may not have been able to use it when they added IPv6 support.